Curso Work Automation With Ansible

  • DevOps | CI | CD | Kubernetes | Web3

Curso Work Automation With Ansible

24 horas
Visão Geral

Curso Work Automation With Ansible. Este curso prático e intensivo é projetado para administradores de sistemas, engenheiros de DevOps, desenvolvedores, profissionais de infraestrutura e qualquer um que busque automatizar tarefas repetitivas e complexas em ambientes de TI. Do ponto de vista técnico, você aprenderá a dominar o Ansible, uma ferramenta de automação poderosa, simples de usar e baseada em agentes (agentless). O curso cobrirá desde os fundamentos da instalação e configuração do Ansible, passando pela escrita de Playbooks eficientes em YAML, até o gerenciamento de inventários dinâmicos, o uso de roles para reutilização de código e a integração com variáveis e Vault para segurança. Focaremos em cenários práticos de automação de infraestrutura, desde a configuração de servidores e implantação de aplicações até o gerenciamento de configurações e orquestração de ambientes complexos.

Curso Work Automation With Ansible, a automação com Ansible é uma habilidade indispensável que permite às organizações acelerar a entrega de software, reduzir erros humanos, padronizar ambientes e liberar equipes para focar em tarefas de maior valor estratégico. A capacidade de automatizar a provisionamento, configuração e implantação de infraestrutura e aplicações resulta em maior eficiência operacional, economia de custos, melhor consistência e maior agilidade nos negócios. Profissionais que dominam o Ansible são altamente valorizados no mercado, pois contribuem diretamente para a modernização e otimização das operações de TI.

Objetivo

Ao final do Curso Work Automation With Ansible, você será capaz de:

  • Compreender os princípios e a arquitetura do Ansible.
  • Instalar e configurar o Ansible em um ambiente de controle.
  • Criar e gerenciar inventários de hosts (estáticos e dinâmicos).
  • Escrever Playbooks Ansible em YAML para automatizar tarefas.
  • Utilizar Módulos Ansible para interagir com sistemas e serviços.
  • Gerenciar variáveis e fatos (facts) para tornar Playbooks flexíveis.
  • Implementar Roles para organizar e reutilizar código Ansible.
  • Proteger informações sensíveis usando Ansible Vault.
  • Realizar automação de configurações, implantação de aplicações e orquestração.
  • Solucionar problemas comuns em Playbooks Ansible.
  • Aplicar as melhores práticas para automação com Ansible.
Publico Alvo
  • Administradores de Sistemas: Para automatizar tarefas diárias de gerenciamento de servidores.
  • Engenheiros de DevOps: Para construir pipelines de CI/CD e gerenciar infraestrutura como código.
  • Desenvolvedores: Para automatizar ambientes de desenvolvimento e implantação de aplicações.
  • Profissionais de Infraestrutura: Que buscam padronizar e escalar suas operações.
  • Qualquer profissional de TI que deseja eliminar tarefas manuais e repetitivas.
Pre-Requisitos
  • Conhecimento básico de Linux: Comandos de terminal, sistema de arquivos, permissões, gerenciamento de pacotes.
  • Noções básicas de redes TCP/IP (endereçamento IP, SSH).
  • Familiaridade com o uso de YAML (desejável, mas será revisado).
  • Noções de virtualização ou ambientes de nuvem para os laboratórios.
Materiais
Inglês/Português/Lab Prático
Conteúdo Programatico

Módulo 1: Introdução ao Ansible e Fundamentos (4 horas)

  • 1.1. O Desafio da Automação em TI:
    • Por que automatizar? Benefícios (velocidade, consistência, redução de erros).
    • Cenários de automação: Provisionamento, Configuração, Implantação, Orquestração.
  • 1.2. Introdução ao Ansible:
    • O que é Ansible? Filosofia "Agentless" (sem agentes).
    • Arquitetura do Ansible: Control Node, Managed Nodes, Inventário, Playbooks, Módulos.
    • Comparativo com outras ferramentas de automação (Chef, Puppet, SaltStack).
  • 1.3. Instalação e Configuração Inicial:
    • Instalando Ansible no Control Node.
    • Configuração básica do Ansible (ansible.cfg).
    • Configurando autenticação SSH (chaves SSH).
  • 1.4. Inventários Estáticos:
    • Estrutura e sintaxe do arquivo hosts (INI e YAML).
    • Definindo grupos de hosts e variáveis de inventário.
  • 1.5. Primeiros Comandos Ad-Hoc:
    • Executando comandos simples em hosts remotos.
    • Módulos comuns (ping, command, shell).
  • Prática: Instalar Ansible e configurar chaves SSH. Criar um inventário estático. Executar comandos ad-hoc simples em máquinas virtuais de laboratório.

