Trace Id is missing
Pular para o conteúdo principal

Tutorial de DevOps: introdução

Melhorando o processo de entrega de software com o tutorial do DevOps

Existem muitos estágios, conceitos e componentes diferentes no DevOps, e este tutorial é uma excelente maneira de aprender o que é o DevOps e como ele pode ajudar a melhorar seu processo de entrega de software.

Entendendo o DevOps

Para iniciar este tutorial do DevOps, apresentaremos algumas definições básicas para ajudar você a entender o que é o DevOps e como ele se relaciona com o seu processo geral de desenvolvimento de software.

  • O DevOps é uma prática de desenvolvimento de software que promove a colaboração entre o desenvolvimento e as operações, resultando em uma entrega de software mais rápida e confiável. Designado com frequência como uma cultura, o DevOps conecta pessoas, processos e tecnologias para entregar valor contínuo.

    Saiba mais sobre o DevOps

  • O processo de desenvolvimento de software pode ser altamente manual, resultando em uma quantidade significativa de erros de código. As equipes de desenvolvimento e operações com frequência podem estar fora de sincronia, o que pode retardar a entrega do software e decepcionar os stakeholders de negócios. O DevOps cria eficiência em todas as tarefas envolvidas no desenvolvimento, na implantação e na manutenção do software.

    A conexão do desenvolvimento com as operações leva a uma maior visibilidade, a requisitos mais precisos, a uma melhor comunicação e a um menor tempo de colocação no mercado.

  • O DevOps fecha a lacuna entre o desenvolvimento e as operações, criando eficiências significativas em todo o processo de desenvolvimento e a implantação do software. O DevOps inclui uma forte ênfase em automação, ajudando a reduzir a quantidade geral de erros.

  • A filosofia do DevOps é assumir responsabilidade de ponta a ponta em todos os aspectos do projeto. Diferentemente dos métodos mais tradicionais de desenvolvimento de software, o DevOps fecha a lacuna existente entre as equipes de desenvolvimento e de operações, algo muitas vezes ausente e que pode dificultar bastante o processo de entrega de software.

    Fornecendo uma estrutura abrangente para desenvolver e liberar software, o DevOps conecta equipes de desenvolvimento e operações, uma lacuna que pode criar desafios e ineficiências na entrega de software.

  • Embora ambos, DevOps e Agile, sejam práticas de desenvolvimento de software, cada um deles tem um foco ligeiramente diferente. O DevOps é uma cultura que se concentra em criar eficiência para todos os stakeholders envolvidos no desenvolvimento, na implantação e na manutenção do software. O Agile é um processo de lean manufacturing que ajuda a fornecer uma estrutura de produção para o desenvolvimento de software. O Agile geralmente é específico para a equipe de desenvolvimento, em que o escopo do DevOps se estende a todos os stakeholders envolvidos na produção e na manutenção do software. O DevOps e o Agile podem ser usados juntos para criar um ambiente de desenvolvimento de software altamente eficiente.

Aprofunde seu aprendizado de DevOps com essas tarefas

Cada seção deste tutorial de DevOps inclui algumas tarefas para ajudá-lo a tomar medidas no sentido de criar uma prática de DevOps. Dedique um momento a responder às seguintes perguntas:

  • Quais foram alguns dos desafios que você enfrentou para o desenvolvimento e a implantação de software?
  • Em quais áreas você gostaria de ver melhorias de eficiência ao desenvolver e implantar software?

Os fundamentos de uma prática de DevOps

