L'obiettivo di questo caso d'uso è installare in modo programmatico il servizio dei minion Salt in un minion connettendo una macchina virtuale Linux all'ambiente SaltStack Config.
Prerequisiti
Prima di poter distribuire un minion utilizzando l'API in un ambiente Linux, è necessario:
- Generare un ambiente SaltStack Config con RaaS distribuito.
- Installare un Salt Master e un minion Salt.
- Distribuire una macchina virtuale Linux.
Procedura
- Verificare che la cartella etc/salt/cloud.deploy.d nel Salt Master contenga questi file.
Se i file non sono presenti, contattare il supporto.
Nota: Il valore xxxx nel nome del file, ad , esempio salt-xxxx-redhat-8-x86_64-amd64.tar.gz, deve corrispondere alla versione del Salt Master. Per verificare la versione del Salt Master, eseguire il comando
salt-master -V nel Salt Master.
- Se l'ambiente è air gap, procedere come segue:
- Aprire il file di configurazione di RaaS in
/etc/raas/raas
.
- Aggiungere queste righe al file di configurazione:
minion_deployment:
airgap_install: true
- Riavviare il servizio RaaS con il comando
service raas restart
.
- Per identificare il nome di dominio completo del Salt Master, eseguire il comando
salt saltmaster grains.get fqdn
nel terminale del Salt Master.
- Assicurarsi che il nome di dominio completo sia configurato per il Salt Master eseguendo il comando ping [FQDN].
- Per aprire Python, eseguire
python3
.
- Effettuare questa chiamata API utilizzando un client SSEAPI con le credenziali corrette per l'ambiente:
from sseapiclient import APIClient
client = APIClient('https://<master-ip>', '<ssc-username>', '<sscpassword>', ssl_validate_cert=False)
client.api.minions.deploy_minion(
master_id = '<master-id>',
host_name_ip = '<prospective minion’s ip>',
os = ‘<prospective minion’s os>’,
minion_id = '<desired-minion-name-for-prospective-minion>',
username = '<ssh-username-for-prospective-minion>',
password = '<ssh-password-for-prospective-minion>',
)
La funzione deploy.minion
inizia a essere eseguita nell'ambiente SaltStack Config. È possibile verificare che il processo sia in esecuzione nella scheda Attività dell'interfaccia utente di SaltStack Config.
risultati
Il minion è stato distribuito e configurato correttamente dall'ambiente Linux e dalla chiamata API.
Operazioni successive
Verificare che il minion sia stato distribuito correttamente eseguendo un comando
test.ping rispetto al minion utilizzando la finestra
Esegui comando o eseguendo i comandi
\* test.ping e
\* test.versions nella finestra di comando del Salt Master.