mirror of
https://gitlab.com/free_zed/free_zed.gitlab.io.git
synced 2024-06-01 22:02:28 +00:00
Merge branch 'ansible'
This commit is contained in:
commit
c1c970130c
49
content/ansible_to_update_debian_on_lan.md
Normal file
49
content/ansible_to_update_debian_on_lan.md
Normal file
|
@ -0,0 +1,49 @@
|
|||
Title: Mise à jour d'un réseau local Debian avec Ansible
|
||||
Date: 2020-04-19 00:43
|
||||
Category: Bloc-notes
|
||||
Status: published
|
||||
Summary: Mise à jour d'un parc Debian hétérogène (packages &_config), avec packages hors dépôt.
|
||||
Tags: ansible, admin, debian, mate, devops, shell, git, dry
|
||||
|
||||
### Contexte
|
||||
|
||||
Mise à jour d'un parc Debian hétérogène, pour l'exercice, le réseau famillial fera l'affaire :
|
||||
|
||||
- 5 machines physiques : 1 serveur + 4 postes (Stretch/Buster/Bullseye)
|
||||
- 2 machines virtuelles, (Jessie/Buster)
|
||||
|
||||
### Besoin
|
||||
|
||||
- machines à jour
|
||||
- instalations homogènes : packages et configuration
|
||||
- gérer des packages `*.deb` disponible hors dépôt `apt`
|
||||
|
||||
### _Talk is cheap. Show me the code._
|
||||
|
||||
- [Installer Ansible][install]
|
||||
- récupérer [le _playbook_][repo] : `git clone https://gitlab.com/free_zed/myasb.git`
|
||||
- se mettre dans la bonne branche : `cd myasb; git checkout lan`
|
||||
- adapter [l'inventaire][host] avec les adresses de vos machines : `$EDITOR hosts`
|
||||
- jouer le _playbook_ : `ansible-playbook -i hosts site.yml`
|
||||
- …et volà!
|
||||
|
||||
|
||||
### Remarques
|
||||
|
||||
`git` n'utilise pas la configuration globale par défaut (`/etc/gitconfig`), je m'en suis servi pour déployer mes alias _partout_ sans déployer la config `git` de ma machine de dev qui contient des éléments que je ne souhaite pas diffuser (tokens, mails, usernames, tools, etc).
|
||||
|
||||
### Idées
|
||||
|
||||
- centraliser le build & déploiement d'un projet Java sur Github ([Mindustry][mindustry]).
|
||||
- comparer le numéro de version Debian plutôt que le nom (`str()` to `int()` des _facts Ansible_)
|
||||
- faire des taches/roles/whatever qui ne se font qu'une fois avant (ou après) de jouer le playbook
|
||||
- récupérer la version stable Debian
|
||||
- récupérer numéro de dernière version d'un `*.deb` dispo hors dépot
|
||||
- envoyer _un seul_ mail de récap
|
||||
- utiliser les variables d'environnement (ou autre) pour les données privées
|
||||
|
||||
|
||||
[repo]: https://gitlab.com/free_zed/myasb/-/tree/lan
|
||||
[mindustry]: https://github.com/Anuken/Mindustry/
|
||||
[install]: https://docs.ansible.com/ansible/latest/installation_guide/intro_installation.html
|
||||
[host]: https://gitlab.com/free_zed/myasb/-/blob/lan/hosts
|
Loading…
Reference in New Issue
Block a user