Skip to content

Ansible Tower verwenden, um OpenShift in Azure bereitstellen zu können: Folge 3

Mit Azure Jobvorlagen erstellen und Maschinen installieren

In der dritten Folge unserer Blogpost-Serie zeigen wir Ihnen, wie Sie eine Jobvorlage mit Umfrage erstellen und Ihr erstes Playbook zum Laufen bringen.

Das erste Playbook enthält folgende Rollen:

  • azureCreateTemplate: Erstellt eine Vorlage zum Bereitstellen einer VM in Azure
  • azureDeployVM: Stellt die Maschine bereit
  • azureGetIP: Ruft die öffentliche und private IP-Adresse ab und schreibt sie in die Hosts-Datei für zukünftige Playbooks
  • azureSetDomainamePrefix: Legt das Präfix für xxxxx.westeurope.cloudapp.azure.com fest
  • azureOpenPort: Öffnet den für OpenShift OKD benötigten Port 8443

Überprüfen Sie das Playbook auf Gitlab.

Eine Jobvorlage kombiniert ein Ansible-Playbook aus einem Projekt und die zum Starten erforderlichen Einstellungen.

Klicken Sie bei Ansible Tower auf Resources/Template.

Klicken Sie auf die Schaltfläche + und wählen Sie Job Template

NAME: OKD Azure Part 1
JOB TYPE: Run
INVENTORY: Localhost
PROJECT: Azure Deployment OKD
PLAYBOOK: playbook.yml
CREDENTIAL: Fügen Sie den in Folge 2 erstellten Admin-Cluster für Computer-Anmeldeinformationen hinzu

VERBOSITY: 1 (Verbose)

speichern

Wir haben VERBOSITY auf Level 1 gesetzt, um beim Ausführen unserer Playbooks etwas Feedback zu erhalten.

Jetzt können Sie Umfragen hinzufügen. Umfragen legen zusätzliche Variablen für das Playbook fest, ähnlich wie „Aufforderung nach zusätzlichen Variablen“, jedoch auf benutzerfreundliche Art und Weise. Umfragen ermöglichen auch die Validierung von Benutzereingaben.

In dieser Umfrage werden wir einige Variablen hinzufügen, die für die Ausführung des Playbooks erforderlich sind. Es ist wichtig, dass Sie für ANSWER VARIABLE NAME genau die gleichen Variablen festlegen, da das Playbook davon abhängt und andernfalls fehlschlägt.

Die erste Variable, die wir brauchen, ist ein Präfix. Dieses Präfix wird zum Bereitstellen der virtuellen Maschinen in Azure verwendet. Es wird auch zum Erstellen der DNS verwendet.
Beispiel: master0devohn.westeurope.cloudapp.azure.com

Dadurch sollte ein eindeutiger DNS-Eintrag für Azure erstellt werden.

PROMPT: Machine prefix
DESCRIPTION: Dieses Präfix wird sowohl auf den in Azure bereitgestellten Maschinen als auch für die DNS-Erstellung verwendet. Es muss in der Domäne .westeurope.cloudapp.azure.com eindeutig sein
ANSWER VARIABLE NAME: azure_virtualMachineName
ANSWER TYPE: Text
MINIMUM LENGTH: 5 MAXIMUM LENGTH: 50
REQUIRED: checked

+ Add

Die zweite Variable ist die openSSH public, die mit dem in Folge 2 hinzugefügten privaten Schlüssel übereinstimmt. Sie erhalten ihn über:

PROMPT: ssh public key. Dies ist der öffentliche Schlüssel, den wir in Folge 1 erstellt haben.
DESCRIPTION: .
ANSWER VARIABLE NAME: ssh_sshPubKey
ANSWER TYPE: Text
DEFAULT ANSWER: <paste the public key>
REQUIRED: Checked

+ Add

Die nächste Variable ist die Azure-Ressourcengruppe, die zum Erstellen der Maschinen verwendet wird.

PROMPT: Azure Resscourcengruppe
DESCRIPTION: Die von Azure erstellte Ressourcengruppe, an der die Maschinen bereitgestellt werden sollen
ANSWER VARIABLE NAME: azure_ResourceGroup
ANSWER TYPE: Text
REQUIRED: Checked

+ Add

 

Jetzt brauchen wir nur noch den Benutzer und das Passwort für Azure und wir sind mit der Umfrage fertig.

Klicken Sie im Ansible Tower auf RESOURCES / Template. Auf der rechten Seite sehen Sie einige Symbole, die Aktionen darstellen, die Sie auf die Vorlage auslösen können. Das erste Symbol ist das Raketensymbol. Dadurch wird Ihre Vorlage gestartet.

Klicken Sie nach dem OKD Azure Part 1-Template auf das Raketensymbol, um es zu starten. Sie erhalten nun die von Ihnen erstellte Umfrage. Geben Sie die Variablen ein oder akzeptieren Sie die Standardeinstellung und starten Sie den Job. Beachten Sie, dass Sie zu dem Job weitergeleitet werden, auf dem er ausgeführt wird.

Wenn das Spiel erfolgreich beendet wurde, sehen Sie in der Zusammenfassung Folgendes:

Sie sollten jetzt in der Lage sein, ssh auf Ihre bereitgestellte CentOS 7.5-Maschine zu setzen:

„Mymachine“ ist der Name, den Sie in der Umfrage unter „Maschine“ eingegeben haben.
„./TowerLabKeyPrivate“ ist die Datei, die Sie in Folge 2 erstellt haben.

Was kommt als nächstes?

Dieser Blogbeitrag ist Teil der Reihe „Ansible Tower verwenden, um OpenShift in Azure bereitstellen zu können: eine Step-by-Step-Anleitung„. In der nächsten Folge werden wir unserem Ansible Tower zwei weitere Jobvorlagen hinzufügen.

Bleiben Sie dran!