Einführung
Kubeconfig-Dateien werden verwendet, um den Zugang zu einem Kubernetes-Cluster zu konfigurieren. Sie geben die folgenden Informationen an:
- Den zu verwendenden Cluster
- Den Benutzer für die Authentifizierung
- Den zu verwendenden Kontext (der einen Cluster und einen Benutzer kombiniert)
Standardmäßig verwendet kubectl die Datei ~/.kube/config als Kubeconfig-Datei. Sie können jedoch mit der Option --kubeconfig eine andere Kubeconfig-Datei angeben.
Den Minikube-Cluster starten
Bevor Sie Ressourcen erstellen, benötigen Sie einen laufenden Kubernetes-Cluster. Minikube ist eine leichte Kubernetes-Umgebung, die auf Ihrem lokalen Rechner läuft.
Navigieren Sie zu Ihrem Arbeitsverzeichnis:
Öffnen Sie das Terminal und navigieren Sie zum Standard-Projektordner:
cd /home/labex/projectStarten Sie Minikube:
Starten Sie Minikube, um einen Kubernetes-Cluster zu initialisieren:
minikube start- Dieser Befehl richtet einen Ein-Knoten-Kubernetes-Cluster auf Ihrem lokalen Rechner ein.
- Minikube kann je nach Leistung Ihres Systems einige Minuten dauern, um zu starten.
Überprüfen Sie, ob Minikube läuft:
Überprüfen Sie den Status des Minikube-Clusters:
minikube status- Suchen Sie nach Komponenten wie
kubeletundapiserver, die alsRunningaufgeführt sind. - Wenn der Cluster nicht läuft, führen Sie
minikube starterneut aus.
- Suchen Sie nach Komponenten wie
Wenn Sie Probleme beim Starten von Minikube haben, können Sie minikube delete verwenden, um die Umgebung bei Bedarf zurückzusetzen.
Die Kubeconfig-Datei anzeigen
Bevor Sie die Kubeconfig-Datei ändern, lassen Sie uns ihren Inhalt anzeigen. Verwenden Sie den folgenden Befehl, um den Inhalt der Kubeconfig-Datei anzuzeigen:
kubectl config view
Dieser Befehl zeigt die gesamte Kubeconfig-Datei an, einschließlich aller Cluster, Benutzer und Kontexte.
Einen Cluster zur Kubeconfig-Datei hinzufügen
Um einen Cluster zur Kubeconfig-Datei hinzuzufügen, verwenden Sie den Befehl kubectl config set-cluster. Dieser Befehl erfordert den Namen des Clusters, die Server-URL und die Zertifizierungsstelle (Certificate Authority, CA)-Daten. Hier ist ein Beispiel:
kubectl config set-cluster my-cluster \
--server=https://kubernetes.default.svc \
--certificate-authority=/home/labex/.minikube/ca.crt
Dieser Befehl fügt einen Cluster namens my-cluster mit der angegebenen Server-URL und den CA-Daten zur Kubeconfig-Datei hinzu.
Einen Benutzer zur Kubeconfig-Datei hinzufügen
Um einen Benutzer zur Kubeconfig-Datei hinzuzufügen, verwenden Sie den Befehl kubectl config set-credentials. Dieser Befehl erfordert den Namen des Benutzers, das Client-Zertifikat des Benutzers und den Client-Schlüssel des Benutzers. Hier ist ein Beispiel:
kubectl config set-credentials my-user \
--client-certificate=/home/labex/.minikube/profiles/minikube/client.crt \
--client-key=/home/labex/.minikube/profiles/minikube/client.key
Dieser Befehl fügt einen Benutzer namens my-user mit dem angegebenen Client-Zertifikat und Schlüssel zur Kubeconfig-Datei hinzu.
Einen Kontext in der Kubeconfig-Datei erstellen
Um einen Kontext in der Kubeconfig-Datei zu erstellen, verwenden Sie den Befehl kubectl config set-context. Dieser Befehl erfordert den Namen des Kontexts, den zu verwendenden Cluster und den Benutzer für die Authentifizierung. Hier ist ein Beispiel:
kubectl config set-context my-context \
--cluster=my-cluster \
--user=my-user
Dieser Befehl erstellt einen Kontext namens my-context in der Kubeconfig-Datei, der den Cluster my-cluster und den Benutzer my-user verwendet.
Einen Kontext in der Kubeconfig-Datei verwenden
Um einen Kontext in der Kubeconfig-Datei zu verwenden, verwenden Sie den Befehl kubectl config use-context. Dieser Befehl erfordert den Namen des zu verwendenden Kontexts. Hier ist ein Beispiel:
kubectl config use-context my-context
Dieser Befehl setzt den aktuellen Kontext auf my-context, sodass alle nachfolgenden kubectl-Befehle den angegebenen Cluster und Benutzer verwenden werden.
Zusammenfassung
In diesem Lab haben Sie gelernt, wie Sie Kubeconfig-Dateien mit dem Befehlszeilentool kubectl bearbeiten können. Sie haben gelernt, wie Sie einen Cluster, einen Benutzer und einen Kontext zur Kubeconfig-Datei hinzufügen und wie Sie einen Kontext verwenden, um sich bei einem Kubernetes-Cluster zu authentifizieren.


