Suchen

OpenShift Container Platform installieren Der Quick Installation Mode von OpenShift

| Autor / Redakteur: Dipl. -Ing. Thomas Drilling / Stephan Augsten

Sind die Vorbereitungen zur Installation von OpenShift Container Platform, einschließlich der optionalen Vorab-Installation von Docker und der Konfiguration von Docker-Storage abgeschlossen, geht es an die eigentliche Installation von Open Shift Container Platform. Zur Wahl stehen der Quick Installation Mode und der Advanced Installation Mode, wahlweise RPM- oder Container-basiert.

Firma zum Thema

Red Hat OpenShift Container Platform unterstützt zahlreiche Installations-Methoden. jede davon sollte anschließend validiert werden.
Red Hat OpenShift Container Platform unterstützt zahlreiche Installations-Methoden. jede davon sollte anschließend validiert werden.
(Bild: Red Hat)

Bei einer RPM-basierten Installation werden sämtliche für Open Shift Container Plattform benötigten Services ganz normal über das RPM installiert, während die einzelnen Services bei einer Container-basierten Installation Container-Images nutzen, sodass sämtliche Services in voneinander isolierten Containern laufen.

Während bei einer RPM-basierten Installation das Betriebssystem zwangsläufig Red Hat Enterprise Linux ist, fußt die Container-basierte Methode auf Red Hat Atomic Host. Die Default-Methode zur Installation von OpenShift Container Platform nutzt das Paketmanagement (RPM) von Red Hat Enterprise Linux (RHEL).

Sowohl für die Container-basierte Methode als auch für die Installation über das Paketmanagement stehen die Installations-Methoden „Quick“ und „Advanced“ zur Verfügung.

Für die Container-basierte Methode stehen die vier verschiedenen Docker-Image

  • openshift3/ose
  • openshift3/node
  • openshift3/openvswitch
  • registry.access.redhat.com/rhel7/etcd

für Master-Nodes, Docker-Hosts, Open vSwitch und etcd-Nodes bereit, deren Verwendung in einer der nächsten Folgen dieser Workshop-Reihe demonstriert werden soll.

Im Folgenden konzentrieren wir uns auf die RPM-basierte Installation. Auch hier hat der Admin die Wahl zwischen Quick und Advanced, wobei zunächst die schnelle Installationsmethode illustriert werden soll.

Quick Install Vorüberlegungen

Die Installationsmethode „Quick“ erlaubt dem Admin die einfache Verwendung eines interaktiven CLI-Tools, um OpenShift Container Platform auf einem Satz von Hosts zu installieren. Der Installer kann sämtliche OpenShift-Komponenten wie die o. e. wahlweise durch Installieren von RPMs oder durch Starten der benötigten Container-Images auf den angegebenen Ziel-Hosts ausrollen.

Achtung: auch wenn Red Hat RHEL Atomic Host für den Container-basierten Betrieb der OpenShift Container Platform Services unterstützt, wird das Installationsprogramm von einem RPM bereitgestellt. Dieses ist aber standardmäßig nicht in RHEL Atomic Host enthalten und muss daher von einem Red Hat Enterprise Linux 7 System laufen. Der Host, der die Installation initiiert, muss jedoch nicht für die Aufnahme in den OpenShift Container Platform Cluster vorgesehen sein, es kann es aber.

Die Quick-Installationsmethode erleichtert die Installation durch interaktives Sammeln der Daten, die für jeden Host erforderlich sind. Streng genommen ist der Installer ein eigenständiger Wrapper, der für den Einsatz auf einem Red Hat Enterprise Linux (RHEL) 7 System vorgesehen ist.

Standardmäßig werden alle Hosts, die der Admin während des Installationsprozesses als Master kennzeichnet, automatisch auch als Knoten konfiguriert. Allerdings ist die Knoten-Komponente auf den Mastern als „unschedulable“ markiert, was verhindert, dass Pods auch auf diesen eingeplant werden. Nach der Installation lassen sie sich allerdings so markieren, wie es der Admin wünscht.

Sind ansonsten sämtliche Voraussetzungen auf den vorgesehenen Hosts erfüllt, einschließlich der Konfiguration und Installation von Docker wie in den Teilen 3 und 4 dieser Workshop-Reihe beschreiben, steht den Start eine interaktiven Installation nichts mehr im Wege.

