Feed abonnieren

Kürzlich habe ich den Blog Provisionierung von OpenShift Clustern unter Nutzung von GitOps mit ACM veröffentlicht, in dem erklärt wird, wie OpenShift Cluster mit RHACM unter Verwendung von GitOps mit ArgoCD erstellt werden. Der OpenShift Installationstyp war IPI und war gültig für die meisten Plattformen: Azure, AWS, GCP, vSphere usw., jedoch nicht für Bare Metal. Wenn Sie schon einmal einen OpenShift Cluster in Bare Metal-Umgebungen installiert und die Verbindung trennen, wissen Sie, wie sehr es sich von anderen Installationen unterscheidet.

In diesem Blog erkläre ich, wie man einen Bare Metal OpenShift Cluster mit Assisted Installer unter Verwendung von RHACM und GitOps mit ArgoCD bereitstellt. Wenn Sie mit dem Deployment von OpenShift Clustern mit RHACM und GitOps nicht vertraut sind, empfehle ich Ihnen, meinen Artikel zu lesen: GitOps für Unternehmen: OpenShift Cluster automatisch bereitstellen und konfigurieren. Außerdem empfehle ich, den Blog Management von OCP-Infrastrukturen mit GitOps zu lesen, den ich für das erste Deployment dieser Lösung verwendet habe.

Lösungsüberblick

Ich verwende OpenShift GitOps und RHACM auf die gleiche Weise wie beschrieben in Provisionierung von OpenShift Clustern unter Nutzung von GitOps mit ACM. Ich lade die Kubernetes Objekte in ein Git-Repository hoch, ArgoCD synchronisiert diese Objekte mit unserem OpenShift Cluster und RHACM stellt den Cluster mithilfe von Bare Metal Operator, Ironic und Assisted Installer bereit.

Workflow for provisioning baremetal OpenShift clusters using ACM

Ich erstelle die BareMetalHosts (BMH). Dabei handelt es sich um Metal³ Custom Resource Definitions (CRDs), die einen physischen Host und seine Eigenschaften definieren. Die BMHs stellen über das Redfish-Protokoll eine Verbindung zu den physischen Knoten des Baseboard Management Controller (BMC) her. Das Netzwerk des Knotens wird mit NMstateConfig statisch konfiguriert. Der OpenShift Cluster wird mit Assisted Installer unter Verwendung der erstellten BareMetalHosts bereitgestellt.

Erstellen Sie nicht alle Objekte auf einmal. Da viele Ressourcen beteiligt sind, empfehle ich, sie nacheinander zu erstellen und ihren Status zu überprüfen. Überprüfen Sie zunächst die  Voraussetzungen in der RHACM-Dokumentation, bevor Sie eine Infrastrukturumgebung erstellen, und aktivieren Sie den Central Infrastructure Management Service, der mit der Multi-Cluster-Engine bereitgestellt wird.

Wenn Sie die Voraussetzungen erfüllt haben, wechseln Sie zur RHACM-Konsole. Erstellen Sie in der Infrastrukturumgebung die Bare Metal-Hosts und verbinden Sie sie mit Redfish mit dem BMC des Hosts. Als Nächstes stellen Sie einen Cluster mit den Bare Metal-Hosts (vorhandene ermittelte Hosts) wie folgt bereit: Erstellen Ihres Clusters in ACM mit der Konsole. Überprüfen Sie die beim Deployment erstellten Objekte, wechseln Sie zur Befehlszeile, und stellen Sie einen anderen Cluster bereit, indem Sie dieselben Objekte mit anderen Parametern wie folgt erstellen: Erstellen des Clusters in ACM mit der Befehlszeile. Laden Sie anschließend die YAML-Dateien in Ihr Git-Repository hoch, und erstellen Sie eine ArgoCD-Anwendung, um die Objekte zu synchronisieren.

Der letzte Schritt besteht darin, ein Helm-Chart mit allen Objekten als Vorlagen und ein ApplicationSet zu erstellen, um eine Anwendung pro Cluster zu erschaffen, wie beschrieben unter Provisionierung von OpenShift Clustern unter Nutzung von GitOps mit ACM.

Bare Metal Operator, Ironic und Assisted Installer in RHACM

  • Bare Metal Operator ist die Hauptkomponente, die mit der Ironic API verbunden ist und alle für die Bereitstellung von Bare Metal-Hosts erforderlichen Vorgänge ausführt, z. B. die Überprüfung der Hardwarefunktionen, die Installation des Betriebssystems und die Neuinitialisierung beim Wiederherstellen eines Bare Metal-Rechners in seinen ursprünglichen Status.
  • Ironic ist ein Service zur Automatisierung der Provisionierung und des Lifecycle Managements von Bare Metal-Rechnern.
  • Der OpenShift Assisted Installer ermöglicht die einfache Provisionierung neuer Bare Metal-Rechner und das Erstellen von OpenShift Clustern. Der Assisted Installer überprüft, ob alle Hosts die Anforderungen erfüllen, und löst das Deployment des OpenShift Container Platform Clusters aus.  Alle Knoten (BMHs) haben das Red Hat Enterprise Linux CoreOS (RHCOS)-Image auf die Disk geschrieben.
  • Der Assisted Image Service passt RHCOS-Images für den Assisted Installer Service an und stellt sie bereit. Es lädt beim Start, basierend auf der Konfiguration. eine Reihe von RHCOS-Images herunter.

