Partager via


Accéder au tableau de bord Kubernetes dans Azure Stack Hub

Remarque

Utilisez uniquement l’élément de la Place de marché Kubernetes Azure Stack pour déployer des clusters en tant que preuve de concept. Pour les clusters Kubernetes pris en charge sur Azure Stack, utilisez le moteur AKS.

Kubernetes inclut un tableau de bord web que vous pouvez utiliser pour les opérations de gestion de base. Ce tableau de bord vous permet d’afficher l’état d’intégrité et les métriques de base de vos applications, de créer et de déployer des services et de modifier des applications existantes. Cet article explique comment configurer le tableau de bord Kubernetes sur Azure Stack Hub.

Conditions préalables pour le tableau de bord Kubernetes

  • Cluster Kubernetes Azure Stack Hub : cluster Kubernetes déployé sur Azure Stack Hub. Pour plus d’informations, consultez Déployer Kubernetes.
  • Client SSH : un client SSH pour la sécurité se connecter à votre nœud de plan de contrôle dans le cluster. Si vous utilisez Windows, vous pouvez utiliser Putty. Vous avez besoin de la clé privée que vous avez utilisée lorsque vous avez déployé votre cluster Kubernetes.
  • FTP (PSCP) : client FTP qui prend en charge SSH et le protocole SSH File Transfer Protocol pour transférer les certificats du nœud du plan de contrôle vers votre machine de gestion Azure Stack Hub. Vous pouvez utiliser FileZilla. Vous avez besoin de la clé privée que vous avez utilisée lorsque vous avez déployé votre cluster Kubernetes.

Vue d’ensemble des étapes permettant d’activer le tableau de bord

  1. Exportez les certificats Kubernetes à partir du nœud du plan de contrôle dans le cluster.
  2. Importez les certificats sur votre machine de gestion Azure Stack Hub.
  3. Ouvrez le tableau de bord web Kubernetes.

Exporter le certificat à partir du maître

Vous pouvez récupérer l’URL du tableau de bord à partir du nœud du plan de contrôle dans votre cluster.

  1. Obtenez l’adresse IP publique et le nom d’utilisateur de votre cluster principal à partir du tableau de bord Azure Stack Hub. Pour obtenir ces informations :

    • Connectez-vous au portail Azure Stack Hub à l’adresse https://portal.local.azurestack.external/.
    • Sélectionnez Tous les services>Toutes les ressources. Recherchez le maître dans votre groupe de ressources de cluster. Le maître est nommé k8s-master-<sequence-of-numbers>.
  2. Ouvrez le nœud du plan de contrôle dans le portail. Copiez l’adresse IP publique . Sélectionnez Se connecter pour obtenir votre nom d’utilisateur dans la zone Connexion à l’aide du compte local de la machine virtuelle . Il s’agit du même nom d’utilisateur que celui que vous avez défini lors de la création de votre cluster. Utilisez l’adresse IP publique plutôt que l’adresse IP privée répertoriée dans le panneau de connexion.

  3. Ouvrez un client SSH pour vous connecter au cluster principal. Si vous utilisez Windows, vous pouvez utiliser Putty pour créer la connexion. Vous utilisez l’adresse IP publique pour le nœud du plan de contrôle, le nom d’utilisateur et ajoutez la clé privée que vous avez utilisée lors de la création du cluster.

  4. Lorsque le terminal se connecte, tapez kubectl pour ouvrir le client de ligne de commande Kubernetes.

  5. Exécutez la commande suivante:

    kubectl cluster-info 
    

    Recherchez l’URL du tableau de bord. Par exemple : https://k8-1258.local.cloudapp.azurestack.external/api/v1/namespaces/kube-system/services/https:kubernetes-dashboard:/proxy

  6. Extrayez le certificat auto-signé et convertissez-le au format PFX. Exécutez la commande suivante:

    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. Obtenez la liste des secrets dans l’espace de noms kube-system . Exécutez la commande suivante:

    kubectl -n kube-system get secrets
    

    Notez la valeur kubernetes-dashboard-token-XXXXX<>.

  8. Obtenez le jeton et enregistrez-le. Mettez à jour la kubernetes-dashboard-token-<####> valeur secrète de l’étape précédente :

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

Importer le certificat

  1. Ouvrez Filezilla et connectez-vous au nœud du plan de contrôle. Les informations suivantes sont nécessaires :

    • Adresse IP publique du nœud du plan de contrôle
    • Nom d’utilisateur
    • Secret privé
    • Utiliser SFTP - Protocole de transfert de fichiers SSH
  2. Copiez et /etc/kubernetes/certs/ca.crt accédez /etc/kubernetes/certs/client.pfx à votre machine de gestion Azure Stack Hub.

  3. Notez les emplacements du fichier. Mettez à jour le script avec les emplacements, puis ouvrez PowerShell avec une invite avec élévation de privilèges. Exécutez le script mis à jour :

    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 
    

Ouvrir le tableau de bord Kubernetes

  1. Désactivez le bloqueur de fenêtres contextuelles sur votre navigateur web.

  2. Pointez votre navigateur vers l’URL notée lorsque vous avez exécuté la commande kubectl cluster-info; par exemple. https://azurestackdomainnamefork8sdashboard/api/v1/namespaces/kube-system/services/https:kubernetes-dashboard:/proxy

  3. Sélectionnez le certificat client.

  4. Entrez le jeton.

  5. Reconnectez-vous à la ligne de commande bash sur le nœud du plan de contrôle et accordez des autorisations .kubernetes-dashboard Exécutez la commande suivante:

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

    Le script donne des kubernetes-dashboard privilèges d’administrateur cloud. Pour plus d’informations, consultez Pour plus d’informations sur les clusters avec RBAC.

Vous pouvez maintenant utiliser le tableau de bord. Pour plus d’informations sur le tableau de bord Kubernetes, consultez Tableau de bord de l’interface utilisateur web Kubernetes.

Tableau de bord Kubernetes Azure Stack Hub

Résolution des problèmes

Réseaux virtuels personnalisés

Si vous rencontrez des problèmes de connectivité qui accèdent au tableau de bord Kubernetes après avoir déployé Kubernetes sur un réseau virtuel personnalisé, vérifiez que les sous-réseaux cibles sont liés à la table de routage et aux ressources de groupe de sécurité réseau créées par le moteur AKS.

Assurez-vous que les règles de groupe de sécurité réseau autorisent la communication entre les nœuds du plan de contrôle et l’adresse IP du pod de tableau de bord Kubernetes. Vous pouvez valider cette autorisation à l’aide de la ping commande à partir d’un nœud de plan de contrôle.

Étapes suivantes