Introduzione alle domande e risposte all'intervista

Ansible è una piattaforma di automazione open source. Ansible aiuta nell'automazione delle attività, nella distribuzione delle applicazioni e nella gestione della configurazione. Ansible è sviluppato in linguaggio Python. Ansible è composto da due server che controllano macchina e nodi. Questi due server sono gestiti da SSH senza tempi di inattività. Usando il protocollo SSH, Ansible distribuisce i moduli sui nodi e questi sono principalmente memorizzati temporaneamente in nodi remoti. Ansible è in grado di gestire più di 100 nodi in un singolo sistema tramite connessione SSH.

Di seguito è riportato l'elenco delle domande e risposte comuni relative all'intervista del 2019:

Quindi hai finalmente trovato il lavoro dei tuoi sogni in Ansible ma ti stai chiedendo come rompere l'intervista Ansible e quali potrebbero essere le probabili domande dell'intervista Ansible 2019. Ogni colloquio è diverso e anche la portata di un lavoro è diversa. Tenendo presente questo aspetto, abbiamo progettato le domande e le risposte più comuni sull'intervista Ansible per aiutarti a ottenere il successo nel tuo colloquio.

1. Che cos'è Ansible?

Risposta:
Ansible è una piattaforma di automazione open source. Può aiutarci con la gestione della configurazione, la distribuzione delle applicazioni o l'automazione delle attività. Può distribuire un'applicazione utilizzando SSH senza tempi di inattività. Ansible è sviluppato o scritto in linguaggio Python.

2. Quali sono i vantaggi e l'uso di Ansible?

Risposta:
Ansible ha un numero enorme di vantaggi:
Nessun agente: l' agente non è necessario per configurare Ansible. Se Box può supportare ssh e ha Python, allora nessun problema per configurare Ansible.
Idempotente: l'architettura di Ansible è totalmente strutturata attorno al concetto di idempotenza. L'idea principale o di base è che solo quelle cose devono essere aggiunte che sono necessarie e quelle cose saranno ripetibili senza effetti collaterali.
Dichiarativo non procedurale: un atteggiamento normale di altri strumenti di configurazione nel seguire un processo procedurale, significa fare questo, poi farlo e così via. Ma Ansible normalmente scrive la descrizione dello stato della macchina ciò che vogliamo e prende le misure adeguate per soddisfare tale descrizione.
Molto facile da imparare e costi generali bassi.

3. Come funziona Ansible?

Risposta:
Ansible principalmente classificato in due tipi di server: controllo macchina e nodi.
Ansible verrà installato sulla macchina di controllo e i nodi sono gestiti all'interno di questa macchina di controllo da SSH. Le posizioni dei nodi vengono specificate controllando una macchina attraverso il suo inventario.
Ansible distribuisce i moduli sui nodi usando il protocollo SSH, questi moduli sono principalmente memorizzati temporaneamente su nodi remoti e comunicano con la macchina Ansible attraverso una connessione JSON sull'output standard. L'installazione dell'agente nei nodi remoti non è richiesta per Ansible poiché è senza agente. Pertanto, qualsiasi processo in background o daemon non è in esecuzione per Ansible quando non gestisce alcun nodo. Ansible è in grado di gestire più di 100 nodi in un singolo sistema tramite connessione SSH e solo un singolo comando 'ansible' può essere gestito per l'intera operazione. Ma in alcuni scenari possiamo creare "playbook" in cui è necessario eseguire più comandi per la distribuzione. I playbook in realtà contengono tutti i comandi sequenziali che devono essere eseguiti per eseguire più attività. I playbook sono nel formato file YAML.

4. A che serve Ansible?

Risposta:
Ansible utilizzato principalmente nell'infrastruttura IT per gestire o distribuire applicazioni su nodi remoti. Supponiamo di voler distribuire un'applicazione in 100 nodi semplicemente eseguendo un comando, quindi Ansible sta effettivamente arrivando in figura, ma dovremmo avere bisogno di alcune conoscenze sullo script Ansible per capire o eseguire lo stesso.

5. Quando dovrei usare (())? Inoltre, come interpolare variabili o nomi di variabili dinamici?

Risposta:
Una delle regole standard è "usa sempre (()) tranne quando:". I condizionali vengono sempre eseguiti attraverso Jinja2 per risolvere l'espressione. Quindi quando: failed_when: e changed_when: sono sempre basati su modelli e dovremmo evitare di aggiungere (()).
In altri casi tranne quando la clausola dobbiamo usare parentesi, altrimenti sarà molto difficile distinguere tra una variabile non definita e String.

6. Come posso generare password crittografate per il modulo utente?

