Lisez ceci dans d'autres langues:
English, 日本語, Portugues do Brasil, Français, Español.
- Objectif
- Guide
- Le role de configuration Apache
- Créer un Projet
- Créer un Modèle avec un Questionnaire
- Lancer le Modèle
Démontrer l'utilisation de la fonctionnalité Questionnaire dans le Contrôleur Ansible Automation. Les Questionnaires ajoutent des Extra Variables aux playbooks à l'instar de la fonctionnalité de prompt, mais avec une expérience plus conviviale à l'aide questions-réponses. Les Questionnaires permettent également de valider les éléments entrés par les utilisateurs.
Vous avez installé Apache sur tous les hôtes du Job 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 Modèle de Job
De plus, le rôle s'assurera que la configuration d'Apache est correcte - au cas où elle se serait brisée 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{{…}}
. - Notez é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.
- Allez dans Ressources → Projets et cliquez sur le bouton Ajouter. Complétez le formulaire:
Paramètre | Valeur |
---|---|
Nom | Workshop Project |
Organisation | Default |
Environnement d'exécution | Default execution environment |
Type de Contrôle de la source | Git |
Renseignez l'URL dans la configuration du Projet:
Paramètre | Valeur |
---|---|
URL Contrôle de la source | https://github.com/ansible/workshop-examples.git |
Options | Selectionner Clean, Delete, Update Revision on Launch pour requêter un copie neuve du référentiel et pour le mettre à jour au lancement d'un Job. |
- Cliquer sur Enregistrer
Le nouveau Projet sera synchronisé automatiquement après la création. Vous pouvez aussi le faire manuellement : Synchronisez le Projet de nouveau auprès du référentiel Git, en allant sur la vue Projets et en cliquant sur l'icône de flèche circulaire Synchroniser sur la droite du Projet.
Après avoir démarré le Job de synchronisation, allez sur la vue Jobs : il y a maintenant un Job pour la mise à jour du Projet.
Maintenant, vous pouvez créer un Modèle qui utilise un Questionnaire.
-
Aller dans Ressources → Modèles et cliquer sur le bouton Ajouter puis choisissez Ajouter un Modèle de Job
-
Saisissez les informations suivantes:
Paramètre | Valeur |
---|---|
Nom | Créer index.html |
Type de Job | Exécuter |
Inventaire | Workshop Inventory |
Projet | Workshop Project |
Environnement d'Exécution | Default execution environment |
Playbook | rhel/apache/apache_role_install.yml |
Informations d'identification | Workshop Credential |
Limite | web |
Options | Elévation de Privilèges coché |
- Cliquer sur Enregistrer
Attention
Ne pas lancer le Job pour le moment!
-
Dans le Modèle, cliquer sur l'onglet Questionnaire puis cliquer sur Ajouter.
-
Saisissez les informations suivantes:
Paramètre | Valeur |
---|---|
Question | First Line |
Nom de Variable de réponse | first_line |
Type de réponse | Texte |
- Cliquer sur Enregistrer
- Cliquer sur le bouton Ajouter
De la même manière, ajouter une deuxième Question
Paramètre | Valeur |
---|---|
Question | Second Line |
Nom de la Variable de réponse | second_line |
Type de réponse | Texte |
- Cliquer sur Enregistrer
- Cliquer sur le bouton Questionnaire activé pour activer les questions
Maintenant, lancez le Modèle de Job Créer index.html en sélectionnant l'onglet Détails et en cliquant sur le bouton Lancer.
Avant le lancement, le questionnaire va demander à renseigner First Line et Second Line. Renseignez du texte dans les champs proposés et cliquer sur Suivant. La fenêtre Aperçu montre les valeurs. Si tout est conforme, lancez le Job en cliquant sur Lancer.
Quand le Job est terminé, vérifiez la page d'accueil Apache. Dans la console SSH sur l'hôte de contrôle, exécutez curl
sur node1
:
$ curl http://node1
<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 les deux variables utilisées par le playbook pour créer le contenu du fichier index.html
.
Navigation
{% if page.url contains 'ansible_rhel_90' %}
Previous Exercise - Next Exercise
{% else %}
Previous Exercise - Next Exercise
{% endif %}
Click here to return to the Ansible for Red Hat Enterprise Linux Workshop