Lisez ceci dans d'autres langues:
English, 日本語, Portugues do Brasil, Française, Español.
- Objectif
- Guide
- Utilisation d'un rôle externe
- Création d un questionnaire
- Test du modèle
- Qu'en est-il de certaines pratiques?
Démontrez l'utilisation des questionnaires dans Ansible Tower. Les questionnaires définissent des variables supplémentaires pour le playbook, comme le fait de «Demander des variables supplémentaires», mais de manière conviviale par des questions et des réponses. Les questionnaires permettent également de valider les entrées des utilisateurs.
Vous avez installé Apache sur tous les hôtes du travail que vous venez d'exécuter. Nous allons maintenant approfondir ceci:
-
Utilisez un rôle approprié doté d'un modèle Jinja2 pour déployer un fichier
index.html
. -
Créez un Modèle avec un questionnaire pour personnaliser le contenu de
index.html
. -
Lancez le travail Modèle
De plus, le rôle s'assurera également que la configuration d'Apache est correctement configurée - au cas où elle se serait brisé pendant les autres exercices.
Astuce
La fonction de questionnaire ne fournit qu'une simple requête de données - elle ne prend pas en charge les principes à quatre yeux, les requêtes basées sur des données dynamiques ou des menus imbriqués.
Le Playbook et le rôle sont déjà disponible dans le référentiel Github https://github.com/ansible/workshop-examples dans le répertoire rhel/apache
.
Rendez-vous sur l'interface utilisateur de Github et jetez un œil au contenu: le playbook apache_role_install.yml
fait simplement référence au rôle. Le rôle peut être trouvé dans le sous-répertoire roles/role_apache
.
- À l'intérieur du rôle, notez les deux variables dans le fichier de modèle
templates/index.html.j2
marqué par{{…}}
. - Consultez également les tâches dans
tasks/main.yml
qui déploient le fichier à partir du modèle.
Que fait ce Playbook? Il crée un fichier (dest) sur les hôtes gérés à partir du modèle (src).
Le rôle déploie également une configuration statique pour Apache. Il s'agit de s'assurer que toutes les modifications effectuées dans les chapitres précédents sont écrasées et que vos exemples fonctionnent correctement.
Étant donné que le Playbook et le rôle se trouvent dans le même référentiel Github que apache_install.yml
, vous n'avez pas à configurer un nouveau projet pour cet exercice.
Vous créez maintenant un nouveau modèle qui inclut un questionnaire.
-
Allez dans Modèles, cliquez sur le bouton! Plus et choisissez Modèle de tâche
-
NOM: Créez index.html
-
Configurez le modèle pour:
-
Utilisez le projet «Exemples d'atelier Ansible»
-
Utilisez le playbook
apache_role_install.yml
-
Pour fonctionner sur
node1
-
Pour fonctionner en mode privilégié
-
Essayez par vous-même, la solution est ci-dessous.
Avertissement
Solution ci-dessous !
Parametre | Valeur |
---|---|
NOM | Create index.html |
TYPE DE TACHE | Run |
INVENTAIRE | Workshop Inventory |
PROJET | Workshop Project |
PLAYBOOK | rhel/apache/apache_role_install.yml |
INFORMATION D IDENTIFICATION | Workshop Credentials |
OPTIONS | Activé l'élévation des privilèges |
- Cliquez sur ENREGISTRER
Avertissement
** Ne lancez pas encore le modèle!**
-
Dans le modèle, cliquez sur le bouton AJOUTER UN QUESTIONNAIRE
-
Sous AJOUTER UNE INVITE AU QUESTIONNAIRE remplissez:
Parametre | Valeur |
---|---|
INVITE | First Line |
NOM DE VARIABLE DE REPONSE | first_line |
TYPE DE REPONSE | Text |
-
Cliquez sur +AJOUTER
-
De la même manière, ajoutez une deuxième Invite de questionnaire
Parametre | Valeur |
---|---|
INVITE | Second Line |
NOM DE VARIABLE DE REPONSE | second_line |
TYPE DE REPONSE | Text |
-
Cliquez sur + AJOUTER
-
Cliquez sur ENREGISTRER pour l'enquête
-
Cliquez sur ENREGISTRER pour le modèle
Lancez maintenant Créer un modèle de travail index.html.
Avant le lancement, le questionnaire demandera les valeurs des First Line et Second Line. Remplissez les champs et cliquez sur Suivant. La fenêtre suivante affiche les valeurs, si tout va bien, exécutez la tache en cliquant sur Lancer.
Astuce
Notez comment les deux variables sont affichées à gauche de la vue Détails en tant que Variables supplémentaires.
Une fois le travail terminé, consultez la page d'accueil d'Apache. Dans la console SSH sur l'hôte de contrôle, exécutez curl
par rapport à l'adresse IP de votre 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>
Notez comment les deux variables ont été utilisées par le playbook pour créer le contenu du fichier index.html
.
Exercice précédent - Exercice suivant
Cliquez ici pour revenir à l'atelier Ansible pour Red Hat Enterprise Linux