Aplicar roles y pasar variables a roles
Incluya un role y parametrícelo
Aplicar roles y pasar variables a roles es una lección gratuita de Ansible Academy en CoddyKit. Esta es la lección 4 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Ansible Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Ansible Academy incluye 4 lecciones en total.
Aplique un role con roles:
La forma más sencilla de usar un role es mediante la clave roles de un play. Enumere los nombres de los roles y Ansible ejecutará cada uno en orden.
- hosts: web
roles:
- nginx
- firewallLos roles se ejecutan antes que las tareas
Los roles enumerados bajo roles se ejecutan antes que cualquier tarea del mismo play. Tenga presente ese orden cuando combine roles y tareas.
Pase variables en línea
Para personalizar un role, pase las variables justo donde lo aplica. Ansible las proporciona al role y sobrescribe sus valores predeterminados.
roles:
- role: nginx
nginx_port: 8080La clave role: lo deja claro
Cuando pase variables, use la clave role para indicar el nombre del role y añada las variables como claves del mismo nivel debajo de ella.
- role: postgres
db_name: shop
db_user: adminLos valores predeterminados son el respaldo
Si no pasa ninguna variable, el role usa el valor definido en defaults/main.yml. Por eso todos los roles funcionan desde el primer momento.
Sobrescriba el mismo role dos veces
Puede aplicar un role varias veces con variables diferentes, por ejemplo, para configurar dos instancias de base de datos a partir de un único role.
Las variables de grupo también llegan a los roles
Las variables de group_vars y host_vars pasan automáticamente a los roles aplicados a esos hosts, sin necesidad de proporcionarlas en línea.
vars_files mantiene limpios los plays
Saque la configuración del role del play y colóquela en un archivo independiente con vars_files, para que el playbook siga siendo breve y fácil de leer.
vars_files:
- web_settings.ymlinclude_role se ejecuta durante el play
¿Necesita un role en mitad de las tareas? Use include_role como una tarea para aplicarlo dinámicamente justo en ese punto.
- name: Set up nginx
ansible.builtin.include_role:
name: nginxDocumente las variables que acepta
Un buen role enumera en su README las variables que espera. Unas entradas claras hacen que cualquiera pueda reutilizar el role de forma sencilla y segura.
Un role, muchos servidores
Aplique el mismo role parametrizado a muchos hosts y ajuste cada uno con variables diferentes. Eso es reutilización sin reescribir una sola tarea.
Comprobación rápida
Piense en cómo sobrescribir el valor predeterminado de un role al aplicarlo.
Resumen
Aplique roles con la clave roles, pase variables en línea para sobrescribir los valores predeterminados y reutilice un único role parametrizado en muchos hosts. 🚀
Preguntas frecuentes
¿La lección «Aplicar roles y pasar variables a roles» es gratis?
Sí — el texto completo de «Aplicar roles y pasar variables a roles» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Ansible Academy, actualiza a CoddyKit PRO. El curso de Ansible Academy incluye 4 lecciones en total.
¿Qué aprenderé en «Aplicar roles y pasar variables a roles»?
Incluya un role y parametrícelo Practicas Ansible Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.
¿Necesito experiencia previa para empezar Ansible Academy?
No se requiere experiencia previa. Ansible Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 4 de 4.
¿Cuánto tiempo toma la lección «Aplicar roles y pasar variables a roles»?
La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.
¿Puedo escribir y ejecutar código en esta lección de Ansible Academy?
Sí. Cada lección de Ansible Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.
Todas las lecciones de este curso
- Por qué usar roles: del monolito a los módulos
- Anatomía del directorio de un role
- Crear la estructura de un role con ansible-galaxy init
- Aplicar roles y pasar variables a roles