Accedere al dashboard di Kubernetes nell'hub Azure StackAccess the Kubernetes Dashboard in Azure Stack Hub

Nota

Usare l'elemento Kubernetes Azure Stack Marketplace solo per distribuire i cluster come modello di prova.Only use the Kubernetes Azure Stack Marketplace item to deploy clusters as a proof-of-concept. Per i cluster Kubernetes supportati in Azure Stack, usare il motore AKS.For supported Kubernetes clusters on Azure Stack, use the AKS engine.

Kubernetes include un dashboard Web che è possibile usare per le operazioni di gestione di base.Kubernetes includes a web dashboard that you can use for basic management operations. Questo dashboard consente di visualizzare lo stato di integrità di base e le metriche per le applicazioni, creare e distribuire servizi e modificare applicazioni esistenti.This dashboard lets you view basic health status and metrics for your applications, create and deploy services, and edit existing applications. Questo articolo illustra come configurare il dashboard di Kubernetes nell'hub Azure Stack.This article shows you how to set up the Kubernetes dashboard on Azure Stack Hub.

Prerequisiti per il dashboard di KubernetesPrerequisites for Kubernetes Dashboard

  • Cluster Kubernetes Hub Azure StackAzure Stack Hub Kubernetes cluster

    È necessario avere distribuito un cluster Kubernetes nell'hub Azure Stack.You will need to have deployed a Kubernetes cluster to Azure Stack Hub. Per ulteriori informazioni, vedere la pagina relativa alla distribuzione di Kubernetes.For more information, see Deploy Kubernetes.

  • Client SSHSSH client

    È necessario un client SSH per la sicurezza connettersi al nodo master del cluster.You'll need an SSH client to security connect to your master node in the cluster. Se si usa Windows, è possibile usare Putty.If you're using Windows, you can use Putty. Sarà necessaria la chiave privata usata per la distribuzione del cluster Kubernetes.You will need the private key used when you deployed your Kubernetes cluster.

  • FTP (PSCP)FTP (PSCP)

    Potrebbe inoltre essere necessario un client FTP che supporti SSH e SSH File Transfer Protocol per trasferire i certificati dal nodo master al computer di gestione Hub Azure Stack.You may also need an FTP client that supports SSH and SSH File Transfer Protocol to transfer the certificates from the master node to your Azure Stack Hub management machine. È possibile usare FileZilla.You can use FileZilla. Sarà necessaria la chiave privata usata per la distribuzione del cluster Kubernetes.You will need the private key used when you deployed your Kubernetes cluster.

Panoramica dei passaggi per abilitare il dashboardOverview of steps to enable dashboard

  1. Esportare i certificati Kubernetes dal nodo master del cluster.Export the Kubernetes certificates from the master node in the cluster.
  2. Importare i certificati nel computer di gestione dell'hub Azure Stack.Import the certificates to your Azure Stack Hub management machine.
  3. Aprire il dashboard Web di Kubernetes.Open the Kubernetes web dashboard.

Esporta certificato dal masterExport certificate from the master

È possibile recuperare l'URL per il dashboard dal nodo master nel cluster.You can retrieve the URL for the dashboard from the master node in your cluster.

  1. Ottenere l'indirizzo IP pubblico e il nome utente per il master del cluster dal dashboard dell'hub Azure Stack.Get the public IP address and username for your cluster master from the Azure Stack Hub dashboard. Per ottenere queste informazioni:To get this information:

    • Accedere al portale dell'hub Azure Stack https://portal.local.azurestack.external/ .Sign in to the Azure Stack Hub portal https://portal.local.azurestack.external/.
    • Selezionare tutti i servizi > tutte le risorse.Select All services > All resources. Trovare il master nel gruppo di risorse cluster.Find the master in your cluster resource group. Il nome del database master è k8s-master-<sequence-of-numbers> .The master is named k8s-master-<sequence-of-numbers>.
  2. Aprire il nodo master nel portale.Open the master node in the portal. Copiare l'indirizzo IP pubblico .Copy the Public IP address. Fare clic su Connetti per ottenere il nome utente nella casella account di accesso con account locale VM .Click Connect to get your user name in the Login using VM local account box. Si tratta dello stesso nome utente impostato durante la creazione del cluster.This is the same user name you set when creating your cluster. Usare l'indirizzo IP pubblico anziché l'indirizzo IP privato elencato nel pannello Connetti.Use the public IP address rather than the private IP address listed in the connect blade.

  3. Aprire un client SSH per connettersi al database master.Open an SSH client to connect to the master. Se si lavora in Windows, è possibile usare Putty per creare la connessione.If you are working on Windows, you can use Putty to create the connection. Si userà l'indirizzo IP pubblico per il nodo master, il nome utente e si aggiungerà la chiave privata usata durante la creazione del cluster.You will use the public IP address for the master node, the username, and add the private key you used when creating the cluster.

  4. Quando il terminale si connette, digitare kubectl per aprire il client da riga di comando Kubernetes.When the terminal connects, type kubectl to open the Kubernetes command-line client.

  5. Eseguire il comando seguente:Run the following command:

    kubectl cluster-info 
    

    Trovare l'URL per il dashboard.Find the URL for the dashboard. Ad esempio: https://k8-1258.local.cloudapp.azurestack.external/api/v1/namespaces/kube-system/services/https:kubernetes-dashboard:/proxyFor example: https://k8-1258.local.cloudapp.azurestack.external/api/v1/namespaces/kube-system/services/https:kubernetes-dashboard:/proxy

  6. Estrarre il certificato autofirmato e convertirlo nel formato PFX.Extract the self-signed cert and convert it to the PFX format. Eseguire il comando seguente:Run the following command:

    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 
    
  7. Ottenere l'elenco dei segreti nello spazio dei nomi Kube-System .Get the list of secrets in the kube-system namespace. Eseguire il comando seguente:Run the following command:

    kubectl -n kube-system get secrets
    

    Prendere nota di kubernetes-dashboard-token- <XXXXX> value.Make note of the kubernetes-dashboard-token-<XXXXX> value.

  8. Ottenere il token e salvarlo.Get the token and save it. Aggiornare kubernetes-dashboard-token-<####> con il valore Secret del passaggio precedente.Update the kubernetes-dashboard-token-<####> with the secret value from the previous step.

    kubectl -n kube-system describe secret kubernetes-dashboard-token-<####>| awk '$1=="token:"{print $2}' 
    