Módulo 2: Escrevendo Playbooks Ansible (6 horas)

  • 2.1. Anatomia de um Playbook:
    • Estrutura YAML de um Playbook: Plays, Tasks, Módulos.
    • Conceitos de Idempotência.
  • 2.2. Módulos Ansible Essenciais:
    • Gerenciamento de pacotes (apt, yum).
    • Gerenciamento de serviços (service).
    • Gerenciamento de arquivos (copy, template, file).
    • Gerenciamento de usuários (user).
    • Comandos (command, shell).
  • 2.3. Variáveis e Fatos (Facts):
    • Definindo variáveis em Playbooks, inventários, e linha de comando.
    • Fatos (Facts): Coleta de informações sobre os Managed Nodes (setup module).
    • Registrando saídas de tarefas (register).
  • 2.4. Condicionais e Loops:
    • when statement para execução condicional.
    • loop para iterar sobre listas.
  • 2.5. Handlers e Notificadores:
    • O que são Handlers e como eles garantem que as tarefas sejam executadas apenas quando necessário.
  • Prática: Escrever Playbooks para:
    • Instalar um pacote (nginx/apache) em vários hosts.
    • Configurar um arquivo de configuração com variáveis.
    • Criar um usuário em todos os hosts.
    • Usar condicionais e loops.
    • Criar um handler para reiniciar um serviço.

Módulo 3: Organização, Reutilização e Variáveis Avançadas (6 horas)

  • 3.1. Estrutura de Projeto Ansible:
    • Organização de Playbooks, inventários e roles.
    • Diretórios padrão do Ansible.
  • 3.2. Ansible Roles:
    • Conceito de Roles: Estrutura modular para reutilização de código.
    • Criando e utilizando Roles (ansible-galaxy init).
    • Variáveis em Roles (defaults, vars).
    • Tasks, Handlers, Templates, Files em Roles.
  • 3.3. Gerenciamento de Variáveis Avançado:
    • Prioridade das variáveis no Ansible.
    • group_vars e host_vars: Variáveis específicas para grupos e hosts.
    • extra-vars (-e): Variáveis passadas pela linha de comando.
  • 3.4. Templates com Jinja2:
    • Uso de templates Jinja2 para arquivos de configuração dinâmicos.
    • Filtros Jinja2.
  • Prática: Refatorar Playbooks anteriores em Roles. Criar um novo Role para configurar um servidor web completo (instalação, arquivo de configuração, serviço). Usar group_vars e host_vars para customizar configurações.

Módulo 4: Segurança, Inventários Dinâmicos e Orquestração (5 horas)

  • 4.1. Ansible Vault:
    • Protegendo dados sensíveis (senhas, chaves de API).
    • Criptografando e descriptografando arquivos, strings e variáveis.
    • Melhores práticas de uso do Vault.
  • 4.2. Inventários Dinâmicos:
    • Benefícios de inventários dinâmicos (nuvem, CMDBs).
    • Configuração e uso de scripts de inventário (ex: para AWS EC2, Azure VMs).
  • 4.3. Orquestração com Ansible:
    • Executando Playbooks em sequência para coordenar implantações complexas.
    • Delegating tasks (delegate_to).
    • Controle de fluxo (serial, run_once).
  • 4.4. Tags e Limiting:
    • Executando apenas partes de um Playbook (--tags).
    • Limitando a execução a um subconjunto de hosts (--limit).
  • Prática: Criptografar senhas usando Ansible Vault. (Se possível) Configurar um inventário dinâmico para uma pequena infraestrutura em nuvem. Orquestrar um deploy de aplicação de múltiplos tiers.

Módulo 5: Boas Práticas, Testes e Ansible Galaxy (3 horas)

  • 5.1. Boas Práticas de Automação com Ansible:
    • Organização do código.
    • Idempotência e previsibilidade.
    • Versionamento de Playbooks (Git).
    • Revisão de código.
  • 5.2. Troubleshooting e Depuração:
    • Modo Verbose (-vvv).
    • Módulo debug.
    • Checagem de sintaxe (--syntax-check).
    • Modo Dry Run (--check).
  • 5.3. Ansible Galaxy:
    • Compartilhando e utilizando Roles da comunidade.
    • Instalando Roles do Galaxy.
  • 5.4. Próximos Passos:
    • Integração com CI/CD.
    • Ansible Tower / AWX.
    • Ansible Collections.
  • Prática: Realizar debugging em um Playbook com erros intencionais. Instalar e utilizar uma Role do Ansible Galaxy. Discutir estratégias de integração com CI/CD.
TENHO INTERESSE

Cursos Relacionados

Curso Terraform Deploying to Oracle Cloud Infrastructure

24 Horas

Ansible Overview of Ansible architecture

16h

Curso Apache NiFi Advanced DataFlow Engineering

24 horas

Curso Real-Time Data Pipelines

24 horas