Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
saltstack [2013/08/20 20:25] – modification externe 127.0.0.1 | saltstack [Date inconnue] (Version actuelle) – modification externe (Date inconnue) 127.0.0.1 | ||
---|---|---|---|
Ligne 53: | Ligne 53: | ||
| | ||
===== Configuration de l' | ===== Configuration de l' | ||
+ | |||
L' | L' | ||
- | | + | |
- | + | < | |
- | <WRAP center round important 60%> | + | master: salt-master.in.virt.linuxed.net |
- | L' | + | </ |
- | </ | + | |
+ | |||
+ | <WRAP center round important 60%> L' | ||
===== Activation du service ===== | ===== Activation du service ===== | ||
Ligne 71: | Ligne 74: | ||
[root@salt-minion01] # chkconfig salt-minion on | [root@salt-minion01] # chkconfig salt-minion on | ||
+ | | ||
+ | ====== Vérification ====== | ||
+ | |||
+ | Pour vérifier que les noeuds répondent: | ||
+ | |||
+ | [root@salt-master] # salt ' | ||
+ | |||
+ | Pour provoquer les mises à jour côté client: | ||
+ | |||
+ | [root@salt-master] # salt ' | ||
+ | |||
+ | Le déclenchement de l' | ||
+ | ====== Premiers tests ====== | ||
+ | |||
+ | ===== Gestion du motd ===== | ||
+ | |||
+ | |||
+ | Exemple de gestion du fichier /etc/motd. | ||
+ | |||
+ | |||
+ | Un fichier, appelé SaltState (ou sls) décrit le fait que nous voulons gérer ce fichier, ces permissions et son contenu (équivalent d’une classe puppet). Contenu du fichier / | ||
+ | |||
+ | |||
+ | < | ||
+ | /etc/motd: | ||
+ | file.managed: | ||
+ | - source: salt:// | ||
+ | - mode: 644 | ||
+ | - user: root | ||
+ | - group: root | ||
+ | </ | ||
+ | |||
+ | |||
+ | Ce qui indique qu’on veut gèrer le fichier /etc/motd, et que son contenu (source) se trouve dans salt, dans le fichier motd/motd, soit en réalité sur le serveur / | ||
+ | |||
+ | |||
+ | < | ||
+ | ================================ | ||
+ | ATTENTION | ||
+ | Machine gérée par Salt | ||
+ | ================================ | ||
+ | </ | ||
+ | |||
+ | |||
+ | Pour associer notre module motd à des clients, il faut passer par le fichier / | ||
+ | |||
+ | |||
+ | < | ||
+ | base: | ||
+ | ' | ||
+ | - motd | ||
+ | </ | ||
+ | |||
+ | |||
+ | Il est aussi possible de déployer, pour tester par exemple, un module sans l' | ||
+ | |||
+ | |||
+ | < | ||
+ | salt ' | ||
+ | </ | ||
+ | |||
+ | ===== Gestion du motd avec pillar ===== | ||
+ | |||
+ | |||
+ | Exemple de gestion du fichier /etc/motd en permettant une variabilisation par pillar. | ||
+ | |||
+ | |||
+ | Contenu du fichier / | ||
+ | |||
+ | |||
+ | < | ||
+ | /etc/motd: | ||
+ | file.managed: | ||
+ | - source: {{ pillar[" | ||
+ | - template: jinja | ||
+ | - mode: 644 | ||
+ | - user: root | ||
+ | - group: root | ||
+ | </ | ||
+ | |||
+ | |||
+ | Deux points importants: | ||
+ | |||
+ | |||
+ | * La source passe par la couche pillar, pour permettre plus de souplesse | ||
+ | * Le template sera de type jinja (moteur de template pour python) | ||
+ | |||
+ | |||
+ | Contenu du fichier / | ||
+ | |||
+ | |||
+ | < | ||
+ | {% if grains[" | ||
+ | motd: salt:// | ||
+ | {% else %} | ||
+ | motd: salt:// | ||
+ | {% endif %} | ||
+ | </ | ||
+ | |||
+ | |||
+ | Donc sans modifier notre fichier sls, nous pouvons faire varier le template à utiliser pour le fichier motd (ici en fonction du hostname). | ||
+ | |||
+ | |||
+ | Le fichier top.sls permet d' | ||
+ | |||
+ | |||
+ | < | ||
+ | base: | ||
+ | ' | ||
+ | - data | ||
+ | - motd | ||
+ | </ | ||
+ | |||
+ | |||
+ | Contenu du fichier template / | ||
+ | |||
+ | |||
+ | < | ||
+ | ================================ | ||
+ | ATTENTION | ||
+ | Machine Virtuelle gérée par Salt | ||
+ | Info: {{ pillar[" | ||
+ | OS: {{ grains[" | ||
+ | ================================ | ||
+ | </ | ||
+ | |||
+ | |||
+ | La couche pillar permet de récupérer sur le serveur salt-master des info pour le client. La couche grains, récupère des info locale à la machine (équivalent facter). | ||
+ | |||
+ | |||
+ | Pour vérifier les info données via pillar à un client: | ||
+ | |||
+ | |||
+ | < | ||
+ | [root@salt-master] # salt ' | ||
+ | </ | ||
+ | |||
+ | |||
+ | Pour vérifier les info locales (grains) d'un client, ce qui est possible directement sur le serveur salt-master (équivalent storeconfig/ | ||
+ | |||
+ | |||
+ | < | ||
+ | [root@salt-master] # salt ' | ||
+ | </ | ||
+ | |||
+ | |||
+ | Comparaison [[: | ||
+ |