Le 19 principali domande e risposte dell'intervista

Anonim

Scarica il pdf

1) Cos'è Ansible?

Ansible è un sistema di gestione della configurazione. Viene utilizzato per configurare e gestire infrastrutture e applicazioni. Consente agli utenti di distribuire e aggiornare le applicazioni utilizzando SSH, senza la necessità di installare un agente su un sistema remoto.

2) A cosa serve Ansible?

Ansible viene utilizzato per gestire l'infrastruttura IT e distribuire app software a nodi remoti.

Ad esempio, Ansible ti consente di distribuire come un'applicazione su molti nodi con un unico comando. Tuttavia, per questo, è necessaria una certa conoscenza di programmazione per comprendere gli script ansible.

3) Cos'è Ansible Galaxy?

Ansible può comunicare con i client configurati dalla riga di comando utilizzando il comando ansible. Consente inoltre di automatizzare la configurazione utilizzando il comando ansible-playbook. Per creare la struttura di directory di base, puoi utilizzare uno strumento in bundle con Ansible, noto come ansible-galaxy.

Comando:

$ ansible-galaxy init azavea. packer

azavea.packer è stato creato con successo

4) Cos'è la consegna continua?

La consegna continua è una pratica per consegnare il software non appena viene sviluppato. In questo metodo, è necessario utilizzare il sistema di controllo delle versioni. Il software è costantemente aggiornato nei sistemi di produzione live.

5) Qual è il modo per accedere alle variabili d'ambiente della shell in Ansible?

In Ansible, se si desidera accedere alle variabili esistenti, l'utente deve utilizzare il plug-in di ricerca "env". Esempio, per accedere al valore dell'ambiente Office sulla macchina di gestione:

Devi scrivere il seguente codice:

---#… vars:local_home: "{{ lookup('env','Office') }}"I{{ ansible_env.SOME_VARIABLE }}

6) Qual è il codice che devi scrivere per accedere a un nome di variabile?

I nomi delle variabili possono essere creati aggiungendo utilizzando il seguente metodo:

{{ hostvars[inventory_hostname]['ansible_' + which_interface]['ipv4']['address'] }} 

Il metodo di utilizzo delle variabili host è importante perché è un dizionario dell'intero spazio dei nomi delle variabili. La variabile 'inventario_hostname' specifica l'host corrente che stai cercando nel ciclo host.

7) Spiega come puoi disabilitare cowsay?

Se cowsay è installato, eseguendo i playbook all'interno di Ansible è possibile disabilitare coway utilizzando le seguenti opzioni:

  1. Disinstalla cowsay
  2. Impostazione del valore per la variabile di ambiente

esporta ANSIBLE_NOCOWS = 1

8) Spiega come puoi copiare file in modo ricorsivo su un host di destinazione?

Il modulo "copia" ha un parametro ricorsivo. Tuttavia, se vuoi che questo funzioni in modo più efficiente per un gran numero di file, il modulo "sincronizza" è l'opzione migliore per te.

9) Come puoi inviare una modifica alla documentazione in Ansible?

La documentazione per Ansible è conservata nel repository git del progetto. Contiene istruzioni complete per contribuire possono essere trovate nella documentazione.

10) Qual è il metodo migliore per rendere i contenuti riutilizzabili / ridistribuibili?

Puoi leggere tutto ciò che riguarda i "ruoli" nella sezione della documentazione dei playbook. Questo aiuta a rendere il contenuto del playbook autonomo e condivisibile con altri utenti ansible.

11) Cos'è Ansible Tower?

Ansible tower è uno strumento che rende Ansible molto facile da usare. Funge da hub per l'automazione delle attività. La torre è gratuita per l'utilizzo fino a 10 nodi.

12) Qual è il metodo per controllare le variabili di inventario definite per l'host?

Per questo usa questo comando:

ansible -m debug -a "var=hostvars['hostname']" localhost

13) Indicare la differenza tra il nome della variabile e le variabili di ambiente.

Nome variabile

variabili ambientali

Può essere costruito aggiungendo stringhe. Per accedere alla variabile di ambiente, è necessario accedere alle variabili esistenti.
{{hostvars [inventario_hostname] ['ansible_' + quale_interfaccia] ['ipv4'] ['indirizzo']}} #… Vars: local_home: "{{lookup ('env', 'HOME')}}"
Permette di aggiungere stringhe Per impostare le variabili d'ambiente, dobbiamo vedere la sezione playbook avanzati.
Uso del tipo di indirizzo IPv4 per i nomi delle variabili, utilizziamo l'indirizzo ipv4. Per le variabili di ambiente remote, utilizza {{ansible_env.SOME_VARIABLE}}

14) Cosa sono i comandi ad-hoc?

Puoi pensare ai comandi ad-hoc come un modo per noi di intraprendere azioni sui nostri host senza scrivere un playbook. Ad esempio, se vogliamo riavviare tutti gli host in un particolare gruppo (server web). Quindi puoi scrivere un playbook o semplicemente eseguire un comando ad-hoc una tantum.

15) Spiega i fatti Ansible

Puoi pensare ai fatti ansible come un modo per ansible di ottenere informazioni su un host e memorizzarli in variabili per un facile accesso. Queste informazioni memorizzate in variabili predefinite possono essere utilizzate nel playbook. Per generare fatti, ansible esegue il modulo di installazione.

16) Come vedi tutte le variabili per un host?

Puoi vederli usando la variabile dell'host. Memorizza le variabili host con il nome host come chiave. Ad esempio, per guardare le variabili definite per localhost, puoi eseguire;

ansible -m debug -a "var=hostvars[inventory_hostnam

17) Spiegare i moduli in ansible

I moduli in Ansible sono idempotenti. Dal punto di vista del servizio RESTful, affinché l'operazione sia idempotente, i client possono eseguire lo stesso risultato utilizzando i moduli in Ansible. Più richieste identiche diventano un'unica richiesta.

Esistono due diversi tipi di moduli in Ansible:

  • Moduli principali

  • Moduli extra

Moduli principali

Il team Ansible gestisce questi tipi di moduli e verranno sempre forniti con il software Ansible. Daranno anche una priorità più alta per tutte le richieste rispetto a quelle nei repository "extra".

Moduli extra:

Questi moduli sono attualmente in bundle con Ansible ma potrebbero essere disponibili separatamente in futuro. Inoltre, sono per lo più mantenuti dalla comunità Ansible. Questi moduli sono ancora utilizzabili, ma possono ricevere un tasso di risposta inferiore a problemi e richieste pull.

18) Quando dovresti testare playbook e ruoli?

In ansible, i test possono essere aggiunti in nuovi Playbook o in Playbook esistenti. Pertanto, la maggior parte del lavoro di test offre ogni volta un hosting pulito. Utilizzando questa metodologia di test, è necessario apportare modifiche minime o nulle al codice.

19) Discuti il ​​metodo per creare un file vuoto con Ansible

Per creare e svuotare il file è necessario seguire i passaggi indicati.

Passaggio 1. Salvare un file vuoto nella directory dei file

Passaggio 2. Copiarlo nell'host remoto.