Skip to content

Latest commit

 

History

History
204 lines (148 loc) · 6.31 KB

File metadata and controls

204 lines (148 loc) · 6.31 KB

Workshop - Encuestas

Lee esto en otros idiomas:
uk English, japan日本語, brazil Portugues do Brasil, france Française, Español Español.

Tabla de contenidos

Objetivos

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.

Guía

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 role de configuración de Apache

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.

Crear una plantilla con una encuesta

Ahora creará una nueva plantilla que incluye una encuesta.

Crear la Plantilla

  • Ir a Templates, haga clic en el plus y elija Job Template

  • 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!

Adicionar la encuesta

  • 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

Lanzar 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