Der Admin muss dazu für jeden zu installierenden Host folgende Informationen bereithalten:

  • Den Nutzernamen auf dem Ziel-Host, der die Ansible-basierte Installation anstoßen soll. Dies kann, muss aber nicht root sein. Um allerdings das Installationsprogramm als Nicht-Root-User auszuführen, müssen auf jedem Zielhost passwortlose sudo-Rechte konfiguriert werden. Man könnte z. B. mit „ssh-keygen“ ein SSH-Schlüsselpaar erzeugen und z. B. in einer kleinen Bash-Schleife mittels
  • ssh-copy-id -i ~/.ssh/id_rsa.pub $host
  • auf die beteiligten Hosts in $host verteilen
  • den/die Host-Namen
  • … ob die Installation eines Masters, Nodes oder Beides durchgeführt werden soll
  • …ob eine RPM-basierte oder Container-basierte Installation durchgeführt werden soll.
  • die zu verwendenden internen und externen IP-Adressen. Diese unterscheiden sich, wenn bei einem Container-basierten Setup.

Die interaktive Open Shift – Installation

Zum Start der interaktiven Installation dient das Kommando

atomic-openshift-installer install

Danach muss der Admin nur noch den Anweisungen auf dem Bildschirm folgen, um ein neues OpenShift Container Platform Cluster zu installieren. Die Bildschirmdialoge mit den zugehörigen Begleiterklärungen sind recht umfangreich, fragen aber letztendlich nur die oben skizzierten Informationen ab. Daher kann der Prozess je nach Anzahl zu installierender Master und Nodes eine Zeitlang dauern, schon um die benötigten Informationen zusammenzutragen, zzgl. der für jeden Node zu veranschlagenden Installationszeit.

Bildschirmfotos der zugehörigen Dialoge brächten daher hier keinen Mehrwert. Man kann aber nach der Fertigstellung überprüfen, dass der Setup-Prozess jeweils die Konfigurationsdatei ~/.config /openshift/installer.cfg.yml geschrieben hat. Diese enthält alle o. a. Informationen und es empfiehlt sich, sie zu sichern, wenn die Installation später erneut durchgeführt werden soll, etwa um weitere Hosts zum Cluster hinzuzufügen oder um den Cluster zu aktualisieren.

Die Datei könnte z. B. bei einer Nicht-Container-basierten Installation wie folgt aussehen:

version: v2
variant: openshift-enterprise
variant version: 3.4
ansible log path: /tmp/ansible.log
deployment:
   ansible_ssh_user: root
   hosts:
   - Connect to: ose3-master.example.lan
      Hostname: ose3-master.example.lan
      ip: 192.168.2.2
      public hostname: ose3-master.example.lan
      public iP: 192.168.2.2
      roles:
         -master
         -node
         - Connect to: 192.168.2.3
         Hostname: ose3-node1.example.lan
         ip: 192.168.2.3
         public hostname: ose3-node1.example.lan
         public iP: 192.168.2.3
         roles:
         -node
         - Connect to: 192.168.2.4
         Hostname: ose3-node2.example.lan
         ip: 192.168.2.4
         public hostname: ose3-node2.example.lan
         public iP: 192.168.2.4
         roles:
         -node

Unbeaufsichtigte Installation

Ergänzend zum Ausführen von interaktiven Installationen kann der Befehl

atomic-openshift-installer

auch mit der beschriebenen vordefinierten Installationskonfigurationsdatei ausgeführt oder neu ausgeführt werden, um …

  • eine unbeaufsichtigte Installation durchzuführen,
  • einen Knoten zu einem vorhandenen Cluster hinzuzufügen
  • einen Cluster zu aktualisieren oder
  • ein OpenShift Container Platform-Cluster vollständig neu zu installieren.

So erlaubt es z. B. eine unbeaufsichtigte Installation dem Admin, seine Hosts und Cluster-Konfiguration in dieser Installations-Konfigurationsdatei vorab zu definieren, um nicht alle interaktiven Installationsanfragen und Antworten durchlaufen zu müssen. Zudem erlaubt es die Datei, eine noch nicht abgeschlossene interaktive Installation wieder aufzunehmen.

Existiert die betreffende Konfigurationsdatei unter dem Pfad ~/.config/openshift/installer.cfg.yml, wird die unbeaufsichtigte Installation wie folgt initiiert:

atomic-openshift-installer -u install

Ist die Datei nicht oder nicht unter dem beschriebenen Pfad vorhanden, schlägt die unbeaufsichtigte Installation fehl. Ein abweichender Speicherort lässt sich aber auf Wunsch mit der Option –c angeben.

atomic-openshift-installer -u -c </Pfad/zur/installer.cfg.yml> install

(ID:44642183)

Über den Autor

Dipl. -Ing. Thomas Drilling

Dipl. -Ing. Thomas Drilling

IT-Consultant, Trainer, Freier Journalist