Der Provisionierung-Workflow eines Assisted Installers:

RHACM Assisted Installer Provisioning Workflow

Objekte

Im Kapitel der RHACM Dokumentation Cluster erstellen mit der Befehlszeile finden Sie alle Objekte, die Sie für das Deployment des Clusters mit Assisted Installer benötigen:

Assisted Service Kube API

Nützliche Tipps

  • Überprüfen Sie, wie oben erwähnt, die Voraussetzungen, insbesondere die Konnektivität zwischen den IP-Adressen des Out-of-Band-Management-Hosts und RHACM. Für virtualmedia müssen Sie Port 6183 öffnen. Die Fehlerbehebung mit virtualmedia, assisted-agent und ignition kann schwierig sein. Versuchen Sie daher, Zugriff auf die Host-ILO und ein virtuelles Terminal zu erhalten. Dadurch wird die Fehlerbehebung erheblich einfacher.
  • Erstellen Sie nicht alle Objekte gleichzeitig. Erstellen Sie sie nacheinander und überprüfen Sie ihren Status.
  • Kontaktieren Sie Red Hat Professional Services, um Unterstützung zu erhalten. Obwohl wir unser Wissen durch die Veröffentlichung von Blogs, Lösungen und Artikeln wie diesem offen mit Ihnen teilen, bringt jede Umgebung ihre eigenen Anpassungen und Herausforderungen mit sich. Wir verfügen über eine umfangreiche Erfahrung mit vielen Kunden weltweit.

Zusammenfassung

In den obigen Schritten wurde ein Bare Metal OpenShift Cluster mit RHACM und einem On-Premise Assisted Installer bereitgestellt.

Überprüfen Sie zunächst die Voraussetzungen. Wenn die Voraussetzungen erfüllt sind, wechseln Sie zur RHACM-Konsole, erstellen Sie die Bare Metal-Hosts, und überprüfen Sie deren Status. Stellen Sie anschließend mithilfe von Assisted Installer und den Bare Metal-Hosts einen OpenShift Cluster bereit. Wechseln Sie beim erfolgreichen Deployment zur Befehlszeile, und erstellen Sie die Objekte nacheinander und überprüfen deren Status. Erstellen Sie abschließend die Objekte in einem Git-Repository und synchronisieren Sie sie mit ArgoCD im RHACM-Cluster.

Wenn Sie das Deployment von Bare Metal OpenShift Cluster als Self Service-Ressource automatisieren möchten, können Sie ein Helm-Chart mit allen Objekten und ein ArgoCD ApplicationSet erstellen, um jeden Cluster mit dem Helm-Chart bereitzustellen, wie beschrieben in Provisionierung von OpenShift Clustern unter Nutzung von GitOps mit ACM.


Über den Autor

Alberto Gonzalez de Dios is a Senior Cloud consultant: Automation and OpenShift specialist. He joined Red Hat in 2018, and he is certified in Azure, AWS and Red Hat (Red Hat Certified Architect Level II).

Read full bio
UI_Icon-Red_Hat-Close-A-Black-RGB

Nach Thema durchsuchen

automation icon

Automatisierung

Das Neueste zum Thema IT-Automatisierung für Technologien, Teams und Umgebungen

AI icon

Künstliche Intelligenz

Erfahren Sie das Neueste von den Plattformen, die es Kunden ermöglichen, KI-Workloads beliebig auszuführen

open hybrid cloud icon

Open Hybrid Cloud

Erfahren Sie, wie wir eine flexiblere Zukunft mit Hybrid Clouds schaffen.

security icon

Sicherheit

Erfahren Sie, wie wir Risiken in verschiedenen Umgebungen und Technologien reduzieren

edge icon

Edge Computing

Erfahren Sie das Neueste von den Plattformen, die die Operations am Edge vereinfachen

Infrastructure icon

Infrastruktur

Erfahren Sie das Neueste von der weltweit führenden Linux-Plattform für Unternehmen

application development icon

Anwendungen

Entdecken Sie unsere Lösungen für komplexe Herausforderungen bei Anwendungen

Virtualization icon

Virtualisierung

Erfahren Sie das Neueste über die Virtualisierung von Workloads in Cloud- oder On-Premise-Umgebungen