Importare il certificatoImport the certificate

  1. Aprire FileZilla e connettersi al nodo master.Open Filezilla and connect to the master node. Sarà necessario:You will need the:

    • IP pubblico del nodo masterthe master node public IP
    • nome utentethe username
    • segreto privatothe private secret
    • Usare SFTP-SSH File Transfer ProtocolUse SFTP - SSH File Transfer Protocol
  2. Copiare /etc/kubernetes/certs/client.pfx e /etc/kubernetes/certs/ca.crt nel computer di gestione Hub Azure stack.Copy /etc/kubernetes/certs/client.pfx and /etc/kubernetes/certs/ca.crt to your Azure Stack Hub management machine.

  3. Prendere nota dei percorsi dei file.Make note of the file locations. Aggiornare lo script con i percorsi, quindi aprire PowerShell con un prompt con privilegi elevati.Update the script with the locations, and then open PowerShell with an elevated prompt. Eseguire lo script aggiornato:Run the updated script:

    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 
    

Aprire il dashboard di KubernetesOpen the Kubernetes dashboard

  1. Disabilitare il blocco popup sul Web browser.Disable the pop-up blocker on your Web browser.

  2. Posizionare il browser sull'URL indicato quando è stato eseguito il comando kubectl cluster-info .Point your browser to the URL noted when you ran the command kubectl cluster-info. Ad esempio: https: / /azurestackdomainnamefork8sdashboard/API/V1/Namespaces/Kube-System/Services/https: kubernetes-Dashboard:/proxyFor example: https://azurestackdomainnamefork8sdashboard/api/v1/namespaces/kube-system/services/https:kubernetes-dashboard:/proxy

  3. Selezionare il certificato client.Select the client certificate.

  4. Immettere il token.Enter the token.

  5. Riconnettersi alla riga di comando bash nel nodo master e concedere le autorizzazioni a kubernetes-dashboard .Reconnect to the bash command line on the master node and give permissions to kubernetes-dashboard. Eseguire il comando seguente:Run the following command:

    kubectl create clusterrolebinding kubernetes-dashboard --clusterrole=cluster-admin --serviceaccount=kube-system:kubernetes-dashboard 
    

    Lo script assegna i kubernetes-dashboard privilegi di amministratore del cloud.The script gives kubernetes-dashboard Cloud administrator privileges. Per ulteriori informazioni, vedere per i cluster abilitati per RBAC.For more information, see For RBAC-enabled clusters.

È possibile usare il dashboard.You can use the dashboard. Per altre informazioni sul dashboard di Kubernetes, vedere Dashboard dell'interfaccia utente Web di KubernetesFor more information on the Kubernetes dashboard, see Kubernetes Web UI Dashboard

Dashboard Kubernetes Hub Azure Stack

Risoluzione dei problemiTroubleshooting

Reti virtuali personalizzateCustom Virtual Networks

Se si riscontrano problemi di connettività durante l'accesso al dashboard di Kubernetes dopo aver distribuito Kubernetes in una rete virtuale personalizzata, assicurarsi che le subnet di destinazione siano collegate alla tabella di route e alle risorse del gruppo di sicurezza di rete create dal motore AKS.If you face connectivity issues accessing the Kubernetes dashboard after you deploy Kubernetes to a custom virtual network, ensure that target subnets are linked to the route table and network security group resources that were created by the AKS engine.

Assicurarsi che le regole del gruppo di sicurezza di rete consentano la comunicazione tra i nodi master e l'IP del Pod del dashboard Kubernetes.Make sure that the network security group rules allow communication between the master nodes and the Kubernetes dashboard pod IP. Questa operazione può essere convalidata tramite il comando ping di un nodo master.This can be validated by using the ping command from a master node.

Passaggi successiviNext steps

Distribuire Kubernetes nell'hub Azure StackDeploy Kubernetes to Azure Stack Hub

Aggiungere un cluster Kubernetes al Marketplace (per l'operatore Azure Stack Hub)Add a Kubernetes cluster to the Marketplace (for the Azure Stack Hub operator)

Kubernetes in AzureKubernetes on Azure