Minikube ist ein kostenloses Open-Source-Tool, mit dem Sie einen Kubernetes-Cluster mit einem einzelnen Knoten in Ihrem Linux-System einrichten können. Minikube kann auf Linux-, MacOS- und Windows-Betriebssystemen installiert werden. Minikube unterstützt auch verschiedene Kubernetes-Features wie NodePorts, DNS, Container Network Interface, Ingress, ConfigMaps, Secrets und vieles mehr.
In diesem Tutorial lernen wir, wie man einen Kubernetes Single-Node Cluster Minikube auf Ubuntu 18.04 LTS installiert.
Anforderungen
- Ein frischer Ubuntu 18.04-Desktop, der auf Ihrem System installiert ist.
- Auf Ihrem System ist ein Root-Passwort eingerichtet.
Erste Schritte
Zuerst müssen Sie Ihr System mit der neuesten Version aktualisieren. Sie können dies tun, indem Sie den folgenden Befehl ausführen:
apt-get update -y
apt-get upgrade -y
Sobald das System aktualisiert ist, starten Sie Ihr System neu, um alle Änderungen zu übernehmen.
Installieren Sie als Nächstes einige erforderliche Pakete mit dem folgenden Befehl:
apt-get install curl wget apt-transport-https -y
VirtualBox Hypervisor installieren
Minikube unterstützt sowohl KVM- als auch VirtualBox-Hypervisor. Sie müssen also VirtualBox oder KVM auf Ihrem System installieren.
Sie können Virtualbox mit dem folgenden Befehl installieren:
apt-get install virtualbox virtualbox-ext-pack
Sobald die Installation abgeschlossen ist, können Sie mit dem nächsten Schritt fortfahren.
Minikube installieren
Zunächst müssen Sie die neueste Version von Minikube auf Ihr System herunterladen. Sie können es mit dem folgenden Befehl von ihren offiziellen Websites herunterladen:
wget https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64
Sobald der Download abgeschlossen ist, kopieren Sie die heruntergeladene Datei unter /usr/local/bin mit dem folgenden Befehl:
cp minikube-linux-amd64 /usr/local/bin/minikube
Geben Sie als Nächstes dem Minikube mit dem folgenden Befehl die Ausführungsberechtigung:
chmod 755 /usr/local/bin/minikube
Überprüfen Sie als Nächstes die Version von Minikube mit dem folgenden Befehl:
minikube version
Sie sollten die folgende Ausgabe sehen:
minikube version: v0.34.1
Installieren Sie Kubectl
Kubectl ist ein Tool zum Bereitstellen und Verwalten von Anwendungen auf Kubernetes. Standardmäßig ist Kubectl nicht im Standard-Repository von Ubuntu 18.04 verfügbar. Daher müssen Sie Ihrem System ein Kubernetes-Repository hinzufügen.
Laden Sie zuerst den GPG-Schlüssel herunter und fügen Sie ihn mit dem folgenden Befehl hinzu:
curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | apt-key add -
Fügen Sie als Nächstes das Kubernetes apt-Repository mit dem folgenden Befehl hinzu:
echo "deb http://apt.kubernetes.io/ kubernetes-xenial main" | tee /etc/apt/sources.list.d/kubernetes.list
Aktualisieren Sie als Nächstes das Repository und installieren Sie Kubectl mit dem folgenden Befehl:
apt-get update -y
apt-get install kubectl -y
Nachdem Kubectl installiert wurde, können Sie die Version mit dem folgenden Befehl überprüfen:
kubectl version -o json
Sie sollten die folgende Ausgabe sehen:
{ "clientVersion": { "major": "1", "minor": "13", "gitVersion": "v1.13.4", "gitCommit": "c27b913fddd1a6c480c229191a087698aa92f0b1", "gitTreeState": "clean", "buildDate": "2019-02-28T13:37:52Z", "goVersion": "go1.11.5", "compiler": "gc", "platform": "linux/amd64" } }
Minikube starten
Alle erforderlichen Pakete werden installiert. Sie können Minikube jetzt mit dem folgenden Befehl starten:
minikube start
Dadurch wird das Virtualbox-Image heruntergeladen und der Kubernetes-Cluster wie unten gezeigt konfiguriert:
o minikube v0.34.1 on linux (amd64) > Creating virtualbox VM (CPUs=2, Memory=2048MB, Disk=20000MB) ... @ Downloading Minikube ISO ... 184.30 MB / 184.30 MB [============================================] 100.00% 0s - "minikube" IP address is 192.168.99.100 - Configuring Docker as the container runtime ... - Preparing Kubernetes environment ... @ Downloading kubeadm v1.13.3 @ Downloading kubelet v1.13.3 - Pulling images required by Kubernetes v1.13.3 ... - Launching Kubernetes v1.13.3 using kubeadm ... - Configuring cluster permissions ... - Verifying component health ..... + kubectl is now configured to use "minikube" = Done! Thank you for using minikube!
Sie können jetzt den Clusterstatus mit dem folgenden Befehl überprüfen:
kubectl cluster-info
Sie sollten die folgende Ausgabe sehen:
Kubernetes master is running at https://192.168.99.100:8443 KubeDNS is running at https://192.168.99.100:8443/api/v1/namespaces/kube-system/services/kube-dns:dns/proxy To further debug and diagnose cluster problems, use 'kubectl cluster-info dump'.
Sie können die Kubectl-Standardkonfiguration auch mit dem folgenden Befehl überprüfen:
kubectl config view
Sie sollten die folgende Ausgabe sehen:
apiVersion: v1 clusters: - cluster: certificate-authority: /root/.minikube/ca.crt server: https://192.168.99.100:8443 name: minikube contexts: - context: cluster: minikube user: minikube name: minikube current-context: minikube kind: Config preferences: {} users: - name: minikube user: client-certificate: /root/.minikube/client.crt client-key: /root/.minikube/client.key
Führen Sie den folgenden Befehl aus, um die ausgeführten Knoten zu überprüfen:
kubectl get nodes
Ausgabe:
NAME STATUS ROLES AGE VERSION minikube Ready master 2m45s v1.13.3
Sie können auch mit dem folgenden Befehl auf die Minikube Virtualbox zugreifen:
minikube ssh
Sie sollten die folgende Ausgabe sehen:
_ _ _ _ ( ) ( ) ___ ___ (_) ___ (_)| |/') _ _ | |_ __ /' _ ` _ `\| |/' _ `\| || , < ( ) ( )| '_`\ /'__`\ | ( ) ( ) || || ( ) || || |\`\ | (_) || |_) )( ___/ (_) (_) (_)(_)(_) (_)(_)(_) (_)`\___/'(_,__/'`\____) $
Verlassen Sie nun die Virtualbox-Shell:
$exit
Sie können den Kubernetes-Cluster auch jederzeit mit dem folgenden Befehl stoppen und löschen:
minikube stop
minikube delete
Sie können den Status von Minikube mit dem folgenden Befehl überprüfen:
minikube status
Sie sollten die folgende Ausgabe sehen:
host: Running kubelet: Running apiserver: Running kubectl: Correctly Configured: pointing to minikube-vm at 192.168.99.100
Zugriff auf das Kubernetes-Dashboard
Kubernetes wird standardmäßig mit einem Web-Dashboard geliefert, das zur Verwaltung Ihres Clusters verwendet werden kann.
Sie können alle Minikube-Addons mit dem folgenden Befehl auflisten:
minikube addons list
Sie sollten die folgende Ausgabe sehen:
- addon-manager: enabled - dashboard: disabled - default-storageclass: enabled - efk: disabled - freshpod: disabled - gvisor: disabled - heapster: disabled - ingress: disabled - logviewer: disabled - metrics-server: disabled - nvidia-driver-installer: disabled - nvidia-gpu-device-plugin: disabled - registry: disabled - registry-creds: disabled - storage-provisioner: enabled - storage-provisioner-gluster: disabled
Listen Sie als Nächstes alle im Cluster ausgeführten Container-Images mit dem folgenden Befehl auf:
kubectl get pods --all-namespaces
Sie sollten die folgende Ausgabe sehen:
NAMESPACE NAME READY STATUS RESTARTS AGE kube-system coredns-86c58d9df4-76dkf 1/1 Running 0 4m30s kube-system coredns-86c58d9df4-wdtwb 1/1 Running 0 4m29s kube-system etcd-minikube 1/1 Running 0 8m17s kube-system kube-addon-manager-minikube 1/1 Running 0 8m6s kube-system kube-apiserver-minikube 1/1 Running 1 8m13s kube-system kube-controller-manager-minikube 1/1 Running 1 8m13s kube-system kube-proxy-5k8qf 1/1 Running 0 4m33s kube-system kube-scheduler-minikube 1/1 Running 0 8m2s kube-system kubernetes-dashboard-ccc79bfc9-z827s 1/1 Running 0 4m17s kube-system storage-provisioner 1/1 Running 0 4m13s
Führen Sie nun den folgenden Befehl aus, um die URL des Kubernate-Dashboards abzurufen:
minikube dashboard --url
Sie sollten die folgende Ausgabe sehen:
- Enabling dashboard ... - Verifying dashboard health ... - Launching proxy ... - Verifying proxy health ... http://127.0.0.1:56508/api/v1/namespaces/kube-system/services/http:kubernetes-dashboard:/proxy/
Ihre Minikube-Web-URL wird jetzt generiert. Öffnen Sie als Nächstes Ihren Webbrowser und geben Sie die URL http://127.0.0.1:56508/api/v1/namespaces/kube-system/services/http:kubernetes-dashboard:/proxy/ ein. Sie werden zum Kubernate-Dashboard weitergeleitet, wie auf der folgenden Seite gezeigt:
Herzliche Glückwünsche! Sie haben Minikube erfolgreich auf Ubuntu 18.04 installiert. Sie können Ihren Kubernetes-Cluster jetzt ganz einfach über Ihren Webbrowser verwalten.