Projet

Général

Profil

Saltstack » Historique » Version 8

Lohysia MOUETTE, 01/02/2017 11:55

1 1 Bruno Boiget
h1. Saltstack
2 1 Bruno Boiget
3 1 Bruno Boiget
h2. Personnalisation de recettes
4 1 Bruno Boiget
5 3 Bruno Boiget
h3. Inclusion
6 3 Bruno Boiget
7 3 Bruno Boiget
Pour utiliser une recette existante dans une recette:
8 3 Bruno Boiget
9 3 Bruno Boiget
<pre>
10 3 Bruno Boiget
include:
11 8 Lohysia MOUETTE
  - action.recette1
12 8 Lohysia MOUETTE
  - action.recette2
13 1 Bruno Boiget
</pre>
14 3 Bruno Boiget
15 8 Lohysia MOUETTE
16 5 Bruno Boiget
h3. Pré-requis
17 5 Bruno Boiget
18 5 Bruno Boiget
Pour forcer l'exécution d'une recette avant une autre :
19 5 Bruno Boiget
20 5 Bruno Boiget
<pre>
21 5 Bruno Boiget
include:
22 5 Bruno Boiget
  - recette
23 5 Bruno Boiget
24 5 Bruno Boiget
mkdir:
25 5 Bruno Boiget
  file.directory:
26 5 Bruno Boiget
    - name: /tmp/stuff/subdir
27 5 Bruno Boiget
    - user: eole
28 5 Bruno Boiget
    - group: adm
29 5 Bruno Boiget
    - file_mode: 744
30 5 Bruno Boiget
    - dir_mode: 755
31 5 Bruno Boiget
    - require:
32 5 Bruno Boiget
      - sls: recette
33 5 Bruno Boiget
</pre>
34 5 Bruno Boiget
35 5 Bruno Boiget
36 1 Bruno Boiget
h3. héritage
37 1 Bruno Boiget
38 2 Bruno Boiget
recette 'eole' (/srv/salt/eole.sls) :
39 1 Bruno Boiget
40 1 Bruno Boiget
<pre>
41 1 Bruno Boiget
eole:
42 1 Bruno Boiget
  file.directory:
43 1 Bruno Boiget
    - name: /tmp/stuff/substuf
44 1 Bruno Boiget
    - user: eole
45 1 Bruno Boiget
    - group: adm
46 1 Bruno Boiget
    - file_mode: 744
47 1 Bruno Boiget
    - dir_mode: 755
48 1 Bruno Boiget
</pre>
49 1 Bruno Boiget
50 2 Bruno Boiget
extension (/srv/salt/local.sls) :
51 1 Bruno Boiget
52 1 Bruno Boiget
<pre>
53 1 Bruno Boiget
include:
54 1 Bruno Boiget
  - eole
55 1 Bruno Boiget
56 1 Bruno Boiget
extend:
57 1 Bruno Boiget
  eole:
58 1 Bruno Boiget
    file.directory:
59 1 Bruno Boiget
      - makedirs: True
60 1 Bruno Boiget
</pre>
61 1 Bruno Boiget
62 2 Bruno Boiget
L'appel à la première recette échoue si le répertoire /tmp/stuff n'existe pas :
63 2 Bruno Boiget
64 2 Bruno Boiget
   salt 'local' state.sls eole
65 2 Bruno Boiget
66 2 Bruno Boiget
La recette étendue le crée automatiquement
67 6 Bruno Boiget
68 7 Bruno Boiget
h2. Solutions possibles
69 1 Bruno Boiget
70 7 Bruno Boiget
h3. gestion par eole
71 7 Bruno Boiget
72 6 Bruno Boiget
Les recettes EOLE seront dans le répertoire :
73 6 Bruno Boiget
74 6 Bruno Boiget
<pre>
75 6 Bruno Boiget
/usr/share/eole/sls/eole/
76 6 Bruno Boiget
</pre>
77 6 Bruno Boiget
78 6 Bruno Boiget
Les utilisateurs auront la possibilité de redéfinir une recette en créant un fichier dans :
79 6 Bruno Boiget
80 6 Bruno Boiget
<pre>
81 6 Bruno Boiget
/usr/share/eole/sls/
82 6 Bruno Boiget
</pre>
83 6 Bruno Boiget
84 6 Bruno Boiget
La recette devra avoir le même nom que la recette "EOLE".
85 6 Bruno Boiget
86 6 Bruno Boiget
Dans cette recette, les utilisateurs pourront redéfinir la recette d'origine de la manière suivante :
87 6 Bruno Boiget
88 6 Bruno Boiget
dans /usr/share/eole/sls/mkdir.sls
89 6 Bruno Boiget
90 6 Bruno Boiget
<pre>
91 6 Bruno Boiget
include:
92 6 Bruno Boiget
    - eole/mkdir
93 6 Bruno Boiget
94 6 Bruno Boiget
extend:
95 6 Bruno Boiget
  mkdir:
96 6 Bruno Boiget
    file.directory:
97 6 Bruno Boiget
      - user: eole
98 6 Bruno Boiget
</pre>
99 6 Bruno Boiget
100 6 Bruno Boiget
Les recettes seront copiés au reconfigure dans le répertoire /srv/salt.
101 6 Bruno Boiget
102 1 Bruno Boiget
S'il y a des recettes personnalisés, la recette EOLE est copiée dans /srv/salt/eole.
103 7 Bruno Boiget
104 7 Bruno Boiget
h3. application de plusieurs fichiers state avec state.apply
105 7 Bruno Boiget
106 7 Bruno Boiget
fichier *mkdir_eole.sls*
107 7 Bruno Boiget
<pre>
108 7 Bruno Boiget
mkdir:
109 7 Bruno Boiget
  file.directory:
110 7 Bruno Boiget
    - name: /tmp/stuff/subdir
111 7 Bruno Boiget
    - user: eole
112 7 Bruno Boiget
    - group: adm
113 7 Bruno Boiget
    - file_mode: 744
114 7 Bruno Boiget
    - dir_mode: 755
115 7 Bruno Boiget
116 7 Bruno Boiget
titi:
117 7 Bruno Boiget
  file.directory:
118 7 Bruno Boiget
    - name: /tmp/titi
119 7 Bruno Boiget
    - user: eole
120 7 Bruno Boiget
    - group: root
121 7 Bruno Boiget
    - file_mode: 744
122 7 Bruno Boiget
    - dir_mode: 755
123 7 Bruno Boiget
</pre>
124 7 Bruno Boiget
125 7 Bruno Boiget
fichier *mkdir_local.sls*
126 7 Bruno Boiget
<pre>
127 7 Bruno Boiget
include:
128 7 Bruno Boiget
    - mkdir_eole
129 7 Bruno Boiget
130 7 Bruno Boiget
extend:
131 7 Bruno Boiget
  mkdir:
132 7 Bruno Boiget
    file.directory:
133 7 Bruno Boiget
      - name: /tmp/pouet2
134 7 Bruno Boiget
</pre>
135 7 Bruno Boiget
136 7 Bruno Boiget
*exécution*
137 7 Bruno Boiget
138 7 Bruno Boiget
<pre>
139 7 Bruno Boiget
oot@eolebase:/srv/salt# salt '*' state.apply "mkdir_*"
140 7 Bruno Boiget
local:
141 7 Bruno Boiget
----------
142 7 Bruno Boiget
          ID: mkdir
143 7 Bruno Boiget
    Function: file.directory
144 7 Bruno Boiget
        Name: /tmp/pouet2
145 7 Bruno Boiget
      Result: True
146 7 Bruno Boiget
     Comment: Directory /tmp/pouet2 updated
147 7 Bruno Boiget
     Started: 17:51:19.335846
148 7 Bruno Boiget
    Duration: 9.165 ms
149 7 Bruno Boiget
     Changes:   
150 7 Bruno Boiget
              ----------
151 7 Bruno Boiget
              /tmp/pouet2:
152 7 Bruno Boiget
                  New Dir
153 7 Bruno Boiget
----------
154 7 Bruno Boiget
          ID: titi
155 7 Bruno Boiget
    Function: file.directory
156 7 Bruno Boiget
        Name: /tmp/titi
157 7 Bruno Boiget
      Result: True
158 7 Bruno Boiget
     Comment: Directory /tmp/titi updated
159 7 Bruno Boiget
     Started: 17:51:19.345197
160 7 Bruno Boiget
    Duration: 1.412 ms
161 7 Bruno Boiget
     Changes:   
162 7 Bruno Boiget
              ----------
163 7 Bruno Boiget
              /tmp/titi:
164 7 Bruno Boiget
                  New Dir
165 7 Bruno Boiget
166 7 Bruno Boiget
Summary for local
167 7 Bruno Boiget
------------
168 1 Bruno Boiget
Succeeded: 2 (changed=2)
169 1 Bruno Boiget
170 8 Lohysia MOUETTE
</pre>
171 8 Lohysia MOUETTE
172 8 Lohysia MOUETTE
* lancement d'une recette avec l'environnement correspondant
173 8 Lohysia MOUETTE
174 8 Lohysia MOUETTE
<pre>
175 8 Lohysia MOUETTE
salt 'local' state.sls schedule.manage saltenv=ead
176 7 Bruno Boiget
</pre>