Acessar o Painel do Kubernetes Azure Stack Hub

Observação

Use apenas o item do Kubernetes Azure Stack Marketplace para implantar clusters como uma prova de conceito. Para clusters do Kubernetes com suporte Azure Stack, use o mecanismo do AKS.

O Kubernetes inclui um painel da Web que você pode usar para operações básicas de gerenciamento. Este painel permite exibir o status de integridade básico e as métricas dos seus aplicativos, criar e implantar serviços e editar aplicativos existentes. Este artigo mostra como configurar o painel do Kubernetes no Azure Stack Hub.

Pré-requisitos para o Painel do Kubernetes

  • Azure Stack Hub cluster kubernetes

    Você precisará ter implantado um cluster kubernetes para Azure Stack Hub. Para obter mais informações, consulte Implantar o Kubernetes.

  • Cliente SSH

    Você precisará de um cliente SSH para se conectar à segurança ao nó mestre no cluster. Se você estiver usando Windows, poderá usar Putty. Você precisará da chave privada usada quando implantou o cluster do Kubernetes.

  • FTP (PSCP)

    Você também pode precisar de um cliente FTP que dá suporte protocolo FTP SSH e SSH para transferir os certificados do nó mestre para o computador de Azure Stack Hub gerenciamento. Você pode usar o FileZilla. Você precisará da chave privada usada quando implantou o cluster do Kubernetes.

Visão geral das etapas para habilitar o painel

  1. Exporte os certificados do Kubernetes do nó mestre no cluster.
  2. Importe os certificados para o computador de Azure Stack Hub gerenciamento.
  3. Abra o painel da Web do Kubernetes.

Exportar certificado do mestre

Você pode recuperar a URL do painel do nó mestre no cluster.

  1. Obter o endereço IP público e o nome de usuário do seu mestre de cluster no painel Azure Stack Hub dados. Para obter essas informações:

    • Entre no portal Azure Stack Hub https://portal.local.azurestack.external/ .
    • Selecione Todos os serviçosTodos os recursos. Encontre o mestre em seu grupo de recursos de cluster. O mestre é chamado k8s-master-<sequence-of-numbers> .
  2. Abra o nó mestre no portal. Copie o endereço IP público. Clique Conexão para obter seu nome de usuário na caixa Logon usando a conta local da VM. Esse é o mesmo nome de usuário que você definiu ao criar o cluster. Use o endereço IP público em vez do endereço IP privado listado na folha de conexão.

  3. Abra um cliente SSH para se conectar ao mestre. Se você estiver trabalhando em Windows, poderá usar Putty para criar a conexão. Você usará o endereço IP público para o nó mestre, o nome de usuário e adicionará a chave privada usada ao criar o cluster.

  4. Quando o terminal se conectar, digite para abrir o cliente de linha kubectl de comando do Kubernetes.

  5. Execute o comando a seguir:

    kubectl cluster-info 
    

    Encontre a URL do painel. Por exemplo: https://k8-1258.local.cloudapp.azurestack.external/api/v1/namespaces/kube-system/services/https:kubernetes-dashboard:/proxy

  6. Extraia o certificado auto-assinado e converta-o no formato PFX. Execute o comando a seguir:

    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. Obter a lista de segredos no namespace kube-system. Execute o comando a seguir:

    kubectl -n kube-system get secrets
    

    Anote o valor kubernetes-dashboard-token- <> XXXXX.

  8. Obter o token e salvá-lo. Atualize kubernetes-dashboard-token-<####> o com o valor secreto da etapa anterior.

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

Importar o certificado

  1. Abra o Filezilla e conecte-se ao nó mestre. Você precisará do:

    • o IP público do nó mestre
    • o nome de usuário
    • o segredo privado
    • Usar SFTP – SSH protocolo FTP
  2. Copie /etc/kubernetes/certs/client.pfx e para seu computador de Azure Stack Hub /etc/kubernetes/certs/ca.crt gerenciamento.

  3. Anote os locais do arquivo. Atualize o script com os locais e, em seguida, abra o PowerShell com um prompt elevado. Execute o script atualizado:

    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 
    

Abrir o painel do Kubernetes

  1. Desabilite o bloqueador pop-up no navegador da Web.

  2. Aponte o navegador para a URL que você anotou quando você correu o comando kubectl cluster-info . Por exemplo: https://azurestackdomainnamefork8sdashboard/api/v1/namespaces/kube-system/services/https:kubernetes-dashboard:/proxy

  3. Selecione o certificado do cliente.

  4. Insira o token.

  5. Reconecte-se à linha de comando bash no nó mestre e dê permissões a kubernetes-dashboard . Execute o comando a seguir:

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

    O script fornece kubernetes-dashboard privilégios de administrador de nuvem. Para obter mais informações, consulte Para clusters habilitados para RBAC.

Você pode usar o painel. Para obter mais informações sobre o painel do Kubernetes, consulte Painel da interface do usuário da Web do Kubernetes

Azure Stack Hub Painel do Kubernetes

Solução de problemas

Redes virtuais personalizadas

Se você enfrentar problemas de conectividade ao acessar o painel do Kubernetes depois de implantar o Kubernetes em uma rede virtual personalizada,verifique se as sub-redes de destino estão vinculadas à tabela de rotas e aos recursos do grupo de segurança de rede que foram criados pelo mecanismo do AKS.

Certifique-se de que as regras do grupo de segurança de rede permitam a comunicação entre os nós mestres e o IP do pod do painel do Kubernetes. Isso pode ser validado usando o comando ping de um nó mestre.

Próximas etapas

Implantar o Kubernetes no Azure Stack Hub

Adicionar um cluster kubernetes ao Marketplace (para o operador Azure Stack Hub)

Kubernetes no Azure