Installation d'Ansible et vérification de l'interpréteur Python
Dans cette première étape, nous allons installer Ansible et examiner l'interpréteur Python par défaut qu'il utilise. Cela nous aidera à comprendre la configuration de base avant d'apporter des modifications.
Installation d'Ansible
Commençons par installer Ansible sur le système :
sudo apt update
sudo apt install -y ansible
Ceci installe la dernière version d'Ansible disponible dans les dépôts Ubuntu. Une fois l'installation terminée, nous pouvons vérifier qu'Ansible a été installé correctement en vérifiant sa version :
ansible --version
Vous devriez voir une sortie similaire à celle-ci :
ansible [core 2.12.0]
config file = /etc/ansible/ansible.cfg
configured module search path = ['/home/labex/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
ansible python module location = /usr/lib/python3/dist-packages/ansible
ansible collection location = /home/labex/.ansible/collections:/usr/share/ansible/collections
executable location = /usr/bin/ansible
python version = 3.10.x (default, Ubuntu 22.04) [GCC 11.2.0]
jinja version = 3.0.3
libyaml = True
Notez que la sortie inclut la version de Python utilisée. Il s'agit d'une information importante car elle nous indique quel interpréteur Python Ansible est actuellement configuré pour utiliser.
Création d'un fichier d'inventaire simple
Pour qu'Ansible fonctionne, nous avons besoin d'un fichier d'inventaire qui liste les hôtes que nous voulons gérer. Créons un fichier d'inventaire simple :
- Dans le WebIDE, créez un nouveau fichier en cliquant sur l'icône "New File" dans le panneau Explorer.
- Nommez le fichier
inventory.ini
- Ajoutez le contenu suivant au fichier :
[local]
localhost ansible_connection=local
Ce fichier d'inventaire définit un groupe appelé local
avec un seul hôte - localhost
- et spécifie que nous voulons nous y connecter directement plutôt que via SSH.
Vérification de l'interpréteur Python sur la cible
Vérifions maintenant quel interpréteur Python Ansible utilisera sur notre hôte cible :
ansible -i inventory.ini local -m setup -a "filter=ansible_python*"
Cette commande exécute le module de configuration Ansible qui collecte des informations sur l'hôte, en filtrant les informations relatives à Python. Vous devriez voir une sortie contenant des détails sur l'interpréteur Python utilisé :
localhost | SUCCESS => {
"ansible_facts": {
"ansible_python": {
"executable": "/usr/bin/python3",
"has_sslcontext": true,
"type": "cpython",
"version": {
"major": 3,
"micro": 10,
"minor": 10,
"releaselevel": "final",
"serial": 0
},
"version_info": [
3,
10,
10,
"final",
0
]
},
"ansible_python_version": "3.10.10"
},
"changed": false
}
Cela confirme qu'Ansible utilise Python 3 sur l'hôte cible. Par défaut, Ansible essaie d'utiliser le meilleur interpréteur Python disponible sur le système cible.