Lea esto en otros idiomas:
Inglés, 日本語, Portugués de Brasil, Francés, Español.
En este ejercicio, utilizarás Ansible para realizar tareas básicas de configuración del sistema en un servidor Red Hat Enterprise Linux. Te familiarizarás con módulos fundamentales de Ansible como dnf
y user
, y aprenderás cómo crear y ejecutar playbooks.
Los playbooks en Ansible son esencialmente scripts escritos en formato YAML. Se utilizan para definir las tareas y configuraciones que Ansible aplicará a tus servidores.
Primero, crea un archivo de texto en formato YAML para tu playbook. Recuerda:
---
).Conceptos Clave:
hosts
: Especifica los servidores o dispositivos objetivo para que tu playbook se ejecute en contra.tasks
: Las acciones que Ansible realizará.become
: Permite la escalada de privilegios (ejecutar tareas con privilegios elevados).NOTA: Un playbook de Ansible está diseñado para ser idempotente, lo que significa que si lo ejecutas varias veces en los mismos hosts, asegura el estado deseado sin hacer cambios redundantes.
Antes de crear tu primer playbook, asegúrate de estar en el directorio correcto cambiando a ~/lab_inventory
:
cd ~/lab_inventory
Ahora crea un playbook llamado system_setup.yml
para realizar la configuración básica del sistema:
La estructura básica se ve de la siguiente manera:
---
- 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: Actualizar los paquetes puede tardar unos minutos antes de completar el playbook de Ansible.
Acerca del módulo dnf
: Este módulo se utiliza para la gestión de paquetes con DNF (YUM mejorado) en RHEL y otros sistemas basados en Fedora.
Acerca del módulo user
: Este módulo se utiliza para gestionar cuentas de usuario.
Ejecuta tu playbook utilizando el comando ansible-navigator
:
[student@ansible-1 lab_inventory]$ ansible-navigator run system_setup.yml -m stdout
Revisa la salida para asegurarte de que cada tarea se haya completado con éxito.
Ahora, vamos a crear un segundo playbook para verificaciones posteriores a la configuración, llamado 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: "User 'myuser' exists."
when: user_check.rc == 0
Ejecuta el playbook de verificaciones:
[student@ansible-1 lab_inventory]$ ansible-navigator run system_checks.yml -m stdout
Revisa la salida para asegurarte de que la creación del usuario haya sido exitosa.
Navegación
Ejercicio anterior - Próximo Ejercicio
Haga clic aquí para volver al Taller Ansible for Red Hat Enterprise Linux