Rancher 2.0
Rancher ist eine quelloffene Container-Management-Software für Docker Container. Die Version 2.0 ist seit April dieses Jahres "feature complete". Sie nutzt im Unterbau die Docker-Orchestierungslösung "Kubernetes".
Im Folgenden werden in absoluter Kürze die notwendigen Schritte beschrieben, die notwending sind, um Rancher und einen "Cluster" mit einer Node in Betrieb zu nehmen (akà Cheat-Sheet).
Für Rancher und die Node müssen Server mit Ubuntu 16.04 mit mind. 4GB RAM vorbereitet werden (Aktuell das einzige unterstützte System). Auf den Servern wird Docker in Version 17.06.2 installiert:
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo apt-get update
sudo apt-get install docker-ce=17.06.2~ce-0~ubuntu
Rancher
Nach dem die Server vorbereitet sind, kann Rancher gestartet werden:
docker run -d --restart=unless-stopped -p 80:80 -p 443:443 -v /host/rancher:/var/lib/rancher rancher/rancher --acme-domain rancher.example.com
Mit -v /host/rancher:/var/lib/rancher
werden Rancher Daten persistiert. Mit dem Parameter --acme-domain rancher.example.com
wir dein Let's Encrypt Zertifikat generiert. Die DNS-Auflösung für den FQDN des Rancher muss natürlich bereits auf die IP des Rancher erfolgen, damit Let's Encrypt die Domain-Host-Kombination verifizieren kann.
Node
Nachdem Rancher installiert und zum Abschluss ein Passwort im Browser vergeben ist, kann ein Cluster angelegt werden. Dazu auf der Rancher-Oberfläche "Clusters" wählen und dann "Add Cluster". Als Art "Custom" auswählen. Einen Namen vergeben. Die weiteren vorausgewählten Einstellungen können beibehalten werden. Jetzt nur nocht als Node Role alle drei Checkboxen auswählen: "etcd", "Control" und "Worker".
Nachdem die Einstellungen erfolgt sind, kann der eingeblendete Docker-Run-Befehl kopiert werden und auf unserem vorbereiteten zweiten Server ausgeführt werden. Dises Kommando sieht in etwa so aus:
sudo docker run -d --privileged --restart=unless-stopped --net=host -v /etc/kubernetes:/etc/kubernetes -v /var/run:/var/run rancher/rancher-agent:v2.0.4 --server https://rancher.example.com --token 12345 --etcd --controlplane --worker
Nach einer Weile sind auf der Node einige Docker Container gestartet. Auf der Cluster-Ansicht im Rancher wird der Status der Node auch angezeigt. Das wars. Wenn sie Bereit ist, können erste Workloads angelegt werden...
Fazit
Es ist unglaublich einfach Rancher 2.0 in Betrieb zu nehmen. Obwohl die Software noch den Beta-Status genießt, hatte ich bei meinen Tests keinerlei Probleme festgestellt.
Quellen:
https://rancher.com/docs/rancher/v2.x/en/quick-start-guide/
https://rancher.com/rancher-2-0-now-feature-complete-enters-final-beta-phase/