SUS06-BP03 Aumentar a utilização de ambientes de desenvolvimento
Aumente a utilização dos recursos para desenvolver, testar e compilar suas workloads.
Antipadrões comuns:
-
Você provisiona ou encerra manualmente seus ambientes de compilação.
-
Você mantém seus ambientes de compilação em execução independentemente de atividades de teste, compilação ou lançamento (por exemplo, execução de um ambiente fora do horário de expediente dos membros de sua equipe de desenvolvimento).
-
Você provisiona recursos em excesso para seus ambientes de compilação.
Benefícios do estabelecimento desta prática recomendada: ao aumentar a utilização dos ambientes de compilação, você pode melhorar a eficiência geral de sua workload de nuvem e, ao mesmo tempo, alocar recursos aos compiladores para que eles desenvolvam, testem e compilem com eficiência.
Nível de exposição a riscos se esta prática recomendada não for estabelecida: baixo
Orientações para a implementação
Use a automação e a infraestrutura como código para ativar ambientes de compilação quando necessário e desativá-los quando não forem usados. Um padrão comum é programar períodos de disponibilidade que coincidam com as horas de trabalho dos membros da equipe de desenvolvimento. A configuração dos ambientes de teste deve ser bem semelhante à do ambiente de produção. Entretanto, procure oportunidades para usar tipos de instância com capacidade de expansão, instâncias spot do Amazon EC2, serviços de banco de dados com escalabilidade automática, contêineres e tecnologias sem servidor para alinhar a capacidade de desenvolvimento e teste com o uso. Limite o volume de dados apenas para atender os requisitos de teste. Se usar dados de produção no teste, explore possibilidades para compartilhar os dados da produção em vez de movimentá-los.
Etapas da implementação
-
Use a infraestrutura como código: use a infraestrutura como código para provisionar os ambientes de compilação.
-
Use automação: utilize a automação para gerenciar o ciclo de vida dos ambientes de desenvolvimento e teste e maximizar a eficiência dos recursos de compilação.
-
Maximize a utilização: use estratégias para maximizar a utilização dos ambientes de desenvolvimento e teste.
-
Use ambientes representativos mínimos viáveis para desenvolver e testar possíveis melhorias.
-
Utilize tecnologias sem servidor, se possível.
-
Use instâncias sob demanda para complementar os dispositivos de desenvolvedor.
-
Use tipos de instância com capacidade de expansão, instâncias spot e outras tecnologias para alinhar a capacidade de compilação com o uso.
-
Adote serviços de nuvem nativos para acesso seguro ao shell de instância em vez de implantar frotas de hosts bastion.
-
Escale automaticamente seus recursos de compilação de acordo com seus trabalhos de compilação.
-
Recursos
Documentos relacionados:
Vídeos relacionados: