Toegang tot het Kubernetes-dashboard in Azure Stack Hub
Notitie
Gebruik alleen het Kubernetes Azure Stack Marketplace-item om clusters te implementeren als proof-of-concept. Gebruik de AKS-engine voor ondersteunde Kubernetes-clusters in Azure Stack.
Kubernetes bevat een webdashboard dat u kunt gebruiken voor eenvoudige beheerbewerkingen. Met dit dashboard kunt u de basisstatus en metrische gegevens voor uw toepassingen bekijken, services maken en implementeren en bestaande toepassingen bewerken. In dit artikel wordt beschreven hoe u het Kubernetes-dashboard instelt in Azure Stack Hub.
Vereisten voor Kubernetes Dashboard
Azure Stack Hub Kubernetes-cluster
U moet een Kubernetes-cluster hebben geïmplementeerd in Azure Stack Hub. Zie Kubernetes implementeren voor meer informatie.
SSH-client
U hebt een SSH-client nodig om verbinding te maken met het besturingsvlakknooppunt in het cluster. Als u Windows gebruikt, kunt u Putty gebruiken. U hebt de persoonlijke sleutel nodig die is gebruikt bij het implementeren van uw Kubernetes-cluster.
FTP (PSCP)
Mogelijk hebt u ook een FTP-client nodig die ondersteuning biedt voor SSH en SSH File Transfer Protocol om de certificaten van het besturingsvlakknooppunt over te dragen naar uw Azure Stack Hub-beheercomputer. U kunt FileZilla gebruiken. U hebt de persoonlijke sleutel nodig die is gebruikt bij het implementeren van uw Kubernetes-cluster.
Overzicht van stappen voor het inschakelen van dashboards
- Exporteer de Kubernetes-certificaten vanuit het besturingsvlakknooppunt in het cluster.
- Importeer de certificaten in uw Azure Stack Hub-beheermachine.
- Open het Kubernetes-webdashboard.
Certificaat exporteren uit de master
U kunt de URL voor het dashboard ophalen uit het besturingsvlakknooppunt in uw cluster.
Haal het openbare IP-adres en de gebruikersnaam voor uw clustermaster op uit het Azure Stack Hub-dashboard. Ga als volgt te werk om deze informatie op te halen:
- Meld u aan bij de Azure Stack Hub-portal
https://portal.local.azurestack.external/
. - Selecteer Alle services>Alle resources. Zoek de master in uw clusterresourcegroep. De master heet
k8s-master-<sequence-of-numbers>
.
- Meld u aan bij de Azure Stack Hub-portal
Open het besturingsvlakknooppunt in de portal. Kopieer het openbare IP-adres . Klik op Verbinding maken om uw gebruikersnaam op te halen in het vak Aanmelden met lokaal VM-account . Dit is dezelfde gebruikersnaam die u hebt ingesteld bij het maken van uw cluster. Gebruik het openbare IP-adres in plaats van het privé-IP-adres dat wordt vermeld op de blade Verbinding maken.
Open een SSH-client om verbinding te maken met de master. Als u in Windows werkt, kunt u Putty gebruiken om de verbinding te maken. U gebruikt het openbare IP-adres voor het besturingsvlakknooppunt, de gebruikersnaam en voegt de persoonlijke sleutel toe die u hebt gebruikt bij het maken van het cluster.
Wanneer de terminal verbinding maakt, typt
kubectl
u om de Kubernetes-opdrachtregelclient te openen.Voer de volgende opdracht uit:
kubectl cluster-info
Zoek de URL voor het dashboard. Bijvoorbeeld:
https://k8-1258.local.cloudapp.azurestack.external/api/v1/namespaces/kube-system/services/https:kubernetes-dashboard:/proxy
Pak het zelfondertekende certificaat uit en converteer het naar de PFX-indeling. Voer de volgende opdracht uit:
sudo su openssl pkcs12 -export -out /etc/kubernetes/certs/client.pfx -inkey /etc/kubernetes/certs/client.key -in /etc/kubernetes/certs/client.crt -certfile /etc/kubernetes/certs/ca.crt
Haal de lijst met geheimen op in de kube-system-naamruimte . Voer de volgende opdracht uit:
kubectl -n kube-system get secrets
Noteer de waarde kubernetes-dashboard-token-XXXXX<>.
Haal het token op en sla het op. Werk de
kubernetes-dashboard-token-<####>
bij met de geheime waarde uit de vorige stap.kubectl -n kube-system describe secret kubernetes-dashboard-token-<####>| awk '$1=="token:"{print $2}'
Het certificaat importeren
Open Filezilla en maak verbinding met het besturingsvlakknooppunt. U hebt het volgende nodig:
- het openbare IP-adres van het besturingsvlakknooppunt
- de gebruikersnaam
- het privégeheim
- SFTP - SSH File Transfer Protocol gebruiken
Kopieer
/etc/kubernetes/certs/client.pfx
en/etc/kubernetes/certs/ca.crt
naar uw Azure Stack Hub-beheermachine.Noteer de bestandslocaties. Werk het script bij met de locaties en open PowerShell met een prompt met verhoogde bevoegdheid. Voer het bijgewerkte script uit:
Import-Certificate -Filepath "ca.crt" -CertStoreLocation cert:\LocalMachine\Root $pfxpwd = Get-Credential -UserName 'Enter password below' -Message 'Enter password below' Import-PfxCertificate -Filepath "client.pfx" -CertStoreLocation cert:\CurrentUser\My -Password $pfxpwd.Password
Het Kubernetes-dashboard openen
Schakel de pop-upblokkering in uw webbrowser uit.
Wijs uw browser naar de URL die u hebt genoteerd toen u de opdracht
kubectl cluster-info
hebt uitgevoerd. Bijvoorbeeld: https://azurestackdomainnamefork8sdashboard/api/v1/namespaces/kube-system/services/https:kubernetes-dashboard:/proxySelecteer het clientcertificaat.
Voer het token in.
Maak opnieuw verbinding met de bash-opdrachtregel op het besturingsvlakknooppunt en geef machtigingen aan
kubernetes-dashboard
. Voer de volgende opdracht uit:kubectl create clusterrolebinding kubernetes-dashboard --clusterrole=cluster-admin --serviceaccount=kube-system:kubernetes-dashboard
Het script geeft
kubernetes-dashboard
cloudbeheerdersbevoegdheden. Zie Voor clusters met RBAC-functionaliteit voor meer informatie.
U kunt het dashboard gebruiken. Zie Kubernetes Web UI Dashboard voor meer informatie over het Kubernetes-dashboard
Problemen oplossen
Aangepaste virtuele netwerken
Als u verbindingsproblemen ondervindt bij het openen van het Kubernetes-dashboard nadat u Kubernetes hebt geïmplementeerd in een aangepast virtueel netwerk, moet u ervoor zorgen dat doelsubnetten zijn gekoppeld aan de routeringstabel en de netwerkbeveiligingsgroepresources die zijn gemaakt door de AKS-engine.
Zorg ervoor dat de regels voor netwerkbeveiligingsgroepen communicatie toestaan tussen de besturingsvlakknooppunten en het IP-adres van de Kubernetes-dashboardpod. Dit kan worden gevalideerd met behulp van de ping-opdracht van een besturingsvlakknooppunt.
Volgende stappen
Kubernetes implementeren in Azure Stack Hub
Een Kubernetes-cluster toevoegen aan marketplace (voor de Azure Stack Hub-operator)