kalafoto - stock.adobe.com
Container in AWS mit Red Hat OpenShift (ROSA) orchestrieren
Red Hat OpenShift Service on AWS ermöglicht den Betrieb einer Containerumgebung mit OpenShift in der Amazon-Cloud. Erfahren Sie in diesem Beitrag, was der Dienst alles kann.
Mit Red Hat OpenShift Service on AWS (ROSA) ist es möglich ein vollständig verwaltetes OpenShift-Cluster in AWS zu betreiben. AWS und RedHat unterstützen dabei Nutzer von ROSA gemeinsam.
AWS und Red Hat haben den Service im November 2020 angekündigt und im März 2021 zur allgemeinen Verfügbarkeit freigegeben. Die Unternehmen versprechen, dass ROSA generell in der gleichen Version zur Verfügung steht, wie Red Hat OpenShift Dedicated und OpenShift Container Platform. Dadurch ist sichergestellt, dass in der Cloud und im lokalen Rechenzentrum immer die aktuelle Version zum Einsatz kommt und der gleiche Funktionsumfang verfügbar ist. ROSA erfüllt auch verschiedene Compliance-Richtlinien, zum Beispiel SOC-2, ISO-27001 und PCI DSS (Payment Card Industry Data Security Standard).
Die Installation wird im Managementportal von AWS durchgeführt. Dabei haben Admins die Wahl zwischen verschieden großen EC2-Instanzen, die zu unterschiedlichen Anwendungszwecken passen und die sich miteinander kombinieren lassen. Neben den Kosten des OpenShift-Dienstes selbst, müssen IT-Abteilungen also auch die Kosten für die Instanzen einrechnen. Wenn OpenShift auch noch andere Dienste in AWS nutzen soll, rechnet Amazon diese gesondert ab.
Bei der Preisgestaltung wollen Amazon und Red Hat für Unternehmen flexible Möglichkeiten bieten. Ein stundenbasiertes Pay-as-you-go-Modell und jährliche Abonnements sind möglich. Die Abrechnung erfolgt über AWS; es ist keine weitere Lizenzierung durch Red Hat notwendig.
OpenShift in AWS mit OpenShift-Konsole und OpenShift Cluster Manager verwalten
Amazon und Red Hat arbeiten seit 2008 zusammen, um RHEL (Red Hat Enterprise Linux) über AWS zur Verfügung zu stellen. Mit der Integration eines vollständig verwalteten OpenShift-Dienstes erweitern die beiden Unternehmen ihre Kooperation. Mit ROSA ist es möglich in der AWS Management Console einen OpenShift-Cluster über einen Assistenten zu erstellen. Auch eine CLI (Command Line Interface, Befehlszeile) und verschiedene APIs stehen zur Verfügung.
Amazon und Red Hat setzen die gleichen APIs ein, die auch bei alleinstehenden OpenShift-Installationen vorhanden sind. Dadurch ist es möglich, die Umgebung mit den gewohnten Tools zu verwalten und mit allen Anwendungen zu arbeiten, die für die Kompatibilität mit OpenShift konzipiert sind.
Admins verwalten ROSA mit der OpenShift-Konsole und dem OpenShift Cluster Manager und erhalten dazu Cluster-Admin-Rechte für das erstellte OpenShift-Cluster. Das Vornehmen von Aktualisierungen unterstützt der Dienst Red Hat Enterprise Linux CoreOS (RHCOS).
OpenShift mit anderen AWS-Diensten verbinden und eigene Anwendungen nutzen
Anwendungen lassen sich aus dem OpenShift Service Catalog und dem AWS Service Broker in die Umgebung einbinden. Dazu gehören zum Beispiel Amazon Relational Database Service (RDS), Amazon Elastic MapReduce (EMR), Amazon DynamoDB, Amazon Simple Storage Service (S3) und Amazon Simple Queue Service (SQS).
OpenShift auf AWS hat den Vorteil, dass Anwendungen, die On-Premises auf OpenShift laufen problemlos in die Cloud wechseln können, wo AWS das Skalieren erheblich erleichtert. ROSA ist somit als weiterer Schritt von AWS in Richtung Hybrid Cloud zu betrachten, da das Angebot das Verschieben von Workloads erleichtert.
Red Hat OpenShift Service on AWS aktivieren
Sie richten OpenShift Service in der AWS Management Console ein. Im ersten Schritt aktivieren Sie den Dienst. Danach konfigurieren Sie ROSA in der CLI. Diese steht für Linux, macOS und Windows zur Verfügung. Den Download und die Installation beschreibt Amazon auf der Seite Installing, updating, and uninstalling the AWS CLI.
Die Spezifikationen für den Cluster definieren Sie in der Befehlszeile. Die Syntax zum Erstellen des Clusters erläutert Red Hat auf der Seite Command quick reference for creating clusters and users.
Der erste Schritt besteht darin, rosa.exe zu initialisieren. Verwenden Sie dafür den Befehl rosa.init. Danach können Sie ein Cluster erstellen:
rosa create cluster --cluster-name=<cluster_name>
Hilfestellungen rufen Sie mit folgendem Befehl auf:
rosa create cluster --help
Es besteht auch die Möglichkeit, sich von der CLI zum Erstellen der Cluster durch einen interaktiven Dialog führen zu lassen. Diesen Prozess starten Sie mit folgendem Parameter:
rosa create cluster --interactive
Die nächsten Schritte bestehen darin den Cluster zu verbinden und die Benutzerrechte zu konfigurieren:
rosa create idp --cluster=<cluster_name> --interactive
rosa grant user dedicated-admin --user=<idp_user_name> --cluster=<cluster_name>
Berechtigungen für das Cluster können Sie jederzeit nachträglich angeben:
rosa create admin --cluster=<cluster_name>
Außerdem können Sie das Cluster mit folgendem Befehl prüfen:
rosa describe cluster --cluster=<cluster_name>
Sobald das Cluster zur Verfügung steht, können Sie es mit den gleichen Tools verwalten, wie das lokal betriebene Cluster. Die erfolgreiche Installation lässt sich auch mit der Abfrage der Protokolldateien überprüfen:
rosa logs install --cluster=<cluster_name> --watch
Cluster, die nicht mehr benötigt werden, können Sie leicht wieder in der CLI löschen:
rosa delete cluster --cluster=<cluster_name> --watch
rosa init --delete-stack
Alternative Azure Red Hat OpenShift
Red Hat arbeitet für die Containerverwaltung nicht nur mit AWS zusammen. Auch bei Microsoft Azure gibt es einen verwalteten Dienst für OpenShift. Er ist ebenfalls auf Virtuelle Maschinen in der Cloud-Umgebung aufgesetzt. Die Funktionsweise ist ähnlich. Unternehmen, die OpenShift in der Cloud als verwalteten Dienst betreiben wollen, sollten sich beide Möglichkeiten genauer anschauen.