So erstellen und herunterladen Sie Rollen in Ansible Galaxy und verwenden Sie sie - Teil 9

So erstellen und herunterladen Sie Rollen in Ansible Galaxy und verwenden Sie sie - Teil 9

In Teil 9 Von Ansible -Serien lernen Sie, wie Sie Rollen erstellen und herunterladen können Ansible Galaxy und benutze sie. Ansible ist ein einfaches und dennoch effektives Konfigurationsverwaltungs- und automatisches Bereitstellungswerkzeug, mit dem komplexe Aufgaben effizient automatisiert werden. Sie können Hunderte oder sogar Tausende von Servern aus einem einzigen Steuerknoten mit einer einzelnen Playbook -Datei verwalten.

Das Schreiben von Playbooks zum Verwalten des gleichen Service in verschiedenen Umgebungen kann jedoch ziemlich umständlich sein, und dies führt normalerweise zu Code -Redundanz. Zusätzlich kann Komplexität die Schwierigkeit bei der Verwaltung aller Geräte erhöhen.

In kommen Rollen. In Ansible, Rollen werden verwendet, um Playbooks in wiederverwendbare Dateien zu zerlegen, die in mehreren anderen Fällen verwendet werden können, in denen die Notwendigkeit entspricht, eine ähnliche Aufgabe auszuführen. Dies beseitigte die Notwendigkeit, immer und immer wieder Playbooks neu zu schreiben, und spart viel Zeit und Energie.

Rollen sind einfach Funktionen von Spielbüchern. Eine Rolle versendet mit so ziemlich dem, was ein Spielbuch darstellen würde: Aufgaben, Dateien, Module, Variablen und Vorlagen. Beachten Sie auch, dass jede Rolle auf eine bestimmte Aufgabe oder die gewünschte Ausgabe beschränkt ist.

Eine ansible Rolle schaffen

Eine Rolle in der Rolle in Ansible, Verwenden Sie einfach die Syntax.

# Ansible-Galaxy init rollenname 

Mehrere Verzeichnisse und Dateien werden in Ihrem aktuellen Arbeitsverzeichnis erstellt. In diesem Fall habe ich beschlossen, eine Rolle in der zu schaffen /etc/Ansible/Rollen Verzeichnis.

Lassen Sie uns eine Rolle namens erstellen Apache.

# Ansible-Galaxy Init Apache 
Erstellen Sie Apache -Rolle in Ansible

Verwenden Sie den Befehl Baum, um einen Blick auf die Verzeichnisstruktur der Rolle zu werfen.

# Baum Apache 
Überprüfen Sie die Verzeichnisstruktur der ansiblen Rolle

Wie Sie sehen können, wurden mehrere Verzeichnisse erstellt, aber nicht alle werden im Spielbuch verwendet.

Definieren Sie nun Ihre neu erstellte Rolle in einem Spielbuch, eine Aufgabe in der hauptsächlich.YML Datei enthalten im Aufgabenverzeichnis Ihrer neuen Rolle.

/Apache/Aufgaben/Main.YML --- - Hosts: Database_Servers Aufgaben: - Name: APache2 auf Ubuntu Webserver APT: Name: Apache2 Status: Installiert 

Erstellen Sie anschließend eine Playbook -Datei und rufen Sie die Rolle wie gezeigt an.

--- - Hosts: Webservers -Rollen: - Apache 

Installation einer Rolle von Ansible Galaxy

Rollen Spielen Sie eine entscheidende Rolle bei der Freigabe von Code mit anderen Benutzern in der Ansible Community benutzt die Ansible Galaxy Plattform. In Ansible Galaxy, Sie erhalten Tausende von Rollen, die unterschiedliche Aufgaben ausführen, z. B. die Installation von Webservern und Datenbanken, Überwachungstools usw.

Ansible Galaxy ist eine Datenbank oder ein Repository von Ansible -Rollen, die Sie in Ihren Spielbüchern nutzen und Ihre Aufgaben optimieren können.

Eine Rolle in der Suche in Ansible Galaxy, Führen Sie einfach den Befehl aus.

# Ansible-Galaxy-Suche  

Zum Beispiel, um nach einer mit dem Namen benannten Rolle zu suchen Mysql laufen.

# Ansible-Galaxy Search MySQL 
Suchrolle in Ansible

Wie Sie sehen können, gibt es Hunderte von Rollen, die dem Suchschlüsselwort entsprechen Mysql. Nicht alle Rollen führen jedoch das aus, was Sie beabsichtigen. Daher wird empfohlen, die Anweisungen sorgfältig durchzulesen.

Um weitere Informationen über eine Rolle zu sammeln, führen Sie einfach den Ansible -Befehl aus:

# Ansible-Galaxy Info 5kydev0p5.Skydevops-Mysql 
Überprüfen Sie die Ansible -Rolleninformationen

In unserem Beispiel werden wir die Rolle installieren 5KYDEV0P5.Skydevops-Mysql.

# Ansible-Galaxy Install 5KyDEV0P5.Skydevops-Mysql 
Rolle in Ansible installieren

Die Rolle wird heruntergeladen und in das Standard -Rollenverzeichnis extrahiert, das sich befindet /etc/Ansible/Rollen.

Die Rolle kann danach in einem Spielbuch aufgerufen werden, zum Beispiel:

--- - Name: Installieren Sie MySQL Server Hosts: Webservers -Rollen: • 5KyDEV0P5.Skydevops-Mysql 

Jetzt können Sie das Ansible Playbook sicher wie gezeigt ausführen.

# Ansible-Playbook install_mysql.YML 
Rennen Sie ein Spielbuch

Darüber hinaus können Sie die Ansible Galaxy über Ihren Webbrowser besuchen und manuell nach Rollen suchen, um verschiedene Aufgaben auszuführen, die vom Dashboard umrissen werden.

Ansible Galaxy

Zum Beispiel nach einer Überwachungsrolle wie z Elasticsarch, Klick auf das 'ÜberwachungOption und suchen Sie nach der Rolle wie gezeigt.

Suchen Sie die Überwachungsrolle in der ansiblen Galaxie

Ansible Galaxy Ermöglicht den Benutzern die Installation der besten Rollen, indem es die beliebtesten und am meisten heruntergeladenen Rollen auflistet. Um weitere Informationen zu einer bestimmten Rolle zu erhalten, klicken Sie einfach darauf.

Überprüfen Sie die Rolleninformationen zur Ansible -Galaxie

In einem Spielbuch können Sie beispielsweise auch mehr als eine Rolle angeben.

--- - Name: Installieren Sie MySQL Server Hosts: Webservers -Rollen: • 5KyDEV0P5.Skydevops-Mysql • Aaronpederson.Mariadb 

Um die installierten Rollen aufzulisten, laufen Sie einfach aus.

# Ansible-Galaxy-Liste 
Liste installierte Rollen in der ansiblen Galaxie
Abschluss

Rollen Machen Sie es ziemlich einfach, um -ansible Playbooks wiederzuverwenden und zu teilen. Auf diese Weise sparen sie einem Benutzer viel Zeit, um viel redundante Code zu schreiben und zu viel Zeit zu verbringen, was bei anderen Systemverwaltungsaufgaben verwendet worden wäre. Und das war's für diesen Leitfaden.