Получение доступа к панели мониторинга Kubernetes в Azure Stack HubAccess the Kubernetes Dashboard in Azure Stack Hub

Примечание

Используйте элемент Kubernetes Azure Stack Marketplace для развертывания кластеров в качестве проверки концепции.Only use the Kubernetes Azure Stack Marketplace item to deploy clusters as a proof-of-concept. Для поддерживаемых кластеров Kubernetes в Azure Stack используйтеобработчик AKS.For supported Kubernetes clusters on Azure Stack, use the AKS engine.

Служба Kubernetes включает в себя веб-панель мониторинга, которую можно использовать для выполнения базовых операций управления.Kubernetes includes a web dashboard that you can use for basic management operations. Эта панель мониторинга позволяет просматривать базовое состояние работоспособности и метрики для приложений, создавать и развертывать службы, а также изменять существующие приложения.This dashboard lets you view basic health status and metrics for your applications, create and deploy services, and edit existing applications. В этой статье показано, как настроить панель мониторинга Kubernetes в Azure Stack Hub.This article shows you how to set up the Kubernetes dashboard on Azure Stack Hub.

Необходимые компоненты для настройки доступа к панели мониторинга KubernetesPrerequisites for Kubernetes Dashboard

  • кластер Kubernetes в Azure Stack HubAzure Stack Hub Kubernetes cluster

    Вам нужно будет развернуть кластер Kubernetes в Azure Stack Hub.You will need to have deployed a Kubernetes cluster to Azure Stack Hub. Дополнительные сведения см. в статье Развертывание Kubernetes в Azure Stack.For more information, see Deploy Kubernetes.

  • Клиент SSH.SSH client

    SSH-клиент необходим для безопасного подключения к главному узлу в кластере.You'll need an SSH client to security connect to your master node in the cluster. В Windows вы можете использовать Putty.If you're using Windows, you can use Putty. Вам понадобится закрытый ключ, используемый при развертывании кластера Kubernetes.You will need the private key used when you deployed your Kubernetes cluster.

  • Протокол FTP (PSCP).FTP (PSCP)

    Вам также может понадобиться FTP-клиент, который поддерживает SSH и протокол передачи файлов SSH для передачи сертификатов с главного узла на ваш компьютер для управления Azure Stack Hub.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. Вы можете использовать FileZilla.You can use FileZilla. Вам понадобится закрытый ключ, используемый при развертывании кластера Kubernetes.You will need the private key used when you deployed your Kubernetes cluster.

Обзор шагов для включения панели мониторингаOverview of steps to enable dashboard

  1. Экспорт сертификатов Kubernetes с главного узла в кластере.Export the Kubernetes certificates from the master node in the cluster.
  2. Импорт сертификатов на компьютер для управления Azure Stack Hub.Import the certificates to your Azure Stack Hub management machine.
  3. Открытие веб-панели мониторинга Kubernetes.Open the Kubernetes web dashboard.

Экспорт сертификата с главного узлаExport certificate from the master

Вы можете извлечь URL-адрес для панели мониторинга с главного узла в вашем кластере.You can retrieve the URL for the dashboard from the master node in your cluster.

  1. Получите общедоступный IP-адрес и имя пользователя для главного кластера на панели мониторинга Azure Stack Hub.Get the public IP address and username for your cluster master from the Azure Stack Hub dashboard. Для этого сделайте следующее:To get this information:

    • Войдите на портал Azure Stack Hub: https://portal.local.azurestack.external/.Sign in to the Azure Stack Hub portal https://portal.local.azurestack.external/.
    • Выберите Все службы > Все ресурсы.Select All services > All resources. Найдите главный узел в группе кластерных ресурсов.Find the master in your cluster resource group. Имя главного узла —k8s-master-<sequence-of-numbers>.The master is named k8s-master-<sequence-of-numbers>.
  2. Откройте главный узел на портале.Open the master node in the portal. Скопируйте общедоступный IP-адрес.Copy the Public IP address. Щелкните Подключиться, чтобы имя пользователя отобразилось в поле Вход с использованием локальной учетной записи ВМ.Click Connect to get your user name in the Login using VM local account box. Это имя пользователя вы указали при создании кластера.This is the same user name you set when creating your cluster. Используйте общедоступный IP-адрес вместо частного адреса, указанного в колонке подключения.Use the public IP address rather than the private IP address listed in the connect blade.

  3. Подключитесь к главному узлу, используя клиент SSH.Open an SSH client to connect to the master. Если вы работаете в Windows, можно использовать Putty для создания подключения.If you are working on Windows, you can use Putty to create the connection. Вы будете использовать общедоступный IP-адрес и имя пользователя для главного узла, а также добавите закрытый ключ, указанный при создании кластера.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. После подключения терминала введите kubectl, чтобы открыть клиент командной строки Kubernetes.When the terminal connects, type kubectl to open the Kubernetes command-line client.

  5. Выполните следующую команду:Run the following command:

    kubectl cluster-info 
    

    Найдите URL-адрес для панели мониторинга.Find the URL for the dashboard. Например: 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. Извлеките самозаверяющий сертификат и преобразуйте его в формат PFX.Extract the self-signed cert and convert it to the PFX format. Выполните следующую команду: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. Получите список секретов в пространстве имен kube-system.Get the list of secrets in the kube-system namespace. Выполните следующую команду:Run the following command:

    kubectl -n kube-system get secrets
    

    Запишите значение kubernetes-dashboard-token-<XXXXX>.Make note of the kubernetes-dashboard-token-<XXXXX> value.

  8. Получите и сохраните токен.Get the token and save it. Обновите значение kubernetes-dashboard-token-<####>, указав значение секрета из предыдущего шага.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}' 
    

