Atelier - Les templates

Lisez ceci dans d’autres langues:
uk English, japan日本語, brazil Portugues do Brasil, france Française,Español Español.

Table des matières

Objectif

Cet exercice couvre les templates. Ansible utilise les templates Jinja2 pour modifier les fichiers avant qu’ils ne soient distribués aux hôtes gérés. Jinja2 est l’un des moteurs de modèles les plus utilisés pour Python (http://jinja.pocoo.org/).

Guide

Étape 1 - Utilisation des templates

Lorsqu’un template de fichier a été créé, il peut être déployé sur les hôtes gérés à l’aide du module template, qui prend en charge le transfert d’un fichier local du nœud de contrôle vers les hôtes gérés.

Comme exemple d’utilisation d’un template, vous allez modifier le fichier motd pour qu’il contienne des données spécifiques à l’hôte.

Créez d’abord le répertoire templates pour contenir les ressources de template dans ~/ansible-files/:

[student<X>@ansible ansible-files]$ mkdir templates

Ensuite, dans le répertoire ~/ansible-files/templates/ créez le template motd-facts.j2:

Welcome to {{ ansible_hostname }}.
{{ ansible_distribution }} {{ ansible_distribution_version}}
deployed on {{ ansible_architecture }} architecture.

Le template contient le texte de base qui sera ensuite recopié. Il contient également des variables qui seront remplacées individuellement sur les machines cibles.

Ensuite, nous avons besoin d’un playbook pour utiliser ce modèle. Dans le répertoire ~/ansible-files/ créez le Playbook motd-facts.yml:

---
- name: Fill motd file with host data
  hosts: node1
  become: true
  tasks:
    - template:
        src: motd-facts.j2
        dest: /etc/motd
        owner: root
        group: root
        mode: 0644

Vous l’avez déjà fait plusieurs fois:

Vous devriez voir comment Ansible remplace les variables par les faits qu’il a découverts dans le système.

Étape 2 - Défi: Les templates

Ajoutez une ligne au template pour afficher le noyau utilisé du nœud géré.

Astuce

Faites un grep -i pour le noyau

Avertissement

Solution ci-dessous !


Navigation
Exercise précédent - Exercise suivant

Cliquez ici pour revenir à l’atelier Ansible pour Red Hat Enterprise Linux