O que é gerenciamento de configurações?
O gerenciamento de configurações é o processo de manutenção de sistemas, como hardware e software de computador, no estado desejado. O gerenciamento de configurações (CM, pela sigla em inglês) também é um meio de garantir que o desempenho dos sistemas atenda às expectativas de forma consistente ao longo do tempo.
Originalmente desenvolvido nas forças armadas dos EUA e agora amplamente utilizado em muitos tipos diferentes de sistemas, o CM ajuda a identificar sistemas que precisam ser corrigidos, atualizados ou reconfigurados para que estejam em conformidade com o estado desejado. Esse processo geralmente é usado com o gerenciamento de serviços de TI, conforme definido pela IT Infrastructure Library (ITIL). A implementação do CM normalmente é realizada por meio de ferramentas de gerenciamento de configurações, como as incorporadas no VMware vCenter.

Visão geral do VMware vRealize Automation SaltStack Config

Datasheet: VMware vRealize Automation SaltStack Config
Por que o gerenciamento de configurações é importante?
O gerenciamento de configurações ajuda a impedir que alterações não documentadas sejam realizadas no ambiente. Ao fazer isso, o CM pode evitar problemas de desempenho, inconsistências no sistema ou problemas de conformidade que possam resultar em multas e sanções regulatórias. Com o decorrer do tempo, alterações não documentadas podem resultar em tempo de inatividade, instabilidade ou falha do sistema.
Realizar essas tarefas manualmente em sistemas grandes é muito complexo. O gerenciamento de configurações de software pode envolver centenas ou milhares de componentes para cada aplicativo e, sem a documentação adequada, as organizações de TI podem perder facilmente o controle dos sistemas que precisam de atenção, que etapas são necessárias para corrigir problemas, que tarefas devem ser priorizadas e se as alterações foram validadas e propagadas para todo o sistema.
Um sistema de gerenciamento de configurações permite que a empresa defina as configurações de maneira consistente, para depois criá-las e mantê-las de acordo com as linhas de base estabelecidas. Um plano de gerenciamento de configurações deve incluir uma série de ferramentas que:
- Permitam a classificação e o gerenciamento de sistemas em grupos
- Façam modificações centralizadas nas configurações de linha de base
- Enviem automaticamente as alterações a todos os sistemas afetados para automatizar as atualizações e a aplicação de patches
- Identifiquem configurações problemáticas que apresentam baixo desempenho ou não estão em conformidade
- Automatizem a priorização das ações necessárias para corrigir problemas•
- Apliquem correções quando necessário.
À medida que as organizações adotam cada vez mais uma arquitetura de microsserviços composta de muitos segmentos de código de vários tamanhos conectados por APIs, fica ainda mais evidente a necessidade de um processo consistente de gerenciamento de configurações no qual cada serviço utiliza metadados que codificam especificações para alocação de recursos, segredos, como senhas, e endpoints que definem conexões com outros serviços para registro e inicialização.
Com essas ferramentas, o plano de gerenciamento de configurações proporciona uma "versão única da verdade" em relação ao estado desejado dos sistemas em toda a organização, ao oferecer visibilidade de todas as modificações de configuração, permitir trilhas de auditoria e rastrear todas as alterações feitas no sistema.
Como funciona o gerenciamento de configurações?
O processo de gerenciamento de configurações começa com a coleta de informações, incluindo dados de configuração de cada aplicativo e a topologia de rede. É preciso identificar os segredos, como chaves de criptografia e senhas, para que possam ser criptografados e armazenados com segurança. Depois de coletados, os dados de configuração devem ser carregados em arquivos, que se tornam o repositório central do estado desejado, a versão única da verdade.
Após a coleta dos dados, a organização pode estabelecer uma configuração de linha de base, que deve ser uma configuração reconhecidamente correta e possa executar as operações pretendidas sem bugs ou erros. Normalmente, a linha de base é estabelecida pela observação da configuração do ambiente de produção e o armazenando das definições de configuração como linha de base.
Após essa linha de base ser estabelecida, a organização deverá adotar um sistema de controle de versões. Muitas organizações utilizam o Git para criar um repositório de dados de configuração para essa finalidade.
A auditoria e a contabilidade ajudam a assegurar que as alterações aplicadas à configuração sejam analisadas e aceitas pelas partes interessadas, o que garante a visibilidade das alterações de configuração e a responsabilidade pelas mesmas.
Quais são os benefícios do gerenciamento de configurações?
A utilização de um sistema de gerenciamento de configurações ajuda a evitar problemas que ocorrem quando os sistemas de hardware e software são configurados incorretamente. O simples rastreamento das alterações pode evitar projetos de correção caros no futuro. O CM é um seguro que você paga hoje para evitar problemas no futuro. Por exemplo, o gerenciamento de configurações garante que os ambientes de desenvolvimento, teste e produção sejam os mesmos, para que os aplicativos implantados se comportem da maneira esperada.
Quando há problemas, o CM pode recriar o ambiente em o erro ocorreu ou replicar um ambiente, para facilitar o dimensionamento e a migração de cargas de trabalho no ambiente local ou entre nuvens.
As ferramentas de gerenciamento de configurações usam scripts para automatizar essas tarefas administrativas e permitir o aprovisionamento rápido de servidores, VMs e contêineres para o estado desejado em minutos, em vez de dias ou semanas.
Quais são os riscos de não usar o gerenciamento de configurações?
Se o gerenciamento de configurações for usado inadequadamente ou totalmente negligenciado, as organizações correrão o risco de sofrer tempo de inatividade e erros causados por hardware e software configurados incorretamente. Isso pode afetar os resultados financeiros em termos de tempo de inatividade não planejado, despesas adicionais e inúmeras horas desperdiçadas corrigindo erros, problemas de qualidade e prazos não cumpridos devido ao tempo de inatividade. Como é o caso da maioria das automações de TI, o CM impede que as organizações precisem lidar com emergências constantemente e permite que a TI se concentre nas tarefas mais produtivas.
Sem o CM, a dificuldade para entender como até mesmo as menores alterações no ambiente afetariam as operações de desenvolvimento, teste e produção seria enorme. Isso se estende à incapacidade de compreender todos os componentes de um sistema e, por conseguinte, à incapacidade de determinar como cada serviço, parâmetro de configuração e unidade de hardware contribui para o sistema.
A análise de causa raiz, a correção e a manutenção dos contratos de nível de serviço (SLAs, pela sigla em inglês) se tornariam cada vez mais difíceis sem uma solução de CM implantada. As organizações teriam dificuldade para:
- Verificar se as alterações nas configurações foram autorizadas ou imiscuídas.
- Determinar como as alterações afetariam a organização em geral.
- Descobrir rapidamente falhas de segurança causadas por alterações de configuração não autorizadas.
Soluções e produtos relacionados
VMware Aria Automation Config
Plataforma moderna de gerenciamento de configurações com desempenho, velocidade e eficiência na escala certa.