A próxima etapa deste manual do DevOps é entender os principais conceitos usados em uma prática de DevOps. Esta seção ajudará a explicar e a esclarecer os principais componentes.

  • Usado com frequência em equipes de software, o desenvolvimento Agile é uma abordagem de entrega relacionada à manufatura lean. O desenvolvimento é concluído em sprints breves e incrementais. Embora seja diferente do DevOps, as duas abordagens não são mutuamente exclusivas: as práticas e as ferramentas do Agile podem ajudar a aumentar a eficiência da equipe de desenvolvimento, contribuindo com a cultura geral do DevOps.

    Introdução ao planejamento do Agile usando o Azure Boards

  • Com uma equipe trabalhando em conjunto, o controle de versão é parte essencial de um desenvolvimento de software preciso e eficiente. Um sistema de controle de versão, como o Git, registra um instantâneo dos seus arquivos, permitindo que você volte para qualquer versão a qualquer momento. Com um sistema de controle de versão, você tem a certeza de que não entrará em conflito com as alterações em que está trabalhando.

    Comece a usar o controle de versão com o Azure Repos

  • A integração contínua é o processo de automatização de builds e testes que ocorre quando o código é concluído e confirmado no sistema. Uma vez que o código é confirmado, ele segue um processo automatizado que realiza a validação e, então, confirma apenas o código testado e validado no código-fonte principal, geralmente chamado de principal, tronco ou ramificação mestre. A integração contínua automatiza esse processo, o que leva a eficiências significativas. Todos os bugs são identificados precocemente, antes da fusão de qualquer código com a ramificação mestre.

    Comece a implementar a integração contínua com o Azure Pipelines

  • A entrega contínua é a prática fundamental que ocorre no DevOps, habilitando a entrega de software rápido e confiável. Embora o processo seja semelhante ao conceito abrangente do DevOps, a entrega contínua é a estrutura em que todos os componentes de código são testados, validados e confirmados à medida que são concluídos, resultando na capacidade de entregar o software a qualquer momento. A integração contínua é um processo que compõe a entrega contínua.

    Comece a implementar a entrega contínua com o Azure Pipelines

  • Seja no local ou na nuvem, o provisionamento e a configuração de recursos são uma parte essencial das operações do ambiente. Por meio da automação de processos e do uso de ferramentas que fornecem uma definição declarativa da infraestrutura (por exemplo, arquivos de definição baseados em texto), as equipes podem implantar e configurar recursos de maneira confiável e repetível. Os arquivos de definição baseados em texto podem ser gerenciados como código com controle de versão, permitindo fácil reversão, recriação e desinstalação de ambientes complexos. Tecnologias como o Terraform ou o Ansible são soluções comuns para a implementação de infraestrutura como código.

    Criar infraestrutura no Azure com o Terraform

    Saiba mais sobre como usar o Ansible com o Azure

  • O escopo do DevOps vai além do desenvolvimento, mantendo a responsabilidade pelo software até a entrega, incluindo o desempenho do software. Todo o processo do DevOps cria um ciclo de comentários que, em última instância, fornece pontos de dados capazes de ajudar a melhorar um projeto futuro e validar a decisão de implantar o software. O monitoramento e o registro em log são componentes essenciais que dão suporte ao aprendizado validado, que então dá suporte à iniciativa geral de buscar consistentemente uma maior eficiência no processo de desenvolvimento e entrega de software.

    Saiba como coletar e analisar dados telemétricos com o Azure Monitor

  • Durante todo o ciclo de vida, comentários e dados telemétricos são coletados para ajudar a fundamentar com informações as decisões para o próximo ciclo. Essas informações são chamadas de aprendizado validado. O aprendizado validado ajuda a fornecer insights sobre novas formas de reduzir a quantidade de tempo por ciclo. Em seguida, os dados coletados são usados para encontrar formas de aumentar a automação, melhorar os processos e preparar a implantação com mais rapidez e eficiência.

Aprofunde seu aprendizado de DevOps com essas tarefas

Agora que você aprendeu os principais conceitos de uma prática de DevOps, dedique um momento a responder às seguintes perguntas:

  • Quais partes do seu processo de desenvolvimento são manuais e poderiam se beneficiar da automação?
  • Existem oportunidades para introduzir uma integração contínua no processo de criação da sua equipe?
  • Como sua equipe está gerenciando a infraestrutura hoje? O processo é confiável e repetível ou ele pode ser aprimorado usando a infraestrutura como código?
  • Quais dados telemétricos ajudariam a fundamentar seu trabalho com informações?
  • Quais outros pontos de dados dariam suporte ao aprendizado validado?

Como criar sua cultura de DevOps

A próxima parte deste tutorial do DevOps discute como criar uma cultura de DevOps. Ao se preparar para levar o DevOps para sua empresa, provavelmente, você encontrará diferenças em relação à sua abordagem atual de entrega de software.

A criação de uma cultura não acontece da noite para o dia e não é tão simples quanto comprar um novo conjunto de ferramentas. Para permitir que sua equipe aprenda e pratique o DevOps, pode ser necessário fazer alterações nas estruturas, nos fluxos de trabalho e nos hábitos atuais da equipe.

Saiba como a Microsoft criou uma cultura de DevOps

Aprofunde seu aprendizado de DevOps com essas tarefas

Cada seção deste tutorial de DevOps inclui algumas tarefas para ajudá-lo a tomar medidas no sentido de criar uma prática de DevOps. Dedique um momento a responder às seguintes perguntas:

  • Quais foram alguns dos desafios que você enfrentou para o desenvolvimento e a implantação de software?
  • Em quais áreas você gostaria de ver melhorias de eficiência ao desenvolver e implantar software?

Introdução ao Azure DevOps

Entregue software de forma mais rápida e confiável com um conjunto moderno de serviços de desenvolvimento. Planeje com mais inteligência, colabore melhor e entregue mais rapidamente – use todos os recursos de DevOps ou escolha aqueles que são mais adequados para você.