C'est un gestionnaire de configuration, à l'instar de :
Salt possède un certain nombre d'avantages par rapport à ses concurrents :
Pas d'interrogation
aux minions pour leur indiquer quoi faire.
pour sérialiser les messages
Il utilise d'abord des
Le master doit connaître les clés publiques des minions
Puis, il utilise
(symétrique, plus rapide)
Comment accepter les clés des minions ?
# salt-key -L
Accepted Keys:
Unaccepted Keys:
minion_1
Rejected Keys:
# salt-key -a minion_1
The following keys are going to be accepted:
Unaccepted Keys:
minion_1
Proceed? [n/Y] y
Key for minion minion_1 accepted.
# salt 'minion_1' test.ping
minion_1:
True
Elles recoivent leurs intructions via
Possibilité de configuration
(avec salt-call)
Ils fournissent les
Exécutez les modules en CLI !
# salt '*' cmd.run 'ls /'
…
# salt '*' state.highstate
…
C'est ce qu'on
Les states ne sont que des
habituellement en YAML
Ils correspondent généralement à des fonctions des
Comprendre les states
/etc/munin/munin.conf:
file:
- managed
- source: salt://munin/files/munin.conf
- template: jinja
- user: root
- require: pkg.munin
munin-node:
pkg.installed:
- name: munin-node
file:
- managed
- name: /etc/munin/munin-node.conf
- source: salt://munin/files/munin.conf
- template: jinja
- user: root
- require:
- pkg: munin
service:
- running
- enable: True
- watch:
- file: /etc/munin/munin-node.conf
Il y a un paquet de directives !
Où
peuplée au début
Utilisation des grains
{% if grains["os"] == 'RedHat' %}
httpd:
pkg:
- installed
{% elif grains["os"] == 'Debian' %}
apache2:
pkg:
- installed
{% endif %}
Liste des grains
$ salt '*' grains.ls
…
On peut les utiliser n'importe où
dev:
'os:Debian':
- match: grain
- python_server
Pensez aux pillar comme à des
Ce sont des
tout comme les states
Créer un pillar pour salt…
{% if grains['os'] == 'RedHat' %}
apache: httpd
git: git
{% elif grains['os'] == 'Debian' %}
apache: apache2
git: git-core
{% endif %}
et son utilisation !
apache:
pkg:
- installed
- name: {{ pillar['apache'] }}
Possibilité de développer ses propres
Pareil pour les
http://github.com/ldidry
http://twitter.com/framasky
http://slides.fiat-tux.fr
Honteusement pompé sur la présentation de Jose Ignacio Galarza
Pour imprimer