Verwendung des Dashboards für den Zugriff auf Kubernetes-Cluster auf CREODIAS OpenStack Magnum
Nachdem das Kubernetes-Cluster erstellt wurde, können Sie über das Befehlszeilentool kubectl oder über eine visuelle Schnittstelle, das Kubernetes-Dashboard, darauf zugreifen. Dieser Artikel zeigt, wie man das Dashboard installiert.
Was wir behandeln werden
Wie wird das Kubernetes Dashboard installiert?
Voraussetzungen
Nr. 1 Konto
Sie benötigen ein CREODIAS Konto mit Horizon-Schnittstelle https://cloud.fra1-1.cloudferro.com/auth/login/?next=/.
Nr. 2 Cluster und kubectl sollten bereits einsatzbereit sein
Um einen Cluster einzurichten und ihn mit dem Tool kubectl zu verbinden, lesen Sie diesen Artikel How-To-Access-Kubernetes-Cluster-Post-Deployment-Using-Kubectl-On-Creodias-OpenStack-Magnum.
Das Dashboard ist eine visuelle Schnittstelle zum Kubernetes-Cluster. Es hat dieselbe Funktionalität wie kubectl als CLI-Tool.
Schritt 1 Bereitstellen des Dashboards
Installieren Sie es mit dem folgenden Befehl:
kubectl apply
-f https://raw.githubusercontent.com/kubernetes/dashboard/v2.4.0/aio/deploy/recommended.yaml
Das Ergebnis ist

Schritt 2 Erstellen eines Beispielbenutzers
Als Nächstes erstellen Sie ein Inhaber-Token, das als Autorisierungs-Token für das Dashboard dient. Zu diesem Zweck erstellen Sie zwei lokale Dateien und „senden“ sie mit dem Befehl kubectl in die Cloud. Die erste Datei heißt dashboard-adminuser.yaml und ihr Inhalt ist
apiVersion: v1
kind: ServiceAccount
metadata:
name: admin-user
namespace: kubernetes-dashboard
Verwenden Sie einen Texteditor Ihrer Wahl, um diese Datei zu erstellen. Unter MacOS oder Linux können Sie nano verwenden, etwa so:
nano dashboard-adminuser.yaml
Installieren Sie diese Datei mit diesem Befehl auf dem Kubernetes-Cluster:
kubectl apply -f dashboard-adminuser.yaml
Die zweite zu erstellende Datei ist
nano dashboard-clusterolebinding.yaml
und ihr Inhalt ist:
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
name: admin-user
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
name: cluster-admin
subjects:
- kind: ServiceAccount
name: admin-user
namespace: kubernetes-dashboard
Der Befehl zum Senden an die Cloud lautet
kubectl apply -f dashboard-clusterolebinding.yaml
Schritt 3 Abrufen des Inhaber-Tokens für die Authentifizierung beim Dashboard
Der letzte Schritt besteht darin, das Inhaber-Token abzurufen, mit dem Aufrufe an das Dashboard authentifiziert werden können:
kubectl
-n kubernetes-dashboard
get secret $(kubectl -n kubernetes-dashboard get sa/admin-user -o jsonpath="{.secrets[0].name}")
-o go-template="{{.data.token | base64decode}}"
Das Inhaber-Tokens wird auf dem Terminalbildschirm angezeigt. Kopieren Sie sie in einen Texteditor. Es wird benötigt, wenn Sie über einen HTTPS-Aufruf auf die Dashboard-Benutzeroberfläche zugreifen.
Bemerkung
Wenn das letzte Zeichen der Inhaber-Token-Zeichenkette % ist, kann es sich um ein Zeichen handeln, das das Ende der Zeichenkette kennzeichnet, aber nicht Teil der Zeichenkette ist. Wenn Sie das Inhaber-Token kopieren und sie nicht erkannt wird, versuchen Sie, sie ohne dieses Endzeichen % zu kopieren.
Schritt 4 Erstellen Sie ein separates Terminalfenster
Um die Verbindung zu aktivieren, starten Sie ein separates Terminalfenster und führen Sie darin den folgenden Befehl aus:
kubectl proxy
Das Ergebnis wird etwa so aussehen:

Schritt 5 Anzeigen des Dashboards im Browser
Geben Sie dann diese Adresse in den Browser ein:
http://localhost:8001/api/v1/namespaces/kubernetes-dashboard/services/https:kubernetes-dashboard:/proxy/

Geben Sie den Token ein, klicken Sie auf Sign In und rufen Sie die Dashboard-Benutzeroberfläche für den Kubernetes-Cluster auf.

Das Kubernetes-Dashboard organisiert die Arbeit mit dem Cluster auf visuelle und interaktive Weise. Klicken Sie zum Beispiel auf Knoten auf der linken Seite, um die Knoten des k8s-Clusters zu sehen.
Was als nächstes zu tun ist
Sie können weiterhin kubectl verwenden oder alternativ das Dashboard nutzen. In jedem Fall können Sie
Anwendungen auf dem Cluster bereitstellen,
auf mehrere Cluster zugreifen,
Load Balancer erstellen,
über Portweiterleitung auf Anwendungen im Cluster zugreifen,
den Dienst für den Zugriff auf Anwendungen in einem Cluster verwenden,
Container-Images im Cluster auflisten,
Dienste, Deployments und alle anderen Ressourcen in einem Kubernetes-Cluster nutzen.