Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Este artigo fornece considerações e recomendações para DevOps em zonas de destino do Azure.
O que é DevOps
O DevOps é a união de pessoas, processos e tecnologias que fornece valor contínuo para o desenvolvimento e as operações. A abordagem de DevOps incentiva a colaboração em equipe que cria processos repetíveis para ajudar as organizações a operar de forma eficiente e em escala.
No contexto das zonas de destino do Azure, o DevOps torna-se a estrutura que orienta sua equipe (ou equipes) responsável por todo o gerenciamento do ciclo de vida das zonas de destino do Azure em áreas como:
- Como organizar e definir limites com outras equipes para alcançar o equilíbrio apropriado entre autonomia e governança
- Como evoluir continuamente o design da arquitetura da zona de destino do Azure (Lei de Conway)
- Como planejar, priorizar e iterar a implementação da arquitetura projetada
- Como implementar o controle de versão, a integração contínua e a implantação contínua para o código da zona de destino do Azure
- Como operar e responder a incidentes para sistemas e plataformas que você possui
- O nível de automação que você aplica ao provisionamento da zona de aterrissagem do Azure e à autorrecuperação automática
- Como colaborar com outras equipes em sua organização de maneira ágil e orientada a resultados
- Como criar uma cultura geradora de segurança, qualidade, centrado no usuário e aprendizado contínuo
As decisões tomadas ao revisar modelos operacionais de nuvem podem influenciar como você usa sua estrutura de DevOps.
Considerações de design do DevOps
Defina sua estrutura de DevOps ou alinhe-a com a estratégia de adoção de nuvem e DevOps da sua organização. Inclua a definição de DevOps e os princípios e práticas que sua equipe deve seguir. Conecte sua estratégia de DevOps à sua estratégia de negócios.
Estabeleça métricas que permitem que sua equipe melhore o desempenho do DevOps. As equipes de alto desempenho usam uma hipótese para testar suas ideias, medi-las para ver como a hipótese funciona e, em seguida, fazer alterações conforme necessário. A intenção final do DevOps é melhorar aspectos como frequência de implantação, tempo médio para aplicar uma alteração ou tempo para restaurar um serviço degradado. Você deve projetar todas essas métricas para eventualmente afetar o desempenho geral dos negócios.
Determine as práticas de DevOps que sua equipe deve implementar primeiro com base em suas habilidades atuais e crie um roteiro para aplicar de forma incremental novas práticas que ajudam sua equipe a melhorar suas métricas de DevOps. Investir em capacidades e recursos de engenharia é fundamental.
Determine a cadeia de ferramentas de DevOps que sua equipe deve usar para implementar as práticas de DevOps. Verifique se as ferramentas são consistentes com sua estratégia geral de DevOps para evitar cenários de ecossistemas heterogêneos de DevOps aumentando a complexidade das implantações de zona de destino ou de carga de trabalho do Azure.
Avalie o efeito que as práticas de DevOps implementadas e as ferramentas de DevOps têm no design de suas Zonas de Destino do Azure.
Crie um plano de preparação para aumentar continuamente as habilidades da sua equipe. A aplicação geral de um modelo de DevOps não estabelece instantaneamente equipes de DevOps compatíveis.
Determine a topologia de equipe que melhor se alinha à estratégia de DevOps da sua organização e ao modelo operacional de nuvem e estabeleça limites claros, responsabilidades e dependências entre as equipes.
Determine como a equipe responsável pelas Zonas de Destino do Azure deve colaborar com outras equipes em sua organização para capturar novos requisitos da Zona de Destino do Azure para atualizar o design e a implementação, resolver incidentes, minimizar dependências e alinhar-se às prioridades de negócios.
Recomendações de DevOps
As seções a seguir contêm recomendações para ajudá-lo a implementar a estrutura de DevOps em sua organização.
Definir sua estrutura de DevOps
Para estabelecer sua estrutura de DevOps, considere usar as estruturas que já estão disponíveis para começar com um conjunto de práticas comprovadas predefinidas:
O Centro de Recursos do Microsoft DevOps fornece um conjunto avançado de definições, práticas e funcionalidades que você pode adaptar ao gerenciamento do ciclo de vida da Zona de Destino do Azure, incluindo:
O Microsoft DevOps Dojo estabelece uma taxonomia de DevOps baseada em quatro pilares fundamentais e oito funcionalidades:
Definir práticas de DevOps para o gerenciamento de zonas de destino do Azure
Considere as seguintes práticas de DevOps para suas zonas de destino do Azure:
- Examine como gerenciar o ciclo de vida de desenvolvimento das zonas de destino do Azure como código.
- Examine as considerações de segurança para zonas de destino do Azure no espaço de DevOps.
Planejar seu percurso de implementação do DevOps
Defina e alinhe seu percurso de implementação do DevOps com o plano de adoção de nuvem da sua organização.
- Determine onde sua equipe está hoje nas seguintes áreas:
- Práticas de DevOps que sua equipe adotou para o gerenciamento de Zonas de Destino do Azure.
- Use ferramentas como a Avaliação de Funcionalidade de DevOps para avaliar o estado atual do status de DevOps da sua equipe.
- Estrutura de equipe atual, incluindo funções e responsabilidades e funções de nuvem gerenciadas.
- Quais habilidades técnicas sua equipe tem.
- Qual modelo de operações de nuvem sua equipe segue no momento.
- Práticas de DevOps que sua equipe adotou para o gerenciamento de Zonas de Destino do Azure.
- Use o plano de adoção de nuvem da sua organização para definir um modelo desejado para sua equipe.
- Estabeleça um roteiro iterativo para implementar o modelo desejado em um modo iterativo e incremental que se alinhe à linha do tempo de transformação da sua organização.
Implementar métricas de DevOps desejadas
Identifique quais métricas você usará para medir o desempenho do DevOps da sua equipe. Use métricas para impulsionar os hábitos desejados em sua equipe que se conectam com resultados de negócios. Estabeleça métricas para permitir que sua equipe meça o impacto sobre as atividades. Torne as principais métricas visíveis para todos, uma vez que a transparência promove a confiança e impulsiona o alinhamento com os objetivos organizacionais.
Exemplos de métricas que medem o desempenho do DevOps para melhorar o impacto nos negócios incluem:
Resultados de negócios:
- Use Objetivos e Resultados Principais como uma ferramenta para afastar suas equipes de uma mentalidade de "saída" e para uma mentalidade de "resultado". Por exemplo, você pode usar o número de cargas de trabalho que melhoraram sua classificação de conformidade em relação ao número de políticas implantadas no Azure.
- Satisfação do cliente ou do usuário final. Exemplos incluem NPS (Net Promoter Score), pesquisas, entrevistas.
- Crescimento dos negócios. Os exemplos incluem aumento da rentabilidade, aumento da receita e novas aquisições de fonte de receita.
- Métricas de pessoas. Os exemplos incluem eNPS (Employee Net Promoter Score), utilização, retenção e satisfação.
- Custos. Por exemplo, você pode usar a redução de custos.
Desempenho de entrega de software:
- Prazo de entrega de uma alteração: o tempo necessário para uma correção de bug, um novo recurso ou qualquer outra alteração para passar da ideia à implantação para a produção.
- Frequência de implantação, o número de implantações diárias de alterações de código na produção.
- Tempo médio para restaurar, o tempo necessário para restaurar o serviço na produção após um incidente ocorrer.
- Alterar o Percentual de Falha, o percentual de alterações na produção (como alterações de configuração) que levam a uma falha.
Qualidade:
- Taxa de escape de defeitos, o número de defeitos identificados pelos usuários finais.
- Trabalho não planejado ou retrabalho, o percentual de tempo gasto fazendo trabalho não planejado ou retrabalho.
- Bugs ativos, o número de bugs que ainda não foram corrigidos.
- Integridade do código: o percentual de código que não passou pelo teste de unidade.
Definir seu ecossistema de tecnologia de DevOps
A cadeia de ferramentas de DevOps que você escolhe para gerenciar o ciclo de vida das Zonas de Destino do Azure afeta:
- Suas estratégias para implementar princípios e práticas do DevOps
- Considerações de segurança para o ciclo de vida do DevOps
- O design de arquitetura geral do gerenciamento do ciclo de vida das zonas de destino do Azure
Use a estrutura de DevOps que você definiu anteriormente para identificar quais ferramentas usar para cada um dos processos do DevOps. Escolha as tecnologias de DevOps mais adequadas para as necessidades de suas equipes, mas encontre um equilíbrio que permita que você alcance a padronização em toda a sua organização, mas evite muita complexidade ou heterogeneidade em seus ecossistemas de DevOps.
Exemplos de tecnologias de DevOps em diferentes estágios de DevOps incluem:
- Planeamento: Atlassian Jira, Atlassian Trello, Azure Boards, GitHub
- CI (integração contínua) e teste: Atlassian Bitbucket, Azure Repos, GitHub Repos, npm, NuGet, Selenium, SmartBear Pepino, SonarSource SonarQube, Proxy de Ataque Zed
-
Entrega contínua (CD): Atlassian Bamboo, Azure Pipelines, GitHub Actions, Jenkins, Octopus Deploy, Perforce Puppet, RedHat Ansible
- Infraestrutura como código: Bicep, Pulumi, Terraform
- Inicialização: ArgoCD GitOps, Flux GitOps, Progress Chef, DSC (Configuração de Estado Desejado) do PowerShell
- Operações: Automação do Azure, Azure Monitor, CISCO Splunk, Grafana, Microsoft Power BI
- Colaboração e feedback: Atlassian Confluence, Wikis do Azure DevOps, Discussões do GitHub, Wikis do GitHub, Microsoft Teams, Slack, Stack Overflow
O diagrama a seguir mostra uma estrutura de DevOps de exemplo com a seleção de cadeia de ferramentas do Azure DevOps:
O diagrama a seguir mostra uma estrutura de DevOps de exemplo com a seleção de cadeia de ferramentas do Azure DevOps e do GitHub: