Visão Geral
O curso Automate the System Operation with Ansible tem como objetivo capacitar profissionais de infraestrutura, DevOps e administração de sistemas a automatizar tarefas operacionais de sistemas utilizando o Ansible.
Durante o curso, os alunos aprenderão a criar playbooks, roles, inventários dinâmicos e templates, aplicando automação em rotinas diárias como: instalação de pacotes, gerenciamento de usuários, configuração de serviços, deploy de aplicações e manutenção de servidores Linux e Windows.
O foco é reduzir erros manuais, aumentar a eficiência operacional e garantir consistência em ambientes de TI.
Conteúdo Programatico
Módulo 1: Fundamentos da Automação com Ansible
- O que é automação de operações de sistemas.
- Introdução ao Ansible e sua arquitetura.
- Componentes principais: control node, managed nodes, módulos, inventários.
- Instalação e configuração inicial do Ansible.
- Estrutura de diretórios e arquivos (
ansible.cfg
, hosts
, playbooks
).
Módulo 2: Trabalhando com Inventários
- Inventários estáticos e dinâmicos.
- Grupos e variáveis por ambiente (dev, qa, prod).
- Uso de Ansible Vault para dados sensíveis (senhas, tokens, chaves).
- Conexão segura via SSH e gerenciamento de chaves.
Módulo 3: Playbooks e Módulos Operacionais
- Estrutura e sintaxe dos playbooks YAML.
- Principais módulos para automação de sistemas:
- user, group, service, file, package, cron, copy, systemd, command.
- Execução condicional de tarefas.
- Loops e variáveis de ambiente.
- Tratamento de erros e controle de fluxo.
Módulo 4: Automação de Tarefas Operacionais
- Instalação e atualização automatizada de pacotes (apt/yum).
- Criação e remoção de usuários e grupos.
- Automação de backups e limpezas de logs.
- Configuração automática de serviços (Apache, Nginx, SSH, etc).
- Reinicialização automática e agendada de serviços.
Módulo 5: Templates e Jinja2
- Criação de arquivos dinâmicos com Jinja2.
- Utilização de variáveis, loops e condicionais em templates.
- Automação da configuração de arquivos como
nginx.conf
, sshd_config
, crontab
.
- Boas práticas para gerenciamento de templates em ambientes críticos.
Módulo 6: Roles e Organização de Código
- Estrutura e criação de roles reutilizáveis.
- Separação de tarefas, handlers, templates e variáveis.
- Uso de Ansible Galaxy para importar roles da comunidade.
- Padronização e versionamento de automações operacionais.
Módulo 7: Monitoramento e Manutenção Automatizada
- Coleta automática de logs e status de sistemas.
- Automação de alertas e notificações com mail e Slack/Webhooks.
- Integração com Prometheus Node Exporter e Grafana.
- Implementação de tarefas programadas via cron e Ansible Tower/AWX.
Módulo 8: Inventários Dinâmicos e Infraestrutura
- Introdução aos inventários dinâmicos.
- Integração com AWS, Azure e GCP.
- Execução remota de playbooks em múltiplos servidores.
- Escalabilidade e paralelismo em execuções de larga escala.
Módulo 9: Segurança e Conformidade
- Boas práticas de segurança com Ansible Vault e permissões.
- Gerenciamento de patches e updates automatizados.
- Auditoria de configuração e conformidade com playbooks de verificação.
- Geração de relatórios automáticos de status e compliance.
Módulo 10: Projeto Prático – Automação Completa de Operações
- Criação de um projeto de automação de rotina completa:
- Provisionamento e atualização de servidores Linux.
- Configuração de usuários e serviços essenciais.
- Deploy automatizado de aplicação web.
- Monitoramento e limpeza periódica de logs.
- Execução, troubleshooting e validação dos resultados.