Kubernetes Tutorial
Die Software Kubernetes ermöglicht Ihnen, große Mengen von Containern zu verwalten und hilft Ihnen mit zahlreichen Automatismen bei der Arbeit. So hat Kubernetes – oder K8s, wie es auch genannt wird – für eine kleine Revolution in der Software-Entwicklung gesorgt. Damit Sie von seinen Funktionen profitieren können, erklären wir Ihnen die wichtigsten Schritte: von der Installation bis zum ersten Cluster.
Die ideale Plattform für performante und hochskalierbare Container-Anwendungen. Umfassend ins IONOS Cloud Ökosystem integriert und rund um die Uhr professionell betreut.
Kubernetes: Einstieg & Installation
Kubernetes arbeitet mit verschiedenen Servern: Master und Nodes. Diese müssen nicht zwingend auf unterschiedlichen physischen Servern liegen. Virtuelle Maschinen lassen es zu, dass Sie auch auf einem Computer mehrere Kubernetes-Knotenpunkte aktivieren können. Gerade für Testzwecke hat sich das kostenlose Programm Minikube bewährt. Es ermöglicht, auch lokal mit Kubernetes zu arbeiten. Da Minikube eine virtuelle Maschine erstellt, ist das Programm auf einen Hypervisor angewiesen. Deshalb müssen Sie zur Nutzung auch ein Programm wie beispielsweise VirtualBox installiert haben. Außerdem ist das Tool Kube Control notwendig.
Dieses Kubernetes-Tutorial erklärt die Installationsschritte unter Ubuntu. Es ist aber auch möglich, Kubernetes unter Windows oder macOS laufen zu lassen. Die offizielle Anleitung enthält auch hierfür Lösungen.
Kube Control installieren
Zunächst installieren Sie Kubectl auf Ihrem System. Dieses Programm benötigen Sie, um Cluster zu verwalten.
curl -LO https://storage.googleapis.com/kubernetes-release/release/$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt)/bin/linux/amd64/kubectl
Minikube
Anschließend installieren Sie Minikube, das eine virtuelle Maschine als Node kreiert.
curl -Lo minikube https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64 \
&& chmod +x minikube
Anschließend starten Sie Minikube.
minikube start
Beim Starten von Minikube sollte Kubectl automatisch korrekt konfiguriert werden. Um von der Kommandozeile in ein GUI zu wechseln, geben Sie einen weiteren Befehl ein. Dieser öffnet das Dashboard im Standardbrowser.
minikube dashboard
Wer auf die Installation von Kubernetes auf seinem System vorerst verzichten möchte, der kann auch auf ein Web-Terminal der Entwickler zugreifen. In Form eines interaktiven Tutorials können Sie dort die ersten Schritte mit Kubernetes meistern.
Umgang mit Kubernetes
Wenn Sie Minikube gestartet haben, hat das Programm automatisch einen Cluster mit einem einzelnen Node erstellt. Dies können Sie mit einer Anfrage an Kubectl überprüfen:
kubectl get nodes
Über das Dashboard können Sie nun Deployments erstellen. Klicken Sie auf den Create-Knopf (oben rechts), gelangen Sie zu einem webbasierten Editor. Im JSON- oder YAML-Format können Sie dort ein Deployment erstellen. Haben Sie dies erledigt, generiert Kubernetes automatisch mehrere Pods. Anpassen können Sie die gewünschte Anzahl, indem Sie das Deployment skalieren. Die entsprechende Funktion finden Sie über einen Button mit drei Punkte neben dem Deployment.
Alternativ können Sie Deployments auch über das Terminal erzeugen. Hierfür müssen die Inhalte allerdings bereits in einem Docker-Image integriert sein, das man in einem Repository liegen hat.
kubectl create deployment --image=[Pfad zum Image]
Über Kommandozeilenbefehle lassen sich zahlreiche Informationen beziehen.
Welche Deployments gibt es?
kubectl get deployments
Wie viele Pods gibt es?
kubectl get pods
Welche Services gibt es?
kubectl get services
Welche Nodes sind aktiv?
kubectl get nodes
Bisher haben Sie Ihr Deployment zwar gestartet, aber noch nicht veröffentlicht. Eine Veröffentlichung veranlasst man, indem man einen Service erstellt:
kubectl expose deploy test-deployment
Auf diese Weise hat man den Service aber nur innerhalb des Clusters veröffentlicht. Um auch von außerhalb des Clusters auf das Deployment zugreifen zu können, fügt man zusätzliche Flags ein:
kubectl expose deploy test-deployment --type=LoadBalancer --port=8080
Mit Minikube kann man den Service dann starten:
minikube service test-deployment
Wer den Service wieder löschen möchte, findet auch dafür den richtigen Befehl:
kubectl delete service test-deployment
Auch das Deployment kann wieder gelöscht werden:
kubectl delete deployment test-deployment
Um Minikube schließlich zu beenden, stoppt man den Prozess:
minikube stop
Wer gar nicht mehr mit der virtuellen Maschine arbeiten möchte, der kann diese auch löschen.
minikube delete
Im Anschluss sind auch die vorgenommenen Einstellungen und erstellten Deployments und Pods entfernt. Startet man Minikube erneut, arbeitet man wieder mit einem leeren Cluster.
- Kostengünstige vCPUs und leistungsstarke dedizierte Cores
- Höchste Flexibilität ohne Mindestvertragslaufzeit
- Inklusive 24/7 Experten-Support