Curso YAML Ansible
32 horasVisão Geral
Este Curso YAML Ansible é adaptado para desenvolvedores, administradores de sistema e profissionais de DevOps que desejam dominar a sintaxe YAML e obter proficiência no uso do Ansible para automação. YAML (YAML Ain't Markup Language) é um padrão de serialização de dados legível usado para arquivos de configuração e em muitos aplicativos onde os dados estão sendo armazenados ou transmitidos. Ansible é uma ferramenta de automação de código aberto que utiliza YAML para definir fluxos de trabalho complexos e automatizar a configuração e o gerenciamento de computadores. Combinar YAML com Ansible fornece um meio poderoso de automatizar sua infraestrutura e implantações de software.
Objetivo
Após realizar este Curso YAML Ansible você será capaz de:
- Understand how to install and configure Ansible
- Understand how to run ad-hoc commands and playbooks
- Automate tasks using Ansible
- Create effective Ansible Playbooks
- Write simple plays and tasks
- Organize code into a modular and reusable structure
- Separate code from data using Jinja2 templates and variables
- Run scripts and custom commands using Ansible command modules
- Use Ansible Tower to manage enterprise deployment easily
Publico Alvo
- Engenheiro DevOps
- Desenvolvedor de software
Pre-Requisitos
Materiais
Inglês + Exercícios + Lab PraticoConteúdo Programatico
Introduction to Ansible
- What is Ansible and Features
- History and Releases
- Agent versus Agentless
- Ansible Architecture
- Infrastructure as Code
- Idempotency
- Use cases
Configuring Ansible
- Building an Ansible Inventory
- Ansible Configuration Files
- Running Ad Hoc Commands
- Managing Static & Dynamic Inventories
- Working with Ansible Modules
- Ansible Plugins
- Lab: Working with ansible default behavior
- Lab: Customizing Ansible Configuration
- Lab: Building Custom Ansible Inventory
Ansible Playbooks Anatomy
- Ansible Ad-hoc Commands
- Hosts
- Tasks
- Plays
- Ansible Playbooks Introduction
- Playbook Execution
- Lab: Running Ad Hoc Commands
- Lab: Working with Tasks
- Lab: Implementing Multiple Tasks in a Play
- Lab: Implementing Playbooks
- Lab: Automated LAMP Setup Using Ansible
Managing Variables and Facts
- Managing Variables
- Managing Secrets
- Managing Facts
- Lab: Managing Variables
- Lab: Managing Secrets
- Lab: Managing Facts
- Lab: Managing Variables and Facts
Ansible Task control execution
- Loops and Conditionals
- Handlers
- Limiting Execution by Hosts (limit)
- Limiting Execution by Tasks (tag)
- Adding and Meeting Conditionals
- Handling Errors
- Lab: Writing Loops and Conditional Tasks
- Lab: Implementing Handlers
- Lab: Handling Task Failure
- Lab: Implementing Task Control
Deploying Files to Managed Hosts
- Modifying and Copying Files to Hosts
- Deploying Custom Files with Jinja Templates
- Lab: Modifying and Copying Files to Hosts
- Lab: Deploying Custom Files with Jinja Templates
- Lab: Deploying Files to Managed Hosts
Managing Complex Plays and Playbooks
- Selecting Hosts with Host Patterns
- Including and Importing Files
- Lab: Selecting Hosts with Host Patterns
- Lab: Including and Importing Files
- Lab: Managing Complex Plays and Playbooks
Simplifying Playbooks with Roles
- Describing Role Structure
- Reusing Content with System Roles
- Creating Roles
- Deploying Roles with Ansible Galaxy
- Getting Roles and Modules from Content Collections
- Lab: Reusing Content with System Roles
- Lab: Creating Roles
- Lab: Deploying Roles with Ansible Galaxy
- Lab: Getting Roles and Modules from Content Collections
- Lab: Simplifying Playbooks with Roles
Optimizing Ansible
- Selecting Hosts with Host Pattern
- Configuring Delegation
- Configuring Parallelism
- Lab: Controlling playbook execution
- Lab: Selecting Hosts with Host Patterns
- Lab: Including and Importing Files
- Lab: Managing Complex Plays and Playbooks
SSH Key and Credentials Management
- SSH Keys
- Configure Ansible Vault
- Securing Passwords Using Vault
- Executing with Ansible Vault
- Lab: Managing Secrets Using Ansible Vaults
Automating Linux Administration Tasks
- Managing Software and Subscriptions
- Managing Users and Authentication
- Managing the Boot Process and Scheduled Processes
- Managing Storage
- Managing Network Configuration
- Lab: Managing Software and Subscriptions
- Lab: Managing Users and Authentication
- Lab: Managing the Boot Process and Scheduled Processes
- Lab: Managing Storage
- Lab: Managing Network Configuration
- Lab: Automating Linux Administration Tasks
Ansible Tower
- Introduction to Ansible Tower
- System Requirements
- How AWX Works
- AWX Vocabulary
- Setting up Environment
- Installing Ansible Tower
- Navigating the Ansible Tower Web Interface
- Lab: Installing Ansible Tower
Understand and use Git
- Clone a Git repository
- Update, modify and create files in a Git repository
- Add those modified files back into the Git repository
- Lab: Working with Git
- Lab: CI/CD with Ansible Tower and GitHub
Manage access for Ansible Tower
- Create Ansible Tower users and teams and make associations of one to the other
- Lab: Managing Users and Teams
Manage inventories and credentials
- Manage advanced inventories
- Create a dynamic inventory from an identity management server or a database server
- Create machine credentials to access inventory hosts
- Create a source control credential
- Lab: Managing Credentials
Manage projects
- Create a job template
- Lab: Managing Projects
Manage job workflows
- Create a job workflow template
- Lab: Managing Job Workflow
Work with the Ansible Tower API
- Write an API scriptlet to launch a job
- Lab: Work with the Ansible Tower API
Coordinate rolling updates
- Minimize downtime and ensure maintainability and simplicity of Ansible Playbooks by using the advanced features of Ansible to manage rolling updates
Create a simple CI/CD pipeline with Ansible Tower
- Build and operate a proof-of-concept CI/CD pipeline based on Ansible Automation and integrating Red Hat Ansible Tower
Troubleshooting, Testing, and Validation
- Troubleshooting Playbooks
- Troubleshooting Ansible Managed Hosts
- Ordering Problems
- Jumping to Specific Tasks
- Retrying Failed Hosts
- Syntax-Check and Dry-Run
- Debugging
- Lab: Troubleshooting Playbooks
- Lab: Troubleshooting Ansible Managed Hosts
- Lab: Troubleshooting Ansible