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/22 07:18] – [Gestion du motd] madko | 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 86: | Ligne 89: | ||
===== Gestion du motd ===== | ===== Gestion du motd ===== | ||
+ | |||
Exemple de gestion du fichier /etc/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 / | ||
- | | + | 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 |
- | file.managed: | + | |
- | - source: | + | |
- | - 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 / | ||
- | Contenu du fichier source / | ||
- | ================================ | + | < |
- | | + | /etc/motd: |
- | | + | |
- | | + | - source: salt:// |
+ | - mode: 644 | ||
+ | - user: root | ||
+ | - group: root | ||
+ | </ | ||
- | Pour associer notre module motd à des clients, il faut passer par le fichier / | ||
- | Contenu du fichier / | ||
- | base: | + | 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 / |
- | ' | + | |
- | - motd | + | |
+ | |||
+ | < | ||
+ | ================================ | ||
+ | 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 ===== | ===== Gestion du motd avec pillar ===== | ||
+ | |||
Exemple de gestion du fichier /etc/motd en permettant une variabilisation par pillar. | Exemple de gestion du fichier /etc/motd en permettant une variabilisation par pillar. | ||
+ | |||
Contenu du fichier / | Contenu du fichier / | ||
- | | + | |
- | file.managed: | + | < |
- | - source: {{ pillar[" | + | / |
- | - template: jinja | + | file.managed: |
- | - mode: 644 | + | - source: {{ pillar[" |
- | - user: root | + | - template: jinja |
- | - group: root | + | - mode: 644 |
+ | - user: root | ||
+ | - group: root | ||
+ | </ | ||
Deux points importants: | 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 / | ||
- | | + | * La source passe par la couche pillar, pour permettre plus de souplesse |
- | motd: salt:// | + | * Le template sera de type jinja (moteur de template pour python) |
- | {% else %} | + | |
- | motd: salt:// | + | |
- | {% endif %} | + | 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). | 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.pls permet d' | ||
- | | + | Le fichier top.sls permet d' |
- | ' | + | |
- | - data | + | |
- | - motd | + | < |
+ | base: | ||
+ | ' | ||
+ | - data | ||
+ | - motd | ||
+ | </ | ||
- | <WRAP center round important 60%> | ||
- | Le rôle de top.pls reste à vérifier... | ||
- | </ | ||
Contenu du fichier template / | Contenu du fichier template / | ||
- | | + | |
- | ATTENTION | + | < |
- | Machine Virtuelle gérée par Salt | + | ================================ |
- | Info: {{ pillar[" | + | ATTENTION |
- | OS: {{ grains[" | + | 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). | 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: | 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/ | 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 [[PuppetVsSalt]]. | + | < |
+ | [root@salt-master] # salt ' | ||
+ | </ | ||
+ | |||
+ | |||
+ | Comparaison [[: |