K8s (Kubernetes) mit Minikube¶
Installation¶
https://minikube.sigs.k8s.io/docs/start/
brew install minikube
brew install kubernetes-cli
minikube start
kubectl get pods
minikube addons enable metrics-server
minikube dashboard &
Image bauen und Deployment starten¶
Erzeuge ein Image uns füge es der lokalen Docker-Registry hinzu:
source <(minikube docker-env)
cd lokales-image-to-run
docker build -t name-lokales-image-to-run .
Anlegen einer Deployment-Yaml:
apiVersion: apps/v1
kind: Deployment
metadata:
name: localtest
labels:
app.kubernetes.io/name: my-localtest
spec:
replicas: 1
selector:
matchLabels:
app.kubernetes.io/name: my-localtest
template:
metadata:
labels:
app.kubernetes.io/name: my-localtest
spec:
containers:
- name: localtest
image: name-lokales-image-to-run
imagePullPolicy: Never
Starten des Deployments:
cd local_tests/
kubectl apply -f deployment_my-localtest.yaml
kubectl get all
kubectl exec -it pods/localtest-... -- bash
Start Minikube¶
$ minikube start
😄 minikube v1.32.0 auf Darwin 14.3.1
✨ Verwende den Treiber qemu2 basierend auf dem existierenden Profil
👍 Starte Control Plane Node minikube in Cluster minikube
🔄 Starte existierenden qemu2 VM für "minikube" ...
🐳 Vorbereiten von Kubernetes v1.28.3 auf Docker 24.0.7...
🔗 Konfiguriere bridge CNI (Container Networking Interface) ...
▪ Verwende Image docker.io/kubernetesui/dashboard:v2.7.0
▪ Verwende Image docker.io/kubernetesui/metrics-scraper:v1.0.8
▪ Verwende Image registry.k8s.io/metrics-server/metrics-server:v0.6.4
🔎 Verifiziere Kubernetes Komponenten...
▪ Verwende Image gcr.io/k8s-minikube/storage-provisioner:v5
💡 Einige Dashboard Features erfordern das metrics-server Addon. Um alle Features zu aktivieren:
minikube addons enable metrics-server
🌟 Addons aktiviert: metrics-server, storage-provisioner, dashboard, default-storageclass
🏄 Fertig! kubectl ist jetzt für die standardmäßige (default) Verwendung des Clusters "minikube" und des Namespaces "default" konfiguriert
$ minikube addons enable metrics-server
💡 metrics-server is an addon maintained by Kubernetes. For any concerns contact minikube on GitHub.
You can view the list of minikube maintainers at: https://github.com/kubernetes/minikube/blob/master/OWNERS
▪ Verwende Image registry.k8s.io/metrics-server/metrics-server:v0.6.4
$ minikube dashboard &
🤔 Verifiziere Dashboard Funktionalität ...
🚀 Starte Proxy ...
🤔 Verifiziere Proxy Funktionalität ...
🎉 Öffne http://127.0.0.1:50889/api/v1/namespaces/kubernetes-dashboard/services/http:kubernetes-dashboard:/proxy/ im Default-Browser...
Stop Minikube¶
$ minikube stop
✋ Stoppe Node "minikube" ...
🛑 1 Node angehalten.