Einführung
Kubernetes ist eine Open-Source-Plattform zur Verwaltung von Containertechnologien wie Docker.
Mit Docker können Sie Container für ein vorkonfiguriertes Image und eine Anwendung erstellen. Kubernetes bietet den nächsten Schritt und ermöglicht es Ihnen, Lasten zwischen Containern auszugleichen und mehrere Container auf mehreren Systemen auszuführen.
Diese Anleitung führt Sie durch die Installation von Kubernetes auf Ubuntu 18.04 .
Voraussetzungen
- 2 oder mehr Linux-Server mit Ubuntu 18.04
- Zugriff auf ein Benutzerkonto auf jedem System mit sudo oder Root-Rechte
- Das passende Paketmanager, standardmäßig enthalten
- Befehlszeilen-/Terminalfenster (Strg –Alt –T )
Schritte zur Installation von Kubernetes auf Ubuntu
Docker einrichten
Schritt 1:Docker installieren
Kubernetes erfordert eine vorhandene Docker-Installation. Wenn Sie Docker bereits installiert haben, fahren Sie mit Schritt 2 fort .
Wenn Sie Kubernetes nicht haben, installieren Sie es wie folgt:
1. Aktualisieren Sie die Paketliste mit dem Befehl:
sudo apt-get update
2. Als nächstes installieren Sie Docker mit dem Befehl:
sudo apt-get install docker.io
3. Wiederholen Sie den Vorgang auf jedem Server, der als Knoten fungieren soll.
4. Überprüfen Sie die Installation (und Version), indem Sie Folgendes eingeben:
docker ––version
Schritt 2:Docker starten und aktivieren
1. Stellen Sie Docker so ein, dass es beim Booten gestartet wird, indem Sie Folgendes eingeben:
sudo systemctl enable docker
2. Stellen Sie sicher, dass Docker ausgeführt wird:
sudo systemctl status docker
So starten Sie Docker, wenn es nicht ausgeführt wird:
sudo systemctl start docker
3. Wiederholen Sie dies auf allen anderen Knoten.
Kubernetes installieren
Schritt 3:Kubernetes-Signaturschlüssel hinzufügen
Da Sie Kubernetes aus einem nicht standardmäßigen Repository herunterladen, ist es wichtig sicherzustellen, dass die Software authentisch ist. Dies geschieht durch Hinzufügen eines Signaturschlüssels.
1. Geben Sie Folgendes ein, um einen Signaturschlüssel hinzuzufügen:
curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add
Wenn Sie eine Fehlermeldung erhalten, dass curl
nicht installiert ist, installieren Sie es mit:
sudo apt-get install curl
2. Wiederholen Sie dann den vorherigen Befehl, um die Signaturschlüssel zu installieren. Wiederholen Sie dies für jeden Serverknoten.
Schritt 4:Software-Repositories hinzufügen
Kubernetes ist nicht in den Standard-Repositories enthalten. Um sie hinzuzufügen, geben Sie Folgendes ein:
sudo apt-add-repository "deb http://apt.kubernetes.io/ kubernetes-xenial main"
Wiederholen Sie dies auf jedem Serverknoten.
Schritt 5:Kubernetes-Installationstools
Kubeadm (Kubernetes Admin) ist ein Tool, das beim Initialisieren eines Clusters hilft. Es beschleunigt die Einrichtung durch die Verwendung von Best Practices aus der Community. Kubelet ist das Arbeitspaket, das auf jedem Knoten läuft und Container startet. Das Tool ermöglicht Ihnen den Befehlszeilenzugriff auf Cluster.
1. Installieren Sie die Kubernetes-Tools mit dem Befehl:
sudo apt-get install kubeadm kubelet kubectl
sudo apt-mark hold kubeadm kubelet kubectl
Warten Sie, bis der Vorgang abgeschlossen ist.
2. Überprüfen Sie die Installation mit:
kubeadm version
3. Wiederholen Sie dies für jeden Serverknoten.
Kubernetes-Bereitstellung
Schritt 6:Kubernetes-Bereitstellung beginnen
Beginnen Sie damit, den Auslagerungsspeicher auf jedem Server zu deaktivieren:
sudo swapoff –a
Schritt 7:Weisen Sie jedem Serverknoten einen eindeutigen Hostnamen zu
Entscheiden Sie, welcher Server als Masterknoten festgelegt werden soll. Geben Sie dann den Befehl ein:
sudo hostnamectl set-hostname master-node
Legen Sie als Nächstes einen Hostnamen für den Worker-Knoten fest, indem Sie Folgendes auf dem Worker-Server eingeben:
sudo hostnamectl set-hostname worker01
Wenn Sie über zusätzliche Worker-Knoten verfügen, verwenden Sie diesen Prozess, um für jeden einen eindeutigen Hostnamen festzulegen.
Schritt 8:Kubernetes auf Master-Knoten initialisieren
Wechseln Sie zum Master-Server-Knoten und geben Sie Folgendes ein:
sudo kubeadm init --pod-network-cidr=10.244.0.0/16
Sobald dieser Befehl abgeschlossen ist, wird ein kubeadm join
angezeigt Nachricht am Ende. Notieren Sie sich den gesamten Eintrag. Dies wird verwendet, um die Worker-Knoten mit dem Cluster zu verbinden.
Geben Sie als Nächstes Folgendes ein, um ein Verzeichnis für den Cluster zu erstellen:
kubernetes-master:~$ mkdir -p $HOME/.kube
kubernetes-master:~$ sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
kubernetes-master:~$ sudo chown $(id -u):$(id -g) $HOME/.kube/config
Schritt 9:Pod-Netzwerk im Cluster bereitstellen
Ein Pod-Netzwerk ist eine Möglichkeit, die Kommunikation zwischen verschiedenen Knoten im Cluster zu ermöglichen. Dieses Tutorial verwendet den flannel
virtuelles Netzwerk.
Geben Sie Folgendes ein:
sudo kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
Warten Sie, bis der Vorgang abgeschlossen ist.
Stellen Sie sicher, dass alles läuft und kommuniziert:
kubectl get pods --all-namespaces
Schritt 10:Worker-Knoten mit Cluster verbinden
Wie in Schritt 7 angegeben , können Sie den kubeadm join
eingeben Befehl auf jedem Worker-Knoten, um ihn mit dem Cluster zu verbinden.
Wechseln Sie zu worker01
system und geben Sie den Befehl ein, den Sie sich aus Schritt 7 notiert haben:
kubeadm join --discovery-token abcdef.1234567890abcdef --discovery-token-ca-cert-hash sha256:1234..cdef 1.2.3.4:6443
Ersetzen Sie die alphanumerischen Codes durch die von Ihrem Master-Server. Wiederholen Sie dies für jeden Worker-Knoten im Cluster. Warte ein paar Minuten; dann können Sie den Status der Knoten prüfen.
Wechseln Sie zum Master-Server und geben Sie ein:
kubectl get nodes
Das System sollte die Worker-Knoten anzeigen, die Sie dem Cluster beigetreten sind.