Lee esto en otros idiomas:
English, 日本語, Portugues do Brasil, Française, Español.
- Objetivos
- Guía
- El role de configuración de Apache
- Crear una plantilla con una encuesta
- Lanzar la plantilla
- ¿Qué hay de un poco de práctica?
Demostrar el uso de Ansible Tower función de encuesta. Las encuestas establecen variables adicionales para el playbook similares a "Solicitar variables adicionales", pero de una manera fácil de usar de preguntas y respuestas. Las encuestas también permiten la validación de la entrada del usuario.
Ha instalado Apache en todos los hosts en el trabajo que acaba de ejecutar. Ahora vamos a extender esto:
-
Utilice un role adecuado que tenga una plantilla Jinja2 para implementar un archivo
index.html
. -
Crear un trabajo Template con una encuesta para recopilar los valores de la plantilla
index.html
. -
Iniciar el trabajo Template
Además, el role también se asegurará de que la configuración de Apache esté configurada correctamente, en caso de que se mezcle durante los otros ejercicios.
Consejo
La función de encuesta solo proporciona una consulta simple de datos: no admite principios de cuatro ojos, consultas basadas en datos dinámicos o menús anidados.
El Playbook y el role con la plantilla Jinja ya existen en el repositorio de Github https://github.com/ansible/workshop-examples en el directorio rhel/apache
**`.
Dirígete a la interfaz de usuario de Github y echa un vistazo al contenido: el playbook apache_role_install.yml
simplemente hace referencia al role. El role se puede encontrar en el subdirectorio roles/role_apache
.
- Dentro del role, tenga en cuenta las dos variables en el archivo de plantilla
templates/index.html.j2
marcado con{{…}}
. - Además, echa un vistazo a las tareas en
tasks/main.yml
que despliegan el archivo desde la plantilla.
¿Qué hace este Playbook? Crea un archivo (dest) en los hosts administrados a partir de la plantilla (src).
El role también implementa una configuración estática para Apache. Esto es para asegurarse de que todos los cambios realizados en los capítulos anteriores se sobrescriben y sus ejemplos funcionan correctamente.
Dado que el Playbook y el role se encuentran en el mismo repositorio de Github que el Playbook apache_install.yml
, no requiere configurar un nuevo proyecto para este ejercicio.
Ahora creará una nueva plantilla que incluye una encuesta.
-
NAME: Create index.html
-
Configurar la plantilla para:
-
Utilice el Project
Workshop Project
-
Utilice el Playbook
apache_role_install.yml
-
Para ejecutar en
node1
-
Para ejecutar en modo privilegiado
-
Inténtalo por ti mismo, la solución está a continuación.
Advertencia
Solución a continuación!
Parámetro | Valor |
---|---|
NAME | Create index.html |
JOB TYPE | Run |
INVENTORY | Workshop Inventory |
Project | Workshop Project |
PLAYBOOK | rhel/apache/apache_role_install.yml |
CREDENTIAL | Workshop Credentials |
OPTIONS | Enable Privilege Escalation |
- Clic en SAVE
Advertencia
¡No ejecute la plantilla todavía!
-
En la plantilla, haga clic en el botón ADD SURVEY
-
En ADD SURVEY PROMPT rellene:
Parámetro | Valor |
---|---|
PROMPT | First Line |
ANSWER VARIABLE NAME | first_line |
ANSWER TYPE | Text |
-
Clic en +ADD
-
De la misma manera añadir un segundo Survey Prompt
Parámetro | Valor |
---|---|
PROMPT | Second Line |
ANSWER VARIABLE NAME | second_line |
ANSWER TYPE | Text |
-
Clic en +ADD
-
Clic en SAVE para la encuesta
-
Clic en SAVE para la plantilla
Ahora inicie la plantilla de trabajo Create index.html.
Antes del lanzamiento real, la encuesta le preguntará por First Line y Second Line. Rellene algún texto y haga clic en Next. La siguiente ventana muestra los valores, si todo está bien, ejecute el trabajo haciendo clic en Launch
Consejo
Observe cómo las dos líneas del suevey se muestran a la izquierda de la vista Job como Extra Variables.
Una vez completado el trabajo, compruebe la página principal de Apache. En la consola SSH del host de control, ejecute curl
en la dirección IP de su node1
:
$ curl http://22.33.44.55
<body>
<h1>Apache is running fine</h1>
<h1>This is survey field "First Line": line one</h1>
<h1>This is survey field "Second Line": line two</h1>
</body>
Observe cómo las dos variables fueron utilizadas por el playbook para crear el contenido del archivo index.html
.
Navegación
Ejercicio anterior - Próximo Ejercicio
Haga clic aquí para volver al Taller Ansible for Red Hat Enterprise Linux