1.5.3. Aplicar un papel
El siguiente procedimiento describe cómo aplicar un rol particular.
Requisitos previos
El paquete
rhel-system-roles
está instalado en el sistema que se quiere utilizar como nodo de control:# yum install rhel-system-roles
El repositorio del motor Ansible está habilitado y el paquete
ansible
está instalado en el sistema que desea utilizar como nodo de control. Necesita el paqueteansible
para ejecutar playbooks que utilicen RHEL System Roles.Si no dispone de una suscripción a Red Hat Ansible Engine, puede utilizar una versión soportada limitada de Red Hat Ansible Engine proporcionada con su suscripción a Red Hat Enterprise Linux. En este caso, siga estos pasos:
Habilite el repositorio del motor Ansible de RHEL:
# subscription-manager refresh # subscription-manager repos --enable ansible-2-for-rhel-8-x86_64-rpms
Instale el motor Ansible:
# yum install ansible
- Si tiene una suscripción a Red Hat Ansible Engine, siga el procedimiento descrito en ¿Cómo descargo e instalo Red Hat Ansible Engine?
Puedes crear un playbook de Ansible.
Los playbooks representan el lenguaje de configuración, despliegue y orquestación de Ansible. Mediante el uso de playbooks, puedes declarar y gestionar configuraciones de máquinas remotas, desplegar múltiples máquinas remotas u orquestar pasos de cualquier proceso manual ordenado.
Un playbook es una lista de uno o más
plays
. Cadaplay
puede incluir variables, tareas o roles de Ansible.Los libros de jugadas son legibles para las personas y se expresan en el formato
YAML
.Para más información sobre los playbooks, consulte la documentación de Ansible.
Procedimiento
Cree un playbook de Ansible que incluya el rol requerido.
El siguiente ejemplo muestra cómo utilizar los roles a través de la opción
roles:
para un determinadoplay
:--- - hosts: webservers roles: - rhel-system-roles.network - rhel-system-roles.timesync
Para más información sobre el uso de roles en los playbooks, consulte la documentación de Ansible.
Consulte los ejemplos de Ansible para ver ejemplos de playbooks.
NotaCada rol incluye un archivo README, que documenta cómo usar el rol y los valores de los parámetros soportados. También puede encontrar un ejemplo de libro de jugadas para un rol en particular en el directorio de documentación del rol. Este directorio de documentación se proporciona por defecto con el paquete
rhel-system-roles
, y se puede encontrar en la siguiente ubicación:/usr/share/doc/rhel-system-roles/SUBSYSTEM/
Sustituya SUBSYSTEM por el nombre del rol requerido, como
selinux
,kdump
,network
,timesync
, ostorage
.Verifique la sintaxis del libro de jugadas:
#
ansible-playbook --syntax-check name.of.the.playbook
El comando
ansible-playbook
ofrece una opción--syntax-check
que puede utilizar para verificar la sintaxis de un libro de jugadas.Ejecute el libro de jugadas en los hosts seleccionados ejecutando el comando
ansible-playbook
:#
ansible-playbook -i name.of.the.inventory name.of.the.playbook
Un inventario es una lista de sistemas con los que trabaja Ansible. Para más información sobre cómo crear un inventario y cómo trabajar con él, consulte la documentación de Ansible.
Si no tiene un inventario, puede crearlo en el momento de ejecutar
ansible-playbook
:Si sólo tiene un host de destino contra el que desea ejecutar el libro de jugadas, utilice:
# ansible-playbook -i host1, name.of.the.playbook
Si tiene varios hosts de destino contra los que desea ejecutar el libro de jugadas, utilice:
# ansible-playbook -i host1,host2,....,hostn name.of.the.playbook
Recursos adicionales
-
Para obtener información más detallada sobre el uso del comando
ansible-playbook
, consulte la página de manualansible-playbook
.