Rancher managed Kubernetes in der ProfitBricks IaaS Cloud

Rancher managed Software Container im Zusammenspiel mit Kubernetes mit leichter Hand. Während bislang viel Expertenwissen notwendig war, um einen Kubernetes Cluster aufzubauen und zu betreiben, kann man mit dem aktuellen Release von Rancher diese Aufgabe in Minuten erledigen. Rancher ist eine Open Source-Software, die alles miteinander kombiniert, was es braucht, damit ein agiles Unternehmen Container produktiv einsetzen kann. Auf Kubernetes aufbauend sorgt Rancher dafür, dass DevOps Teams ihre Applikationen mit wenig Aufwand testen, deployen und managen können. Für den operativen Betrieb verantwortliche Systemadministratoren verwenden das Tool, um eine Kubernetes-Umgebung zu launchen, zu managen und schließlich abzusichern – ganz gleich, wo diese physisch betrieben wird.

In diesem Beitrag beschreibe ich exemplarisch, wie man eine Rancher-Infrastruktur auf Profitbricks IaaS in Betrieb nimmt. Rancher selbst wird dabei in einem Container gestartet. ProfitBricks bietet hierfür einen mit Rancher kompatiblen Docker-Treiber an, der schnell und einfach eingebunden werden kann.

LINUX Server für den rancher Server vorbereiten

Über den ProfitBricks Data Center Designer (DCD) oder die ProfitBricks Cloud API erstellen wir ein LINUX Server mit folgenden Eckdaten:

  • UBUNTU 16.04 64 bit
  • 50 GB HDD Festplatte
  • 2 Intel Cores
  • 4 GB RAM
  • Anbindung an das Internet
  • Feste öffentliche IP Adresse

Docker installieren

Für den Betrieb von Rancher ist eine der folgenden Docker Versionen erforderlich: 1.12.6, 1.13.1 oder 17.03.2

Nach dem login per ssh gehen wir wie folgt vor:

Update des package index:

Die Pakete installieren, die es erlauben, ein repository über https anzusprechen:

Erneutes Update des package index:

Auflisten der im Repository verfügbaren Docker Versionen

Docker in Version 17.03.2 installieren

Rancher starten

Nun können wir unter https://<IP_ADRESSE>auf den im Betrieb befindlichen Rancher server zugreifen. Zunächst setzen wir unser Passwort:

Sodann die URL für den Rancher Server bestätigen:

Nun gelangen wir zur Willkommensseite:

Um den ProfitBricks Docker Machine Driver hinzuzufügen, klicken wir nun auf “Node Driver” und dann auf “Add Node Driver”

In der sich nachfolgend öffnenden Bildschirmmaske geben wir folgende Url ein und klickt dann auf “Create”:

https://github.com/profitbricks/docker-machine-driver-profitbricks/releases/download/v1.3.3/docker-machine-driver-profitbricks-v1.3.3-linux-amd64.tar.gz

Der ProfitBricks Docker Treiber wird heruntergeladen und automatisch auf aktiv gesetzt.

Sogleich legen wir ein Template zum Deployment der Nodes (Virtuelle Instanzen bei ProfitBricks) des Kubernetes Clusters an.  Dazu klicken wir auf den Avatar oben rechts und wählen “Node Templates”.

und dann “Add Template”

Im Folgenden füllen wir eine Bildschirmmaske aus, in der wir ProfitBricks-spezifische Angaben zur Erstellung des Templates eintragen (unter anderem die Zugangsdaten). Viele Felder sind bereits mit Standardwerten gefüllt. Das Feld Datacenter-Id kann, muss aber nicht gefüllt werden. Wenn wir hier die ID eines bestehenden ProfitBricks Virtual Datacenters eintragen, werden alle auf diesem Template beruhenden Nodes auch in diesem Datacenter erstellt. Trägt man keine ID ein, so wird für jeden Node, der erzeugt wird, ein neues Virtual Datacenter erstellt. In unserem Setup wird als Standort Karlsruhe (de/fkb) vorgegeben.

Hier vergeben wir für das Template einen Namen und klicken auf “Create”.

Prinzipiell ist ein einziges Template für den Start erst einmal völlig ausreichend. Ein Rancher Cluster kann aber auch über verschiedene geografische Lokationen verteilt werden. Falls dies gewünscht ist, können nachträglich weitere Templates für die Standorte Frankfurt, Newark oder Las Vegas hinzugefügt werden.

Wir sind nun ready-to-go. Das bedeutet: Wir können unmittelbar und vollautomatisiert über die Rancher API oder über die GUI des Rancher Kubernetes Cluster inklusive aller notwendigen Rollen  deployen. Dafür sorgt die von Rancher neu entwickelte Rancher Kubernetes Engine, kurz auch RKE genannt.

Cluster erstellen

Im Menü klickt man nun auf “Clusters”, dann auf “Add Cluster”

  

Hier wählen wir nun als Provider ProfitBricks aus und vergeben einen Namen für das neue Kubernetes Cluster. Im unteren Bereich klickt man auf “Add Node Pool”. Für den Cluster sind somit zwei Node Pools vorgesehen:

  • Infra enthält einen Node, der die etcd und control Rolle innehat
  • Workers enthält zwei nodes, die die Worker Rolle innehaben.

Nach einem Klick auf Create wird nun das Cluster angelegt. Im Hintergrund werden in der im Template vorgegebenen Lokation virtuelle Instanzen provisioniert und dem Kubernetes Cluster hinzugefügt.

Die Status-Seite des neu erstellten Clusters gewährt jederzeit einen Überblick über Integrität und Auslastung.

Deployen von Workloads

Wir möchten nun eine Workload deployen. Als Beispiel habe ich einen Apache Webserver ausgewählt. Zunächst wechsle ich in den ‘workspace default’:

Nun klicke ich auf Deploy und trage folgende Werte in die Maske ein:

Danach klicke ich unten auf der Seite auf “Launch”.

Nach kurzer Zeit ist der Pod deployt:

Über den Link 31102/tcp erreichen wir die Standardseite des Apache Webservers.
Probieren Sie es aus. Wir freuen uns sehr, Ihnen praktische Hilfe für den effizienten Betrieb einer modernen IaaS Cloud zu geben. Neukunden können uns zudem 30 Tage kostenfrei auf Herz und Nieren prüfen. Gleich hier anmelden!

Hinterlasse eine Antwort

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *