SALTStack · 2 min read · Jan 04, 2026

Installa e Usa SALTStack In Un Ambiente Misto - Pagina 4

ALBERO DI STATO SALT

Nel caso tu abbia seguito questo howto, hai una leggera idea di quanto sia facile gestire simultaneamente compiti semplici su diversi server.

Facciamo un passo avanti. Si tratta di gestire compiti complessi in un ambiente complesso con un solo comando.

Maggiori dettagli a riguardo in -> http://docs.saltstack.com/ref/states/highstate.html

Per avere questa funzionalità, devi configurare un po’ il tuo salt, nella cartella /etc/salt

Sul tuo SALT MASTER, dovresti avere un file, chiamato: master

Per eliminare le righe commentate, appare così:

root@salt-master:/etc/salt# grep -E -v '^#|^ *$' /etc/salt/master

Modificalo fino a ottenere il seguente risultato:

state_top: top.sls
file_roots:
  base:
    - /srv/salt
log_file: /var/log/salt/master
key_logfile: /var/log/salt/key
log_level: debug

Come prossimo passo, creiamo tre file di stato:

/srv/salt/top.sls       -> È necessario
/srv/salt/motd.sls      -> È facoltativo
/srv/salt/line6svn.sls  -> È facoltativo

Il file top.sls è il punto di ingresso, definito in /etc/salt/master

Dà il nome ai SaltStateFiles senza il “.sls”

I file di stato contengono comandi e direttive di configurazione.

Puoi anche usare filtri nei nomi dei server o altri filtri di grano ovunque nell’albero di stato.

cat /srv/salt/top.sls
base:
  '*':
    - motd
    - line6svn

Controlla un repository Subversion:

root@salt-master:/srv/salt# cat /srv/salt/line6svn.sls
https://svn.code.sf.net/p/line6linux/code/driver/trunk/:
  svn.latest:
    - target: /opt/Line6.SVN

Puoi gestire file di testo:

root@salt-master:/srv/salt# cat /srv/salt/motd.sls
motd_perms:
  file.managed:
    - name: /etc/motd
    - mode: 644
motd_quote:
  file.append:
    - name: /etc/motd
    - text: "Tra tutti gli odori, pane; tra tutti i gusti, sale."

Possiamo attivare l’albero di stato con il seguente comando:

root@salt-master:/srv/salt# salt '*' state.highstate
salt-minion2.test.local:
----------
    Stato: - file
    Nome:      /etc/motd
    Funzione:  managed
        Risultato:    True
        Commento:   Il file /etc/motd è nello stato corretto
        Modifiche:   
----------
    Stato: - file
    Nome:      /etc/motd
    Funzione:  append
        Risultato:    True
        Commento:   Aggiunte 0 righe
        Modifiche:   
----------
    Stato: - svn
    Nome:      https://svn.code.sf.net/p/line6linux/code/driver/trunk/
    Funzione:  latest
        Risultato:    True
        Commento:   Alla revisione 1072.
        Modifiche:   
Riepilogo
------------
Successi: 3
Falliti:    0
------------
Totale:     3
salt-centos:
----------
    Stato: - file
    Nome:      /etc/motd
    Funzione:  append
        Risultato:    True
        Commento:   Aggiunte 0 righe
        Modifiche:   
----------
    Stato: - file
    Nome:      /etc/motd
    Funzione:  managed
        Risultato:    True
        Commento:   Il file /etc/motd è nello stato corretto
        Modifiche:   
----------
    Stato: - svn
    Nome:      https://svn.code.sf.net/p/line6linux/code/driver/trunk/
    Funzione:  latest
        Risultato:    True
        Commento:   Alla revisione 1072.
        Modifiche:   
Riepilogo
------------
Successi: 3
Falliti:    0
------------
Totale:     3

Puoi avere una richiesta StateTree al server SaltMaster da un Minion, in questo modo:

[root@salt-centos ~]# salt-call state.highstate -l debug

Spegnendo tutti i minion:

root@salt-master:~# salt '*' cmd.run "poweroff"
salt-centos:   
salt-minion2.test.local:    
salt-minion1.test.local:

Buona fortuna!

Share: X/Twitter LinkedIn

Ricevi i nuovi post nella tua casella di posta.

Nessuno spam. Disiscriviti in qualsiasi momento.