Gerência de Configuração Ansible - Chef - Puppet

Suporte e Consultoria Gerenciamento de Configurações

  • Consultoria para escolha de qual ferramenta é mais adequada a necessidade do cliente.
  • Implementação de gerência de configurações e infraestrutura como um código.
  • Customização de recipes, playbooks e manifests.
  • Consultoria para migração de infraestrutura convencional para IaC.
  • Desenvolvimento de configurações automatizadas.

Benefícios de se implementar a gerência de configuração

  • Diminuição no tempo de configurações em grande escala.
  • Padronização das configurações aplicadas.
  • Documentação das mudanças no ambiente.
  • Facilidade nas mudanças e testes de código antes de aplicar em produção.
  • Diminuição da incidência de erros.
  • Aumento da produtividade.

O que é infraestrutura como um código?

A infraestrutura convencional passou por mudanças, para atender novas necessidades de mercado que exige cada vez mais velocidade e elasticidade. Tendo em mente essa nova demanda por agilidade, a infraestrutura “artesanal” passou a ser tratada como um código. Graças ao versionamento das configurações e reutilização de códigos, ganha-se agilidade, segurança e integridade no momento de construir ou alterar os ambientes.

Anteriormente, com o gerenciamento de uma infraestrutura física, relativamente pequena, era comum a conexão direta nos servidores para efetuar configurações, criação de usuários ou instalações de serviços. Vamos imaginar que um analista fosse implantar um sistema de monitoramento utilizando o Zabbix. Vamos considerar o tempo de 10 minutos por máquina para realizar o download do zabbix-agent no repositório, somado o tempo de instalação e configuração. Em um cenário onde houvessem 500 servidores, esta tarefa levaria mais de 83 horas para ser finalizada, ou seja, trabalhando 8 horas por dia, nesta configuração, levaria mais de 10 dias para ser concluída.

Empregando o conceito de infraestrutura como um código e usando aplicativos para gerência de configurações, o mesmo analista, poderia escrever uma “receita” para a configuração desejada. Ao aplicar esta “receita” em grande escala, com técnicas de paralelismo que garantem e documentam os passos executados, aproveitaria melhor o tempo economizado durante a configuração automatizada desta tarefa.

Voltando ao cenário de infraestrutura comum. Poderíamos automatizar a tarefa usando script, porém, seria muito difícil criar uma abstração para que este script instalasse o zabbix-agent independente da distribuição ou sistema operacional das máquinas alvos. Outra questão difícil de resolver utilizando scripts e que não importa quantas vezes o procedimento seja feito, seu resultado final deverá ser o mesmo.

Para solucionar todos os problemas citados, surgiu o termo Infraestrutura como  Código (IaC) que , em resumo seria tratar seu ambiente como um código, versionando documentando e garantindo a mesma qualidade encontrada em técnicas de desenvolvimento ágil de software, porém agora, associando tal qualidade a sua infraestrutura.

Principais ferramentas de Gerência de Configuração do mercado.

  • Ansible: ferramenta desenvolvida em Python cuja finalidade é gerenciar configurações em múltiplas máquinas. Utiliza o modelo Agentless (Sem agente). Seus arquivos de código são do formato YML de fácil entendimento. Possui muitos módulos que aumentam o poder de gerenciamento de serviços e configurações.
  • Puppet: ferramenta de gerenciamento de configurações muito utilizada para manter o ambiente fiel as configurações desejadas. Inicialmente construído em python, atualmente desenvolvido em Ruby. Seus módulos nativos trabalham com o conceito RAL Resource Abstration Layer, que garantem a universalidade do código escrito.
  • SaltStack: Similar ao Puppet, trabalha no formato master/agent (seus agentes são os minions). Assim como o Puppet, é usando para gerenciar e controlar o estado das mudanças aplicadas na estrutura.
  • Chef: Desenvolvido em Ruby, utiliza a própria syntax da linguagem, (principalmente arquivos rb e erb), para escrever suas receitas (recipes). Sua syntax está muito mais próxima da programação tradicional, com a possibilidade de utilização de laços, condições, funções e interação com ferramentas de testes.
  • Foreman: trabalha em conjunto com o Puppetserver, oferece maior visibilidade de seus ambientes. Coleta fatos das máquinas gerenciadas, gera métricas sobre suas configurações, permitindo também integração com virtualizadores para prover e gerenciar a infraestrutura.

Cases de Sucesso

Infraestrutura como Código

Renomada empresa de telecom do Brasil está passando por um processo de transformação digital para ganhar agilidade no provisionamento de infraestrutura e nos processos, por ser uma empresa de grande porte torna-se lento e difícil capacitar todas as pessoas de dentro da organização e implementar um novo método de trabalho.

Infraestrutura ágil para replicação de ambiente de forma padronizada.

A Secretaria Municipal da Educação da prefeitura municipal de São Paulo, precisava fazer o deploy de aplicações escritas em .Net de forma ágil em ambientes padronizados. Estava em curso uma grande reestruturação e como em todo legado de T.I., a falta de documentação de software e da infraestrutura de produção acabavam dificultando a replicação automática desses ambientes em caso de disaster recovery.

Caixa Econômica Federal – Gerência de Configurações com Puppet.

O Puppet permite a padronização do serviços providos pelas máquinas virtuais, a diminuição do tempo de indisponibilidade dos serviços e a rastreabilidade em alterações do ambiente.

Solicite Contato

Forma de contato preferencial
CAPTCHA
This question is for testing whether or not you are a human visitor and to prevent automated spam submissions.
9 + 1 =
Resolva este problema matemático simples e digite o resultado. Por exemplo para 1+3, digite 4.

Compartilhe esta página