saltstack : remonter le master

Mon process Saltstack master fonctionne dans un container Docker.
Quand j’ai commencé à jouer utiliser Saltstack, je ne maîtrisais pas Docker (non plus, NDLR).
J’avais donc mon répertoire « file_roots: » (par défaut /srv/salt) dans mon container.

Et puis un jour j’ai voulu construire ma propre image Docker à partir d’un Dockerfile (docker build) pour Saltstack.

J’ai donc fait une copie dans ma HOME du répertoire « srv/salt » à partir du système AUFS.

mkdir -p srv/salt
sudo cp -a /var/lib/docker/aufs/mnt/ce45266348553e0e240e86dbb2cdbd27c50965f2f2d9707ec7a37a766e11cdbe/srv/salt/* srv/salt/
sudo chown -R hugues:hugues srv/salt

Puis j’ai buildé mon image, et je l’ai lancé.

docker run -i -t -p 4505:4505 -p 4506:4506 -v /home/hugues/srv:/srv hlepesant/saltstack:latest /bin/bash

Puis je rentre dedans avec docker-enter

docker ps
CONTAINER ID        IMAGE                   [...]
74601a54cf89        hugues/saltstack:latest [...]
docker-enter 74601a54cf89
root@74601a54cf89:/# 

Là les minions sont tous revenus voir papa.

root@74601a54cf89:/# salt-key -L
Accepted Keys:
Unaccepted Keys:
minion-01
minion-02
minion-03
Rejected Keys:
root@74601a54cf89:/# 

Le problème c’est que les commandes salt échouent lamentablement.

Pour débugger : https://salt.readthedocs.org/en/v2014.1.0rc1/topics/troubleshooting/minion.html

A grand coup de « # salt-call -l debug state.highstate » exécuté à partir d’un des minions, l’erreur devient plus flagrante.
La clef publique échangée entre le minion et le master n’est plus la même.

Pour y remédier :

1. Sur le master :

salt-key -d <minion_id>

2. Sur le minion

sudo rm /etc/salt/pki/minion/minion_master.pub
sudo /etc/init.d/salt-minion restart

3. Retour sur le master

salt-key -a <minion_id>

Et voilà.

Ce contenu a été publié dans Mes docs, saltstack. Vous pouvez le mettre en favoris avec ce permalien.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.