Avaliação do ambiente existente para identificação de tarefas que podem ser automatizadas e definição de um plano de ação considerando as ferramentas ideais para a infraestrutura do cliente.
Criação de Roles do Ansible para provisionamento e gerenciamento automatizado das configurações da infraestrutura com Ansible e AWX
Centralização e implementação de rotinas automatizadas para orquestrar a execução de tarefas dentro de uma infraestrutura através do Rundeck
Automação de atividades relacionados à Segurança (Security as a Code) através de playbooks do Ansible, que podem garantir a execução de configurações específicas e até mesmo um Hardening completo.
Automação de etapas dentro de uma pipeline CI/CD, provisionando e removendo ambientes sob demanda e realizando Builds baseados em variáveis.
Implementação de fluxo automatizado para criação, configuração e versionamento de um ambiente Cloud completo, através do Ansible/AWX, baseado nas práticas IaC.
Nesta solução temos, inicialmente, o versionamento das Playbooks e Roles do Ansible através do Git. É essencial possuir uma boa organização das Roles, pois toda a estrutura de chamada das playbook, variáveis e modelos partem desses arquivos. É nesse ponto que o AWX se torna extremamente útil, pois com centralização de execução do Ansible é possível realizar um agendamento para validar se há alterações no repositório em que as Playbooks estão sendo versionadas. Para identificar todo o parque de máquinas que o Ansible irá aplicar suas configurações, é necessário configurar um “inventário”, onde em ambientes mais complexo e voláteis como a Cloud, isso pode ocorrer de forma dinâmica. E desta forma realizar um scheduler periódico para a execução das Playbooks, garantindo que mesmo se o ambiente sofrer uma alteração manual, o AWX fará a correção, retornando assim a configuração para a última versão válida armazenada no repositório.
O AWX pode ser divido por projetos, como por exemplo, um projeto focado em segurança, outro para configurações de servidores diversos e assim por diante. Por fim, o AWX ainda permite o envio de notificações, que avisará a equipe responsável quando a execução das tarefas agendadas ou mesmo uma checagem do repositório Git vier a falhar, permitindo uma resposta mais rápida da equipe.
O Ansible ainda permite a execução de Playbooks Parametrizadas, ou seja, uma mesma Playbook que pode ser executada de forma diferente baseada na definição de suas variáveis.
No cenário apresentado ainda temos o Rundeck, que é responsável por executar tarefas (jobs), seja elas periódicas ou não.
Esse Jobs são muito flexíveis a ponto de permitir qualquer tipo de interação em ambientes diversos seja eles Windows ou Linux, garantindo ainda seu devido agendamento. Cada Job pode trabalhar de uma forma, sendo executado em um ou mais “Node” – nome dado as máquinas registradas no Rundeck onde as tarefas serão executadas. Dessa forma cada Job pode executar um mesmo script ou comando em Nodes que sejam semelhantes, um exemplo recorrente, é a execução de Procedures em banco de dados ou mesmo a execução de chamadas de API.
Outra facilidade do Rundeck é o fato de conseguir centralizar diversos tipos de scripts (ShellScript ou Powershell) em um único lugar, sem ter a necessidade de encaminhar esse mesmo script para as diferentes máquinas da rede, um vez que o próprio Rundeck se encarregará disso.
Por fim, assim como o AWX o Rundeck também permite enviar notificações dos Jobs que iniciaram, falharam ou tiveram sucesso, onde os canais mais utilizados são serviços de mensagens, como o Telegram e/ou Rocket.chat.
Uma infraestrutura que possui esses recursos consegue garantir a configuração de todo um ambiente, por mais complexo que eles sejam e ainda realizar de forma automatizada a manutenção e administração deste cenário.
Desde 2001 focada em Linux e Open Source.
Seja na versão ‘Community’ ou na versão ‘Enterprise’ possuímos consultores experientes e com as principais certificações profissionais do mundo open source.
Entendemos claramente a necessidade do cliente e entregamos o que prometemos.
Preencha o formulário.