In questo articolo, ti mostrerò come installare la libreria Nornir Python su Ubuntu 18.04 LTS e utilizzalo per l'automazione della rete. Automatizzerò le attività su 3 server Linux con la libreria Python Nornir solo per mostrarti come funziona. Iniziamo.
Installazione di PIP su Ubuntu 18.04 LTS:
PIP è davvero facile da installare su Ubuntu 18.04 LTS. È disponibile nel repository ufficiale dei pacchetti di Ubuntu 18.04 LTS.
Innanzitutto, aggiorna la cache del repository del pacchetto APT del tuo Ubuntu 18.04 macchina LTS con il seguente comando:
$ sudo apt updateSe vuoi usare PIP per installare Nornir per Python 2.x, quindi devi installare PIP per Python 2.X. Per farlo, esegui il seguente comando:
$ sudo apt install python-pip
Ora premi sì e poi premere
PIP per Python 2.x dovrebbe essere installato.
Se vuoi usare PIP per installare Nornir per Python 3.x, quindi devi installare PIP per Python 3.X. Per farlo, esegui il seguente comando:
$ sudo apt install python3-pip
Ora premi sì e poi premere
PIP per Python 3.x dovrebbe essere installato.
Installazione della libreria Python nornir utilizzando PIP:
Puoi installare facilmente easily Nornir su Ubuntu 18.04 usando Python PIP.
Per Python 3.X:
Se vuoi usare Nornir su Python 3.x (consigliato), quindi installa Nornir con il seguente comando:
$ sudo pip3 install nornir
Nornir per Python 3.x dovrebbe essere installato.
Per Python 2.X:
Se vuoi usare Nornir su Python 2.x (non consigliato), quindi installa Nornir con il seguente comando:
$ pip install nornirNornir per Python 2.x dovrebbe essere installato.
Ora puoi verificare se Nornir è stato installato correttamente e funziona con il seguente comando:
Per Python 3.X:
$ python3 -c 'da nornir.core import InitNornir'Per Python 2.X:
$ python -c 'da nornir.core import InitNornir'Se è stato installato correttamente e funziona, non vedrai alcun output quando esegui uno di questi comandi sopra come puoi vedere nello screenshot qui sotto.
Se non è stato installato correttamente, l'esecuzione dei comandi precedenti visualizzerà errori come mostrato nello screenshot qui sotto.
Utilizzo della libreria Python di Nornir:
In questa sezione, ti mostrerò come eseguire comandi su server Linux e workstation con la libreria python di Nornir.
Per prima cosa, crea una nuova directory (chiamiamola nornir) per il progetto con il seguente comando:
$ mkdir nornir
Ora naviga nel nornir/ directory con il seguente comando:
$ cd nornir
Ora crea 2 file YAML con il seguente comando:
$ touch host.gruppi yamlml.igname
Ora aggiungi le seguenti righe a padroni di casa.igname file:
Aggiungi le seguenti righe a gruppi.igname file:
Ora crea un nuovo script Python run_command.pi con il seguente comando:
$ touch run_command.piQuindi aggiungi le seguenti righe di codici a run_command.pi file:
Ora esegui lo script Python con il seguente comando:
$ python3 run_command.pi
Ora digita il comando che vuoi eseguire su tutti i server e workstation definiti nel in padroni di casa.igname file e premere
Ad esempio, vorrei vedere quale sistema operativo eseguono i server e le workstation. Quindi ho digitato lsb_release -a comando.
Come puoi vedere, il comando è stato eseguito su ciascuno dei server e workstation definiti nel in padroni di casa.igname file e l'output viene stampato sullo schermo (nel mio caso il terminale).
Come puoi vedere, ho eseguito un altro comando e ho elencato tutti i dispositivi di archiviazione installati e le partizioni dei server e delle workstation.
Davvero facile!
Capire gli host.yaml e gruppi.File di configurazione di yaml:
La parte principale del run_command.pi lo script è padroni di casa.igname e gruppi.igname File. Usando questi file, crei un oggetto Inventory, che viene utilizzato per creare un oggetto Nornir.
Sulla seguente padroni di casa.igname file, server2 e postazione di lavoro (rispettivamente sulla riga 5 e sulla riga 9) sono identificatori. Puoi usare il nome host del tuo server o workstation come identificatori. In questo modo, sarà facile per te ricordare quali sono le voci.
Alla riga 6-8, sono definiti ulteriori parametri/coppie chiave-valore per il server2 identificatore. Il nornir_host è l'indirizzo IP o il nome host del server2 server.
gruppi racconta il padroni di casa.igname file da quale gruppo o gruppi utilizzare gruppi.igname file. Se alcuni parametri sono comuni a molti identificatori, allora possono essere raggruppati e solo il nome del gruppo deve essere aggiunto nel padroni di casa.igname file. Quindi non devi digitare la stessa cosa ancora e ancora. Tutti i parametri nel gruppo o nei gruppi definiti verranno importati automaticamente.
Il formato del gruppi.igname il file è lo stesso di padroni di casa.igname file. Quindi non credo che tu abbia bisogno di ulteriori spiegazioni a riguardo. Spiegherò solo i parametri nel gruppi.igname file.
Qui, nornir_nomeutente e password_nornir è il nome utente e la password utilizzati per accedere ai server. Qui, nornir_nos definisce il sistema operativo che i server hanno installato. Mentre mi connetto ai server Ubuntu e Debian, il nornir_nos è linux.
Comprendere il run_command.py script Python:
Il run_command.pi lo script è semplice.
Sulla riga 1-3, vengono importate funzioni e classi specifiche di nornir.
Sulla linea 6, a Nornir l'oggetto viene creato utilizzando il InitNornir funzione. Qui, il secondo parametro è usato per dire InitNornir che tipo di inventario desideri creare. ho creato un Inventario semplice inventario. Il terzo parametro dice InitNornir la posizione dell'host (nel mio caso padroni di casa.igname) file e gruppo (nel mio caso gruppi.igname) file.
Sulla linea 14, il build di Python in ingresso() la funzione viene utilizzata per inserire il comando da eseguire.
Alla riga 16, il comando viene eseguito e il risultato viene memorizzato nella cartella risultato variabile.
Infine, alla riga 17, il contenuto del risultato la variabile è stampata sullo schermo.
Per ulteriori informazioni su Nornir, controlla la pagina GitHub ufficiale di Nornir su https://github.com/nornir-automation/nornir
Quindi questa è la base per usare la libreria Nornir Python su Ubuntu 18.04 LTS. Grazie per aver letto questo articolo.