Visão Geral
Curso Ansible Foundation, tem como objetivo passar para os alunos participantes o máximo de experiência, prática em criar soluções de automação para simplificar e melhorar o gerenciamento de configuração, implantação de aplicativo e orquestração de serviço entre os servidores / hosts sob seus cuidados.
O Ansible foi desenvolvido para tornar seus aplicativos e sistemas mais fáceis de implantar, sem a necessidade de scripts manuais ou código personalizado para implantar e distribuir atualizações de aplicativos com segurança via SSH e sem a necessidade de agentes em sistemas remotos.
Embora muitas vezes mencionado ao mesmo tempo, o Ansible não substitui plataformas como o Kubernetes - embora possa ser usado para gerenciar os servidores que executam o Kubernetes, por exemplo.
O que é Ansible?
Ansible é uma ferramenta de automação de configuração e gerenciamento de infraestrutura. Ele permite que os administradores de sistemas automatizem tarefas repetitivas, como configuração de sistemas, implantação de aplicativos e gerenciamento de configurações. Ele é baseado em um modelo de declaração, o que significa que você descreve o estado desejado de sua infraestrutura, e o Ansible se encarrega de alcançá-lo.
Ansible é uma ferramenta de gerenciamento de configuração de código aberto, escrita em Python, que utiliza uma abordagem de "agentless" para se comunicar com sistemas remotos. Isso significa que ele não precisa de um agente instalado em cada sistema remoto para se comunicar com ele. Ele se comunica com os sistemas remotos através de protocolos como SSH ou WinRM. Ele é compatível com diversos sistemas operacionais, incluindo Windows, Linux e macOS.
Além disso, o Ansible é extensível através de módulos, que podem ser escritos em qualquer linguagem de programação. Alguns dos recursos mais populares incluem a capacidade de automatizar a implantação de aplicativos, configurar sistemas, gerenciar configurações de rede, automatizar tarefas de segurança e integração com outras ferramentas, como o Terraform, Jenkins, entre outros.
Pre-Requisitos
O ideal é que os participantes tenham alguma experiência no uso e gerenciamento do Windows, MacOS ou Linux com a linha de comando - por favor, deixe-nos saber se você precisa de ajuda com isso, pois podemos organizar uma cartilha para ajudá-lo a acelerar o essencial.
Conteúdo Programatico
Overview of Ansible architecture
- Variables
- Facts
- Inventory
- Playbooks
- Roles
- Tasks
- Jinja2
- Ansible Tower
Installing and configuring Ansible
- Installing on Mac, Windows, Linux and through Python / pip
- Ansible Playbooks
- Plays and Playbooks
- Overview of YAML
- Tasks list
- Executing Tasks with Module calls
- Multiple Plays
Key Ansible Modules
- Command
- Shell
- Cloud
- Clustering
- Database
- Files
- Identity
- Crypto
- Messaging
- Source control
Ansible Variables
- Valid Variable names
- Defining Variables in Inventory
- Defining Variables in a Playbook
- Defining Variables in files and roles
- Using and trasnforming Variables with Jinja2 templates
- Registering Variables
- Magic Variables
- System Properties & Ansible Facts
Debugging Ansible
- Debugging via Configuration or Environment Variable
- Debugging Plays
- Debugging Roles
- Debugging Blocks
- Debugging Tasks
Ansible Handlers
- Using Notify
- Running Operations on Change
- Running multiple tasks with Ansible Handlers
- Using Variables in Handlers
Ad hoc Ansible commands
- Task execution
- File Transfer
- Updating and Upgrading
- Managing Packages
- Managing Services
- System Checks
Managing and Monitoring Ansible
- Monitoring module
- Notification module
- Remote management module
- Utilities module