Risposta:
Una normale utility mkpasswd che è disponibile in un normale sistema Linux è un'ottima opzione per generare password crittografate.
mkpasswd –method = sha-512
È in qualche modo questa utility non disponibile nel nostro sistema, supponiamo che stiamo usando OS X, quindi possiamo anche facilmente generare questa password usando Python. Ma per lo stesso, dobbiamo installare la libreria di hashing delle password Passlib nel nostro sistema.
Una volta installato, il comando di esecuzione genererà i valori della password SHA512.
python -c “da passlib.hash import sha512_crypt; import getpass; print sha512_crypt.encrypt (getpass.getpass ()) ”

7.Qual è il modo migliore per rendere riutilizzabile / ridistribuibile il contenuto?

Risposta:
Esistono 3 modi per riutilizzare i file nei playbook di Ansible. 3 modi includono importazioni e ruoli.
Includi e le importazioni stanno effettivamente aiutando a creare più piccoli file di un grande playbook o a scomporre un grande playbook di più piccoli file. Questi file di piccole dimensioni possono essere utilizzati su più playbook principali o anche più volte all'interno dello stesso playbook.
I ruoli vengono utilizzati principalmente per gestire più attività in un pacchetto insieme. Può includere variabili, gestori o persino moduli e altri plug-in. I ruoli possono anche essere caricati e condivisi da Ansible Galaxy.

8. Come posso copiare i file in modo ricorsivo su un host di destinazione?

Risposta:
Il modulo di copia di Ansible ha un parametro ricorsivo. Ma il modo più efficiente di utilizzare il modulo di sincronizzazione che avvolge rsync. Per il modulo di sincronizzazione possiamo usare il comando seguente:
-name: copia su configurazione h5bp
sincronizzazione: mode = pull src = / tmp / server-configs-nginx / ((item)) dest = / etc / nginx / ((item))
with_items:
- “mimo. tipi”
- "h5bp /"
Per copiare da remoto a remoto utilizzare lo stesso comando, come delegate_to (come origine remota) e inventario_host corrente (come destinazione remota).

9. Playbook ammissibili vs ruoli e Ansible VS Puppet

Risposta:
Ansible Playbook è un sistema di gestione della configurazione e di distribuzione multi-macchina davvero semplice. Se confrontiamo con un altro, è molto popolare e adatto per la distribuzione di un'applicazione complessa.
E i ruoli in Ansible caricano automaticamente determinati file var, task e gestori in base a una struttura di file nota. I ruoli principalmente raggruppano tutti i contenuti e vengono impacchettati insieme. Consente inoltre una facile condivisione dei ruoli con altri utenti.

ansibleFantoccio
Prestazioni eccellenti, installazione e distribuzione senza agenti.Le prestazioni sono poco discutibili rispetto ad Ansible ed è un'installazione basata su agenti.
Basato sul linguaggio PythonBasato sul linguaggio Ruby
CLI accetta comandi in quasi tutte le lingue.Tutti i clienti devono imparare il Puppet DSL.
Dato che è molto e non testato bene, non può sempre fornire una soluzione adeguata e matura per ogni situazione.Fornisce sempre una soluzione matura rispetto ad Ansible.
La GUI è in fase di elaborazione.Buona interfaccia grafica
Nessun supporto per WindowsSupporto per tutti i principali sistemi operativi

10.Differenza tra un nome di variabile e variabili di ambiente?

Risposta:

Nome della variabileVariabile d'ambiente
Il nome della variabile può essere creato aggiungendo String.Per accedere alla variabile di ambiente è necessario accedere alla variabile esistente.
((hostvars (nome_inventario) ('ansible_' + quale_interfaccia) ('ipv4') ('indirizzo')))#… Vars: local_home: “((lookup ('env', 'HOME')))"
Possiamo aggiungere stringheSe vogliamo aggiungere la variabile, dobbiamo aprire la sezione dei playbook anticipati.
Per il nome della variabile, utilizziamo l'indirizzo IPV4.Per le variabili di ambiente remoto, utilizzare ((ansible_env.SOME_VARIABLE))

Articolo raccomandato

Questa è stata una guida all'elenco delle domande e risposte all'intervista, in modo che il candidato possa reprimere facilmente queste domande. Questo è il post più prezioso e utile su Domande e risposte sull'intervista Ansible Puoi anche leggere i seguenti articoli per saperne di più -

  1. 13 domande e risposte stupefacenti di intervista di prova del database
  2. Conoscere le 5 principali domande e risposte utili per l'intervista a SSIS
  3. 5 domande e risposte sulle interviste più importanti su Cognos
  4. Le 5 domande e risposte sull'intervista SSAS più utili
  5. Ansible vs Puppet vs Chef | Le 18 differenze principali