[LINUX] Erstellen einer Kubernetes-Umgebung mit ansible 2
Einführung
Ich konnte Kubernetes mit ansible initialisieren. Schließlich werde ich einen k8s-Worker hinzufügen, um eine endgültige k8s-Umgebung zu erstellen </ p>
Umgebung
MBP OS Sierra
MAAS-Server (192.168.100.152 Netzwerk für MAAS: 192.168.200.1)
k8s-master Server (KVM: 192.168.100.191)
Ansible Server (KVM: 192.168.100.192)
k8s worker(192.168.200.151)
k8s worker(192.168.200.153)
dash-board Ver.1.8
Ziel
Fügen Sie einen Computer mit einem von MAAS als k8s-Worker bereitgestellten Betriebssystem in das von k8s erstellte Flanell-Netzwerk ein
Außerdem können Sie den Nutzungsstatus von k8s im Dashboard anzeigen.
Netzwerkeinstellungen des MAAS-Servers
Dieses Mal befinden sich k8s-master und Worker aufgrund des DHCP-Problems von MAAS in unterschiedlichen Netzwerken. Daher muss die Bridge auf dem MAAS-Server eingerichtet werden
ubuntu18 hat die Art der Netzwerkeinstellungen von bis zu 16 geändert
Ich hätte einfach /etc/netplan/50-cloud-init.yaml_bk schreiben können, aber diesmal habe ich es in zwei Dateitypen geschrieben, weil die Bridge-Einstellung nicht gut lief.
Das Hinzufügen eines k8s-Workers entspricht fast dem des Masters, Sie benötigen jedoch einen Befehl, um ihn am Ende zu starten und dem Flanell-Netzwerk beizutreten
Der Befehl wird im Ausgabeinhalt angezeigt, wenn kubeadm init ausgeführt wird. Sie können ihn jedoch auch mit dem folgenden Befehl überprüfen
Wenn kein Fehler vorliegt und "erstellt" angezeigt wird, ist dies in Ordnung.
Überprüfen Sie, ob es funktioniert
kubectl get pods --all-namespaces
NAMESPACE NAME READY STATUS RESTARTS AGE
default nginx-pod 1/1 Running 0 3d
kube-system kubernetes-dashboard-7d5dcdb6d9-7hptz 1/1 Running 0 3d
Starten Sie den Kube-Proxy
$ kubectl proxy --address 0.0.0.0 --accept-hosts '.*'
Starting to serve on [::]:8001
In diesem Fall greifen Sie mit einem Browser darauf zu, um es anzuzeigen.
Der Anmeldebildschirm wird angezeigt
Die folgenden Einstellungen gelten für Personen, bei denen es schwierig ist, jedes Mal Token auszugeben.
Danach können Sie mit SKIP auf dem Anmeldebildschirm eingeben
Da es jedoch in Bezug auf die Sicherheit locker ist, wird empfohlen, es unter Bedingungen zu verwenden, unter denen keine Außenstehenden vorhanden sind, z. B. in einer internen Umgebung.
Damit ist die Umgebungskonstruktion von Kubernetes abgeschlossen
Schlussfolgerung
Nachdem Sie diese Umgebung erstellt haben, können Sie sie automatisch auf den Knoten verteilen, indem Sie das Docker-Image von k8s-master aus starten.
Dies ist sehr praktisch, da Sie einen neuen Knoten hinzufügen können, sobald Sie einen Befehl zum Hinzufügen zum Flanell-Netzwerk haben.
Ich bin gestolpert
Netzwerkkommunikation
Ich habe die Netzwerkeinstellungen am Anfang dieses Artikels erwähnt, aber bis dies entschieden wurde, wurde weiterhin ein Fehler angezeigt, dass die Kommunikation nicht erfolgreich war.
Eindruck, dass ich durch die Änderung der Einstellungsmethode aufgrund der Versionsänderung von ubuntu18 beeinflusst wurde
kubeadm init schlägt fehl
Die Ursache ist, dass ich gerade vergessen habe, Swap zu löschen, aber ich neige dazu, seine Existenz zu vergessen
Dashboard wird nicht angezeigt
Dem Master wurde ein Knoten hinzugefügt. Durch einfaches Installieren des Dashboards → Starten des Proxys wurde das Dashboard nicht im Browser angezeigt, und nur der Verzeichnisbaum der Datei wurde auf der Browserseite angezeigt.
Ich habe versucht, den Proxy-Pod wie in der Mitte der Seite gezeigt zu starten, und danach wurde das Dashboard angezeigt, wenn ich gemäß dem Verfahren vorging
Es scheint, dass es auf anderen Seiten, auf die verwiesen wird, kein ähnliches Symptom gab, und es ist nicht bekannt, ob es sich um die Spezifikation der Dashboard-Version handelt oder ob es eine Einstellung gibt, die ich nicht alleine vorgenommen habe.