OPS05-BP03 Usar sistemas de gerenciamento de configuração - Pilar Excelência operacional

OPS05-BP03 Usar sistemas de gerenciamento de configuração

Use os sistemas de gerenciamento de configuração para fazer e rastrear alterações nas configurações. Esses sistemas reduzem os erros causados pelos processos manuais e o nível de esforço para implantar as alterações.

O gerenciamento da configuração estática define valores ao inicializar um recurso que deve permanecer consistente durante todo o tempo de vida do recurso. Alguns exemplos incluem a definição da configuração do servidor web ou de aplicação em uma instância, ou a definição da configuração de um serviço da AWS no AWS Management Console ou por meio da AWS CLI.

O gerenciamento da configuração dinâmica define valores na inicialização que podem ou devem ser alterados durante o tempo de vida de um recurso. Por exemplo, é possível definir a alternância de um recurso para ativar uma funcionalidade no código por meio de uma alteração na configuração, ou alterar o nível de detalhes do log durante um incidente para capturar mais dados e desfazer a alteração depois do incidente, eliminando os logs agora desnecessários e a despesa associada.

Na AWS, você pode usar o AWS Config para monitorar continuamente as configurações de seus recursos da AWS entre contas e Regiões. Isso ajuda a rastrear o histórico da configuração, compreender como a alteração de uma configuração afeta outros recursos e auditá-la em relação a configurações esperadas ou desejadas, usando o Regras do AWS Config e pacotes de conformidade do AWS Config.

Se tiver configurações dinâmicas em suas aplicações executadas em instâncias do Amazon EC2, AWS Lambda, contêineres, aplicativos móveis ou dispositivos de IoT, você pode usar o AWS AppConfig para configurá-las, validá-las, implantá-las e monitorá-las em seus ambientes.

Na AWS, é possível criar pipelines de integração contínua/implantação contínua (CI/CD) usando serviços como as Ferramentas de desenvolvedor da AWS (por exemplo: o AWS CodeCommit, o AWS CodeBuild, o AWS CodePipeline, o AWS CodeDeploye o AWS CodeStar).

Resultado desejado: Você configura, valida e implanta como parte de seu pipeline de integração contínua e entrega contínua (CI/CD). Você monitora para validar se as configurações estão corretas. Isso minimiza qualquer impacto para usuários finais e clientes.

Antipadrões comuns:

  • Você atualiza manualmente a configuração do servidor web em toda a frota e vários servidores não respondem devido a erros de atualização.

  • Você atualiza manualmente a frota do servidor de aplicativos ao longo de muitas horas. A inconsistência na configuração durante a alteração causa comportamentos inesperados.

  • Alguém atualizou seus grupos de segurança e seus servidores web não estão mais acessíveis. Sem saber o que foi alterado, você gasta muito tempo investigando o problema, ampliando o tempo de recuperação.

  • Você coloca uma configuração de pré-produção em produção por meio de CI/CD sem validação. Você expõe usuários e clientes a dados e serviços incorretos.

Benefícios de estabelecer esta prática recomendada: A adoção de sistemas de gerenciamento de configurações reduz o nível de esforço para fazer e rastrear alterações, bem como a frequência de erros causados por procedimentos manuais. Os sistemas de gerenciamento de configuração fornecem garantias com relação aos requisitos regulatórios, de conformidade e de governança.

Nível de risco exposto se esta prática recomendada não for estabelecida: Médio

Orientação para implementação

Os sistemas de gerenciamento de configuração são usados para rastrear e implementar alterações nas configurações de aplicações e ambientes. Os sistemas de gerenciamento de configuração também são usados para reduzir erros causados por processos manuais, tornar as alterações de configuração repetíveis e auditáveis e reduzir o nível de esforço.

Etapas da implementação

  1. Identifique os proprietários da configuração.

    1. Informe os proprietários das configurações sobre quaisquer necessidades regulatórias, de conformidade ou de controle.

  2. Identifique os itens de configuração e os resultados.

    1. Os itens de configuração são todas as configurações de aplicações e ambientes afetadas por uma implantação em seu pipeline de CI/CD.

    2. Os resultados incluem critérios de sucesso, validação e o que monitorar.

  3. Selecione ferramentas para gerenciamento de configuração com base nos requisitos de seus negócios e no pipeline de entrega.

  4. Considere implantações ponderadas, como implantações canário, para alterações significativas na configuração, a fim de minimizar o impacto de configurações incorretas.

  5. Integre seu gerenciamento de configuração ao seu pipeline de CI/CD.

  6. Valide todas as alterações enviadas.

Recursos

Práticas recomendadas relacionadas:

Documentos relacionados:

Vídeos relacionados: