Die 19 wichtigsten Fragen und Antworten zu Ansible-Interviews (PDF)
Hier finden Sie Fragen und Antworten zu Ansible-Interviews für neue und erfahrene Kandidaten, die ihren Traumjob bekommen möchten.
Ansible-Interviewfragen für Erstsemester
1) Was ist Ansible?
Ansible ist ein Konfigurationsmanagementsystem. Es dient der Einrichtung und Verwaltung von Infrastruktur und Anwendungen. Benutzer können damit Anwendungen bereitstellen und aktualisieren SSH, ohne dass ein Agent auf einem Remote-System installiert werden muss.
👉Kostenloser PDF-Download: Fragen und Antworten zum Ansible-Interview >>
2) Wozu dient Ansible?
Ansible wird für die Verwaltung der IT-Infrastruktur und die Bereitstellung von Software-Apps auf Remote-Knoten verwendet.
Mit Ansible können Sie beispielsweise mit einem einzigen Befehl eine Anwendung auf vielen Knoten bereitstellen. Allerdings sind hierfür einige Programmierkenntnisse erforderlich, um die Ansible-Skripte zu verstehen.
3) Was ist Ansible Galaxy?
Ansible kann mit konfigurierten Clients über die Befehlszeile kommunizieren, indem es den Befehl „ansible“ verwendet. Außerdem können Sie die Konfiguration mithilfe des Befehls „ansible-playbook“ automatisieren. Um die Basisverzeichnisstruktur zu erstellen, können Sie ein mit Ansible gebündeltes Tool namens ansible-galaxy verwenden.
Befehl:
$ ansible-galaxy init azavea. packer
azavea.packer wurde erfolgreich erstellt
4) Was ist Continuous Delivery?
Unter Continuous Delivery versteht man die Bereitstellung der Software unmittelbar nach ihrer Entwicklung. Bei dieser Methode müssen wir ein Versionskontrollsystem verwenden. Die Software wird in Live-Produktionssystemen ständig aktualisiert.
5) Wie kann in Ansible auf Shell-Umgebungsvariablen zugegriffen werden?
Wenn Sie in Ansible auf vorhandene Variablen zugreifen möchten, muss der Benutzer das Lookup-Plugin „env“ verwenden. Beispiel, um auf den Wert der Office-Umgebung auf dem Verwaltungscomputer zuzugreifen:
Sie müssen folgenden Code schreiben:
--- # ... vars: local_home: "{{ lookup('env','Office') }}" I {{ ansible_env.SOME_VARIABLE }}
6) Welchen Code müssen Sie schreiben, um auf einen Variablennamen zuzugreifen?
Variablennamen können durch Hinzufügen mit der folgenden Methode gebildet werden:
{{ hostvars[inventory_hostname]['ansible_' + which_interface]['ipv4']['address'] }}
Die Methode zur Verwendung von Hostvars ist wichtig, da es sich um ein Wörterbuch des gesamten Namensraums von Variablen handelt. Die Variable „inventory_hostname“ gibt den aktuellen Host an, den Sie in der Host-Schleife durchsuchen.
7) Erklären Sie, wie Sie Cowsay deaktivieren können.
Wenn Cowsay installiert ist und Sie Playbooks in Ansible ausführen, können Sie Cowsay mit den folgenden Optionen deaktivieren:
- Cowsay deinstallieren
- Wert für die Umgebungsvariable einrichten
export ANSIBLE_NOCOWS=1
8) Erklären Sie, wie Sie Dateien rekursiv auf einen Zielhost kopieren können.
Das Modul „Kopieren“ hat einen rekursiven Parameter. Wenn Sie jedoch möchten, dass dies bei einer großen Anzahl von Dateien effizienter funktioniert, ist das Modul „Synchronisieren“ die beste Option für Sie.
9) Wie können Sie eine Änderung an der Dokumentation in Ansible einreichen?
Die Dokumentation für Ansible wird im Git-Repository des Projekts aufbewahrt. Die vollständigen Anweisungen zum Mitwirken finden Sie in den Dokumenten.
10) Was ist die beste Methode, um Inhalte wiederverwendbar/weiterverteilbar zu machen?
Alles über „Rollen“ können Sie im Abschnitt „Playbooks-Dokumentation“ lesen. Dies trägt dazu bei, dass Playbook-Inhalte eigenständig sind und mit anderen Ansible-Benutzern geteilt werden können.
Fragen und Antworten zu Ansible-Interviews für erfahrene Fachleute
11) Was ist Ansible Tower?
Ansible Tower ist ein Tool, das die Verwendung von Ansible sehr einfach macht. Es fungiert als Drehscheibe für die Aufgabenautomatisierung. Der Turm kann bis zu 10 Knoten kostenlos genutzt werden.
12) Mit welcher Methode können die für den Host definierten Inventarvariablen überprüft werden?
Verwenden Sie dazu diesen Befehl:
ansible -m debug -a "var=hostvars['hostname']" localhost
13) Nennen Sie den Unterschied zwischen Variablennamen und Umgebungsvariablen.
Variablennamen | Umgebungsvariablen |
---|---|
Es kann durch Hinzufügen von Zeichenfolgen erstellt werden. | Um auf die Umgebungsvariable zuzugreifen, müssen Sie auf vorhandene Variablen zugreifen. |
{{ hostvars[inventory_hostname][‘ansible_’ + which_interface][‘ipv4’][‘address’] }} | # … vars: local_home: „{{ lookup('env','HOME') }}“ |
Ermöglicht das Hinzufügen von Zeichenfolgen | Um Umgebungsvariablen festzulegen, müssen wir den Abschnitt „Erweiterte Playbooks“ sehen. |
Verwendung des IPv4-Adresstyps: Für Variablennamen verwenden wir die IPv4-Adresse. | Verwenden Sie für Remote-Umgebungsvariablen {{ ansible_env.SOME_VARIABLE }} |
14) Was sind Ad-hoc-Befehle?
Sie können sich Ad-hoc-Befehle als eine Möglichkeit für uns vorstellen, auf unseren Hosts Maßnahmen zu ergreifen, ohne ein Playbook schreiben zu müssen. Wenn wir beispielsweise alle Hosts in einer bestimmten Gruppe (Webserver) neu starten möchten. Anschließend können Sie ein Playbook schreiben oder einfach einen einmaligen Ad-hoc-Befehl ausführen.
15) Erklären Sie Ansible-Fakten
Sie können sich Ansible Facts als eine Möglichkeit für Ansible vorstellen, Informationen über einen Host abzurufen und diese für einen einfachen Zugriff in Variablen zu speichern. Diese in vordefinierten Variablen gespeicherten Informationen stehen zur Verwendung im Playbook zur Verfügung. Um Fakten zu generieren, führt Ansible das Setup-Modul aus.
16) Wie sehen Sie alle Variablen für einen Host?
Sie können sie mithilfe der Variablen hostvars anzeigen. Dadurch werden Hostvariablen mit dem Hostnamen als Schlüssel gespeichert. Um beispielsweise die für localhost definierten Variablen anzuzeigen, können Sie Folgendes ausführen:
ansible -m debug -a "var=hostvars[inventory_hostname]"
17) Erklären Sie Module in Ansible
Module in Ansible sind idempotent. Aus Sicht eines RESTful-Dienstes können Clients, damit die Operation idempotent ist, durch die Verwendung von Modulen in Ansible dasselbe Ergebnis erzielen. Mehrere identische Anfragen werden zu einer einzigen Anfrage.
In Ansible gibt es zwei verschiedene Arten von Modulen:
- Kern Module
- Extras-Module
Kern Module
Das Ansible-Team pflegt diese Art von Modulen und sie werden immer mit der Ansible-Software ausgeliefert. Außerdem geben sie allen Anfragen eine höhere Priorität als denen in den „Extras“-Repos.
Extras-Module:
Diese Module sind derzeit mit Ansible gebündelt, könnten aber in Zukunft separat verfügbar sein. Sie werden auch größtenteils von der Ansible-Community gepflegt. Diese Module sind weiterhin verwendbar, erhalten jedoch möglicherweise eine geringere Reaktionsrate auf Probleme und Pull-Anfragen.
18) Wann sollten Sie Playbooks und Rollen testen?
In Ansible können Tests entweder in neuen Playbooks oder zu vorhandenen Playbooks hinzugefügt werden. Daher bieten die meisten Testjobs jedes Mal ein sauberes Hosting. Durch die Verwendung dieser Testmethodik müssen Sie nur sehr wenige bis gar keine Codeänderungen vornehmen.
19) Besprechen Sie die Methode zum Erstellen einer leeren Datei mit Ansible
Um eine Datei zu erstellen und zu leeren, müssen Sie die angegebenen Schritte befolgen.
Schritt 1. Speichern Sie eine leere Datei im Dateiverzeichnis
Schritt 2. Kopieren Sie es auf den Remote-Host.
Diese Interviewfragen helfen auch bei Ihrer mündlichen Prüfung