2023-09-19 13:54:07 +02:00
2023-09-19 13:54:07 +02:00

Commandes AdHoc

Ligne de commande

ansible -o -m ping all -u root -k -K
  1. identifier tous les éléments de cette ligne de commande
  2. expliciter toutes les options utilisées
  3. faire le lien entre option et directives de configuration (ansible.cfg)
  4. si on omet l'option "-u root", avec quelle identité se fera la connexion ?

Tâches d'administration système I

  1. Lister sur le pad les tâches d'administration système que nous réalisons au quotidien, et que nous souhaiterions automatiser
  2. Tenter, pour chaque tâche, d'identifier le(s) module(s) ansible que l'on pourra utiliser

Tâches d'administration système II

Télécharger des fichiers sur la cible avec get_url

Récupérer dans /tmp le fichier : https://starship.rs/install.sh

Exécuter des scripts à distance avec command

Exécuter le script précédemment récupéré, uniquement si le fichier /usr/local/bin/starship n'existe pas déjà

Déployer un fichier avec copy

S'assurer de la présence du fichier /etc/profile.d/zstarship.sh avec le contenu suivant:

eval "$(/usr/local/bin/starship init bash)"


Installer des packages avec git

S'assurer que les paquets vim et git soit installées sur les cibles.

Cloner des dépôts avec git

Cloner le dépôt https://infra.opendoor.fr/git/tom/vim_formation.git dans /opt/vim/

S'assurer de l'absence de fichier avec file

Supprimer le fichier /etc/vimrc existant

Gérer des liens symboliques, toujours avec file

Faire un lien symbolique /etc/vimrc vers /opt/vim/vimrc

Modifier des fichiers avec lineinfile

dans /etc/vimrc, assurez-vous que la ligne 62 (qui commence par set list listchars...) soit décommentée

Planifier l'exécution de la tâche "Exécuter des scripts à distance avec command" toutes les semaines le dimanche soir avec cron

Comment éviter que cette tâche soit programmée exactement à la même heure pour toutes les machines cibles ?

Rajouter des blocs de textes dans un fichier avec blockinfile

Rajouter dans ~/.ssh/config, sur la machine pilote les infos suivantes:

Host machinecible #cf variable inventory_hostname
  User: formation
  Port 22
Description
No description provided
Readme 52 KiB