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

Область применения: интегрированные системы Azure Stack и Пакет средств разработки Azure StackApplies to: Azure Stack integrated systems and Azure Stack Development Kit

Примечание

Система Kubernetes доступна в Azure Stack в предварительной версии.Kubernetes on Azure Stack is in preview. Сейчас в предварительной версии не поддерживаются сценарии работы с Azure Stack в автономном режиме.An Azure Stack disconnected scenario is not currently supported by the preview. Для сценариев разработки и тестирования используйте только элемент из marketplace.Only use the marketplace item for development and test scenarios.

Служба 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.This article shows you how to set up the Kubernetes dashboard on Azure Stack.

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

  • Кластер Kubernetes в Azure Stack.Azure Stack Kubernetes cluster

    Вам нужно будет развернуть кластер Kubernetes в Azure Stack.You will need to have deployed a Kubernetes cluster to Azure Stack. Дополнительные сведения см. в статье Развертывание 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.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 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.Import the certificates to your Azure Stack 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.Get the public IP address and username for your cluster master from the Azure Stack dashboard. Для этого сделайте следующее:To get this information:

    • Войдите на портал Azure Stack.Sign in to the Azure Stack portal
    • Выберите Все службы > Все ресурсы.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.Copy /etc/kubernetes/certs/client.pfx and /etc/kubernetes/certs/ca.crt to your Azure Stack 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

Дополнительная информацияNext steps

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

Добавление Kubernetes в Azure Stack MarketplaceAdd a Kubernetes cluster to the Marketplace (for the Azure Stack operator)

Kubernetes в AzureKubernetes on Azure