Ansible ist das beliebteste und wahrscheinlich leistungsstärkste Konfigurationsmanagement -Tool. Es wurde entwickelt, um die Verwaltung und Konfiguration von Remote -Hosts mithilfe einer Reihe von Befehlen zu erleichtern, die als Aufgaben definiert sind.
Es funktioniert mithilfe von Modulen, die für bestimmte Aufgaben wie das Verwalten von Benutzern, das Verwalten von Dateien, das Installieren und Entfernen von Softwarepaketen und vieles mehr verwendet werden.
Mit diesem Handbuch wird das AWS -Modul ansible eine EC2 -Instanz verwendet und verwaltet. Wir beginnen mit den Grundlagen des Einrichtens eines AWS -Konto.
Was ist eine EC2 -Instanz?
Die erste Frage lautet: Was ist ein EC2? Wenn Sie neu in Cloud Computing und AWS sind, klingt dies für Sie möglicherweise neu.
Amazon Elastic Compute Cloud oder kurz Amazon EC2 ist ein Dienst von Amazon Web Services (AWS), mit dem Sie Serverinstanzen in der AWS -Cloud erstellen und verwalten können.
Die Möglichkeit, Remote -Server mit Funktionen wie CPU, Speicher, Festplatten, Netzwerken, Betriebssystemen und mehr Klicks konfiguriert zu haben, ist sehr vorteilhaft. Es wird die Notwendigkeit beseitigt, in Hardware zu investieren und sich Sorgen darüber zu machen, die Geräte zu verkabeln.
Amazon EC2 -Instanzen sind einer der grundlegendsten Bausteine von AWS Cloud Computing.
Wir werden nicht tief in die Funktionsweise oder die Preis- und Konfigurationsmodelle für AWS eintauchen. Überprüfen Sie die AWS -Website, um mehr zu erfahren.
Umgebungsaufbau
Der erste Schritt besteht darin, unsere Umgebungen einzurichten. Wir brauchen ein AWS -Konto, ein Ansible und Python für diesen Leitfaden.
Wir empfehlen die neueste Version von Ansible und Python.
Ansible installieren
In diesem Tutorial wird die Installation und das Einrichten von Ansible in einem Debian-basierten System angezeigt. Sehen Sie sich unsere anderen Tutorials an, um zu erfahren, wie Sie es auf anderen Verteilungen installieren können.
Öffnen Sie das Terminal und bearbeiten Sie Ihre Software -Repositories.
sudo vim/etc/apt/Quellen.Liste
Fügen Sie der Datei den folgenden Eintrag hinzu:
Deb http: // pPA.Launchpad.Netz/Ansible/Ansible/Ubuntu Focal Main
Führen Sie als nächstes die Befehle wie unten gezeigt aus:
sudo apt-get install bnupg
sudo apt-key adv-Keyserver Keyserver.Ubuntu.com-recv-keys 93c4a3fd7bb9c367
sudo apt-Get-Update
sudo apt-get install Ansible
Sobald Sie Ansible installiert haben, können wir Python einstellen und konfigurieren.
Installieren Sie Python3, Python3-Pip
Führen Sie die Befehle wie gezeigt aus, um Python3 und PIP auf Debian 11 zu installieren:
sudo apt-Get-Update
sudo apt-get installieren Sie Python3.9 Python3 -Pip -y
Die obigen Befehle installieren Python Version 3.9 und das PIP3 auf Ihrem System.
Boto installieren
Der nächste Schritt besteht darin, Boto zu installieren. Boto ist ein leistungsstarkes Python -Paket, das eine Schnittstelle zur Interaktion mit den AWS -Diensten mit Python bietet.
So installieren Sie die neueste Version des Boto -Pakets mit PIP, wie im folgenden Befehl gezeigt:
sudo pip3 install boto3
Sobald alle Tools und Pakete erfolgreich installiert wurden, können wir Ansible Playbooks erstellen, um eine EC2 -Instanz zu initialisieren.
Erstellen Sie Ansible EC2 Playbook
Öffnen Sie das Terminal und erstellen Sie ein Ansible Playbook, das mit einem endet .YML -Erweiterung. Bearbeiten Sie die Datei mit Ihrem bevorzugten Texteditor und fügen Sie das Spielbuch hinzu, wie unten gezeigt:
---
- Name: Ansible erstellen EC2 -Instanz erstellen
Gastgeber: Localhost
sammeln_facts: false
Aufgaben:
- Name: Bereitstellung einer EC2 -Instanz
EC2:
Region: US-East-2
Schlüsselname: Ansible-EC2-SSH-Key
Instance_type: t2.Mikro
Bild: AM1-123456
Warten Sie: Ja
Graf: 1
Gruppe: Sample_Servers
AUFTRACHE_PUBLIC_IP: Ja
Register: Amazon_ec2
delegate_to: localhost
Erstellen Sie das SSH -Schlüsselpaar
Sobald das Spielbuch eingerichtet ist, erstellen Sie ein SSH -Schlüsselpaar, um sich bei der EC2. Stellen Sie sicher.
ssh -keygen -t RSA -B 4096 -f ~/.SSH/Ansible-EC2-SSH-Key
Hinzufügen von AWS -Zugriff und geheimen Schlüssel hinzufügen
Der nächste Schritt besteht darin, unsere AWS -Anmeldeinformationen zu unserem Spielbuch hinzuzufügen. Der Einfachheit halber werden wir die Anmeldeinformationen dem Playbook im einfachen Format hinzufügen.
Hinweis: Entdecken Sie Ihren AWS -Zugriff und Ihren geheimen Schlüssel nicht in einem Spielbuch im wirklichen Leben. Erwägen Sie, Umgebungsvariablen oder Tools wie ein ansible Gewölbe zu verwenden.
---
- Name: Ansible erstellen EC2 -Instanz erstellen
Gastgeber: Localhost
sammeln_facts: false
Aufgaben:
- Name: Bereitstellung einer EC2 -Instanz
EC2:
Region: US-East-2
Schlüsselname: Ansible-EC2-SSH-Key
Instance_type: t2.Mikro
Bild: AM1-123456
Warten Sie: Ja
Graf: 1Dhe
Gruppe: Sample_Servers
AUFTRACHE_PUBLIC_IP: Ja
vpc_subnet_id: Standard
AWS_ACCESS_KEY: **************************
AWS_SECRET_KEY: *********************
Register: Amazon_ec2
delegate_to: localhost
Das obige zeigt das neue Playbook mit den AWS -Anmeldeinformationen freigelegt. Vermeiden Sie dies!!
Sobald Sie das Playbook alle Setup haben, führen Sie es mit dem Befehl aus:
Ansible-Playbook Create-EC2.YML
Der obige Befehl sollte das Spielbuch oben ausführen und eine EC2 -Instanz erstellen.
Das Spielbuch verstehen
Lassen Sie uns nun das in den obige Beispiele bereitgestellte Spielbuch verstehen. Beachten Sie, wir konzentrieren uns nur auf den EC2 -Teil des Spielbuchs.
Mit dem Ansible AWS -Modul können Sie die obigen Argumente verwenden, um eine EC2 -Instanz zu erstellen.
Schließen
Dieser Leitfaden bietet ein Tutorial zum Erstellen einer Amazon EC2 -Instanz mit dem Ansible AWS -Modul.