Aceder ao Dashboard do Kubernetes no Azure Stack Hub
Nota
Utilize apenas o item Marketplace do Azure Stack do Kubernetes para implementar os clusters como prova de conceito. Para clusters do Kubernetes suportados no Azure Stack, utilize o motor AKS.
O Kubernetes inclui um dashboard Web que pode utilizar para operações de gestão básicas. Este dashboard permite-lhe ver o estado de funcionamento básico e as métricas das suas aplicações, criar e implementar serviços e editar aplicações existentes. Este artigo mostra-lhe como configurar o dashboard do Kubernetes no Azure Stack Hub.
Pré-requisitos do Dashboard do Kubernetes
Cluster do Kubernetes do Azure Stack Hub
Terá de ter implementado um cluster do Kubernetes no Azure Stack Hub. Para obter mais informações, veja Implementar o Kubernetes.
Cliente SSH
Precisará de um cliente SSH para estabelecer ligação de segurança ao nó do plano de controlo no cluster. Se estiver a utilizar o Windows, pode utilizar o Putty. Precisará da chave privada utilizada quando implementar o cluster do Kubernetes.
FTP (PSCP)
Também poderá precisar de um cliente FTP que suporte SSH e SSH File Transfer Protocol para transferir os certificados do nó do plano de controlo para o computador de gestão do Azure Stack Hub. Pode utilizar o FileZilla. Precisará da chave privada utilizada quando implementar o cluster do Kubernetes.
Descrição geral dos passos para ativar o dashboard
- Exporte os certificados do Kubernetes do nó do plano de controlo no cluster.
- Importe os certificados para o computador de gestão do Azure Stack Hub.
- Abra o dashboard Web do Kubernetes.
Exportar certificado do mestre
Pode obter o URL do dashboard a partir do nó do plano de controlo no cluster.
Obtenha o endereço IP público e o nome de utilizador do seu mestre de cluster no dashboard do Azure Stack Hub. Para obter estas informações:
- Inicie sessão no portal
https://portal.local.azurestack.external/
do Azure Stack Hub. - Selecione Todos os serviços>Todos os recursos. Localize o mestre no grupo de recursos do cluster. O mestre chama-se
k8s-master-<sequence-of-numbers>
.
- Inicie sessão no portal
Abra o nó do plano de controlo no portal. Copie o endereço IP público . Clique em Ligar para obter o seu nome de utilizador na caixa Iniciar sessão com a conta local da VM . Este é o mesmo nome de utilizador que definiu ao criar o cluster. Utilize o endereço IP público em vez do endereço IP privado listado no painel ligar.
Abra um cliente SSH para ligar ao mestre. Se estiver a trabalhar no Windows, pode utilizar o Putty para criar a ligação. Irá utilizar o endereço IP público para o nó do plano de controlo, o nome de utilizador e adicionar a chave privada que utilizou ao criar o cluster.
Quando o terminal se ligar, escreva
kubectl
para abrir o cliente da linha de comandos do Kubernetes.Execute o seguinte comando:
kubectl cluster-info
Localize o URL do dashboard. Por exemplo:
https://k8-1258.local.cloudapp.azurestack.external/api/v1/namespaces/kube-system/services/https:kubernetes-dashboard:/proxy
Extraia o certificado autoassinado e converta-o no formato PFX. Execute o seguinte comando:
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
Obtenha a lista de segredos no espaço de nomes kube-system . Execute o seguinte comando:
kubectl -n kube-system get secrets
Anote o valor kubernetes-dashboard-token-XXXXX<>.
Obtenha o token e guarde-o. Atualize o
kubernetes-dashboard-token-<####>
com o valor do segredo do passo anterior.kubectl -n kube-system describe secret kubernetes-dashboard-token-<####>| awk '$1=="token:"{print $2}'
Importar o certificado
Abra Filezilla e ligue ao nó do plano de controlo. Irá precisar de:
- o IP público do nó do plano de controlo
- o nome de utilizador
- o segredo privado
- Utilizar SFTP – Protocolo de Transferência de Ficheiros SSH
Copie
/etc/kubernetes/certs/client.pfx
e/etc/kubernetes/certs/ca.crt
para o computador de gestão do Azure Stack Hub.Anote as localizações dos ficheiros. Atualize o script com as localizações e, em seguida, abra o PowerShell com um pedido 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 dashboard do Kubernetes
Desative o bloqueador de janelas de pop-up no browser.
Aponte o browser para o URL indicado quando executou o comando
kubectl cluster-info
. Por exemplo: https://azurestackdomainnamefork8sdashboard/api/v1/namespaces/kube-system/services/https:kubernetes-dashboard:/proxySelecione o certificado de cliente.
Introduza o token.
Volte a ligar-se à linha de comandos bash no nó do plano de controlo e dê permissões para
kubernetes-dashboard
. Execute o seguinte comando:kubectl create clusterrolebinding kubernetes-dashboard --clusterrole=cluster-admin --serviceaccount=kube-system:kubernetes-dashboard
O script dá privilégios
kubernetes-dashboard
de administrador da Cloud. Para obter mais informações, veja Para clusters compatíveis com RBAC.
Pode utilizar o dashboard. Para obter mais informações sobre o dashboard do Kubernetes, veja Dashboard da IU da Web do Kubernetes
Resolução de problemas
Redes Virtuais Personalizadas
Se tiver problemas de conectividade ao aceder ao dashboard do Kubernetes depois de implementar o Kubernetes numa rede virtual personalizada, certifique-se de que as sub-redes de destino estão ligadas à tabela de rotas e aos recursos do grupo de segurança de rede que foram criados pelo motor do AKS.
Confirme que as regras do grupo de segurança de rede permitem a comunicação entre os nós do plano de controlo e o IP do pod do dashboard do Kubernetes. Isto pode ser validado com o comando ping de um nó de plano de controlo.
Passos seguintes
Implementar o Kubernetes no Azure Stack Hub
Adicionar um cluster do Kubernetes ao Marketplace (para o operador do Azure Stack Hub)