Go to file
Alexandre Iooss d6fc634641
Document setup module
2019-04-17 06:40:09 +02:00
group_vars/all jout des variables crans et divers 2019-04-14 12:34:47 +02:00
roles jout des variables crans et divers 2019-04-14 12:34:47 +02:00
.gitignore Initial ansible 2019-04-13 11:41:57 +02:00
.gitlab-ci.yml Initial ansible 2019-04-13 11:41:57 +02:00
.yamllint.yml Initial ansible 2019-04-13 11:41:57 +02:00
README.md Document setup module 2019-04-17 06:40:09 +02:00
ansible.cfg Document setup module 2019-04-17 06:40:09 +02:00
hosts Create the task and add the host for prometheus 2019-04-13 12:03:03 +02:00
ldap.yml Crans adpatation 2019-04-14 11:05:02 +02:00
monitoring.yml For the CI 2019-04-13 12:09:38 +02:00

README.md

Ansible

Ensemble des recettes de déploiement Ansible pour les serveurs du Crans.

Ces politiques de déployement nécessite Ansible 2.7 ou plus récent. Le paquet dans Debian Buster est suffisamment à jour, sinon vous pouvez l'obtenir de la façon suivante :

pip3 install --user ansible

Exécution d'un playbook

Pour appliquer le playbook base.yml :

ansible-playbook --ask-vault-pass base.yml

Il est souhaitable de faire un test avant avec --check si on a des doutes !

FAQ

Mettre sa clé SSH sur une machine

ssh-copy-id -i ~/.ssh/id_rsa_crans.pub zamok.crans.org

Ignorer la fingerprint ECDSA du serveur (dangereux !)

Il faut changer la variable d'environnement suivante : ANSIBLE_HOST_KEY_CHECKING=0.

Configurer la connexion au bastion

Envoyer son agent SSH peut être dangereux (source).

On va utiliser plutôt ProxyJump. Dans la configuration SSH :

# Use a key to log on all Crans servers
# and use a bastion
Host 10.231.136.* *.adm.crans.org
    IdentityFile ~/.ssh/id_rsa_crans
    ProxyJump passerelle.crans.org

Il faut savoir que depuis Ansible 2.5, des connexions persistantes sont créées vers les serveurs puis détruites à la fin de l'exécution.

Lister tout ce que sait Ansible sur un hôte

Lors du lancement d'Ansible, il collecte un ensemble de faits sur les serveurs qui peuvent ensuite être utilisés dans des variables. Pour lister tous les faits qu'Ansible collecte nativement d'un serveur on peut exécuter le module setup manuellement.

ansible -i hosts zamok.crans.org -m setup --ask-vault-pass