Leia isso em outros idiomas:
Inglês, 日本語, Português do Brasil, Francês, Espanhol.
Neste exercício, você usará o Ansible para realizar tarefas básicas de configuração do sistema em um servidor Red Hat Enterprise Linux. Você se familiarizará com módulos fundamentais do Ansible como dnf
e user
, e aprenderá a criar e executar playbooks.
Os playbooks no Ansible são basicamente scripts escritos em formato YAML. Eles são usados para definir as tarefas e configurações que o Ansible aplicará aos seus servidores.
Primeiro, crie um arquivo de texto em formato YAML para o seu playbook. Lembre-se de:
---
).Conceitos Principais:
hosts
: Especifica os servidores ou dispositivos alvo para o seu playbook ser executado.tasks
: As ações que o Ansible realizará.become
: Permite a escalada de privilégios (executar tarefas com privilégios elevados).NOTA: Um playbook do Ansible é projetado para ser idempotente, o que significa que se você executá-lo várias vezes nos mesmos hosts, ele garante o estado desejado sem fazer mudanças redundantes.
Antes de criar seu primeiro playbook, certifique-se de estar no diretório correto mudando para ~/lab_inventory
:
cd ~/lab_inventory
Agora, crie um playbook chamado system_setup.yml
para realizar a configuração básica do sistema:
A estrutura básica é a seguinte:
---
- name: Basic System Setup
hosts: node1
become: true
tasks:
- name: Update all security-related packages
ansible.builtin.dnf:
name: '*'
state: latest
security: true
- name: Create a new user
ansible.builtin.user:
name: myuser
state: present
create_home: true
NOTA: A atualização dos pacotes pode levar alguns minutos antes de o playbook do Ansible ser concluído.
Sobre o módulo dnf
: Este módulo é usado para gerenciamento de pacotes com DNF (YUM Dandificado) no RHEL e outros sistemas baseados em Fedora.
Sobre o módulo user
: Este módulo é usado para gerenciar contas de usuário.
Execute seu playbook usando o comando ansible-navigator
:
[student@ansible-1 lab_inventory]$ ansible-navigator run system_setup.yml -m stdout
Revise a saída para garantir que cada tarefa seja concluída com sucesso.
Agora, vamos criar um segundo playbook para verificações pós-configuração, chamado system_checks.yml
:
---
- name: System Configuration Checks
hosts: node1
become: true
tasks:
- name: Check user existence
ansible.builtin.command:
cmd: id myuser
register: user_check
- name: Report user status
ansible.builtin.debug:
msg: "Usuário 'myuser' existe."
when: user_check.rc == 0
Execute o playbook de verificações:
[student@ansible-1 lab_inventory]$ ansible-navigator run system_checks.yml -m stdout
Revise a saída para garantir que a criação do usuário foi bem-sucedida.
Navegação
Exercício Anterior - Próximo Exercício
Clique aqui para retornar ao Workshop de Ansible para Red Hat Enterprise Linux””