Kubernetes
Erstellung von einem Kubernetes Cluster
Nutzung von einem Kubernetes Cluster
Web Terminal
Kubeconfig
Das Credential Plugin gardenlogin sowie die CLI für Gardener und kubelogin muss vorab installiert werden.
# Homebrew (macOS and Linux)
brew install gardener/tap/gardenctl-v2
brew install gardener/tap/gardenlogin
brew install int128/kubelogin/kubelogin
# Chocolatey (Windows)
choco install gardenctl-v2
choco install gardenlogin
choco install kubelogin
Eine personalisierte Kubeconfig für ein Projekt PROJECT
kann von
https://dashboard.okeanos.tech/account?namespace=garden-PROJECT
herunterladen und in einer lokalen Datei
in ~/.kube
abgelegt werden. Zum Beispiel in ~/.kube/garden-okeanos
.
Anschliessend wird diese Konfiguration mit gardenctl
bekannt gemacht.
$ gardenctl config set-garden okeanos --kubeconfig "~/.kube/garden-okeanos"
Successfully configured garden "okeanos"
Das vorherige Kommando erstellt die Datei ~/.garden/gardenctl-v2.yaml
mit folgendem Inhalt:
gardens:
- identity: okeanos
kubeconfig: ~/.kube/garden-okeanos
Die Kubeconfig für ein Kubernetes Cluster CLUSTER
in einem Projekt PROJECT
ist unter Access
bei
Kubeconfig - Gardenlogin
abgelegt. Diese Kubeconfig herunterladen (oder den Inhalt kopieren) und in
einer lokalen Datei ablegen. Zum Beispiel in ~/.kube/config-pfee6i4v2j
wenn der Name des Clusters
pfee6i4v2j
ist.
Wenn mehrere Projekte genutzt werden und dadurch bedingt mehrere Einträge in ~/.garden/gardenctl-v2.yaml
vorhanden sind ist es wichtig in dieser Kubeconfig eine Änderung vorzunehmen. Der Eintrag
gardenClusterIdentity
ist per Default auf okeanos
gesetzt und muss entsprechend angepasst werden. Wenn z.B.
eine weiterer Eintrag demo
in ~/.garden/gardenctl-v2.yaml
vorhanden ist und genutzt werden soll dann
wird gardenClusterIdentity
entsprechend auf gardenClusterIdentity: demo
geändert.
Anschliessend kann z.B. kubectl wie gewohnt verwendet werden
nachdem die Kubeconfig wie gewohnt per KUBECONFIG
Umgebungsvariable bekannt gemacht wurde.
$ export KUBECONFIG=~/.kube/config-pfee6i4v2j
$ kubectl get nodes
NAME STATUS ROLES AGE VERSION
shoot--PROJECT--CLUSTER-worker-g096a-z1-758bb-rmdfh Ready <none> 77m v1.27.9
shoot--PROJECT--CLUSTER-worker-iaz3a-z1-6c9cd-jx84f Ready <none> 87m v1.27.9