Импорт сертификатаImport the certificate

  1. Откройте Filezilla и подключитесь к главному узлу.Open Filezilla and connect to the master node. Вам потребуется следующее:You will need the:

    • общедоступный IP-адрес главного узла;the master node public IP
    • имя пользователя;the username
    • секрет;the private secret
    • протокол SFTP (протокол передачи файлов SSH) .Use SFTP - SSH File Transfer Protocol
  2. Скопируйте /etc/kubernetes/certs/client.pfx и /etc/kubernetes/certs/ca.crt на свой компьютер для управления Azure Stack Hub.Copy /etc/kubernetes/certs/client.pfx and /etc/kubernetes/certs/ca.crt to your Azure Stack Hub management machine.

  3. Запишите расположения файлов.Make note of the file locations. Обновите сценарий, указав эти расположения, а затем откройте PowerShell в командной строке с повышенными привилегиями.Update the script with the locations, and then open PowerShell with an elevated prompt. Выполните обновленный сценарий.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 
    

Открытие панели мониторинга KubernetesOpen the Kubernetes dashboard

  1. Отключите блокировку всплывающих окон в веб-браузере.Disable the pop-up blocker on your Web browser.

  2. Укажите в браузере URL-адрес, записанный после выполнения команды kubectl cluster-info.Point your browser to the URL noted when you ran the command kubectl cluster-info. Например, https://azurestackdomainnamefork8sdashboard/api/v1/namespaces/kube-system/services/https:kubernetes-dashboard:/proxy.For example: https://azurestackdomainnamefork8sdashboard/api/v1/namespaces/kube-system/services/https:kubernetes-dashboard:/proxy

  3. Выберите сертификат клиента.Select the client certificate.

  4. Введите токен.Enter the token.

  5. Повторно подключитесь к командной строке Bash на главном узле и предоставьте разрешения к kubernetes-dashboard.Reconnect to the bash command line on the master node and give permissions to kubernetes-dashboard. Выполните следующую команду:Run the following command:

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

    Сценарий предоставляет kubernetes-dashboard права администратора облака.The script gives kubernetes-dashboard Cloud administrator privileges. Дополнительные сведения см. в статье Подключение веб-панели мониторинга Kubernetes в Службе Azure Kubernetes (AKS).For more information, see For RBAC-enabled clusters.

Теперь вы можете использовать панель мониторинга.You can use the dashboard. Дополнительные сведения о панели мониторинга Kubernetes см. в этой статье.For more information on the Kubernetes dashboard, see Kubernetes Web UI Dashboard

Панель мониторинга Kubernetes в Azure Stack Hub

Устранение неполадокTroubleshooting

Настраиваемые виртуальные сетиCustom Virtual Networks

Если после развертывания Kubernetes в настраиваемой виртуальной сети у вас возникнут проблемы с подключением к панели мониторинга Kubernetes, убедитесь, что целевые подсети связаны с таблицей маршрутизации и ресурсами группы безопасности сети, созданными подсистемой 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.

Проверьте, разрешают ли правила группы безопасности сети обмен данными между главными узлами и IP-адресом pod панели мониторинга Kubernetes.Make sure that the network security group rules allow communication between the master nodes and the Kubernetes dashboard pod IP. Для этого используйте команду ping на главном узле.This can be validated by using the ping command from a master node.

Дальнейшие действияNext steps

Развертывание Kubernetes в Azure Stack HubDeploy Kubernetes to Azure Stack Hub

Добавление кластера Kubernetes в Marketplace (для оператора Azure Stack Hub)Add a Kubernetes cluster to the Marketplace (for the Azure Stack Hub operator)

Kubernetes в AzureKubernetes on Azure