2.2 KiB
Commandes AdHoc
Ligne de commande
ansible -o -m ping all -u root -k -K
- identifier tous les éléments de cette ligne de commande
- expliciter toutes les options utilisées
- faire le lien entre option et directives de configuration (ansible.cfg)
- si on omet l'option "-u root", avec quelle identité se fera la connexion ?
Tâches d'administration système I
- Lister sur le pad les tâches d'administration système que nous réalisons au quotidien, et que nous souhaiterions automatiser
- 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