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
# yum install rhel-system-roles
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 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
# subscription-manager refresh # subscription-manager repos --enable ansible-2-for-rhel-8-x86_64-rpms
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Instale el motor Ansible:
yum install ansible
# yum install ansible
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
- 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
--- - hosts: webservers roles: - rhel-system-roles.network - rhel-system-roles.timesync
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 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/
/usr/share/doc/rhel-system-roles/SUBSYSTEM/
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 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
# ansible-playbook --syntax-check name.of.the.playbookansible-playbook --syntax-check name.of.the.playbook
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 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
# ansible-playbook -i name.of.the.inventory name.of.the.playbookansible-playbook -i name.of.the.inventory name.of.the.playbookansible-playbook -i name.of.the.inventory name.of.the.playbookansible-playbook -i name.of.the.inventory name.of.the.playbook
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 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
# ansible-playbook -i host1, name.of.the.playbook
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 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
# ansible-playbook -i host1,host2,....,hostn name.of.the.playbook
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
Recursos adicionales
-
Para obtener información más detallada sobre el uso del comando
ansible-playbook
, consulte la página de manualansible-playbook
.