Configurer l’accès de kubectl

Ce guide pratique explique comment obtenir les fichiers kubeconfig nécessaires selon les besoins d’autres procédures. Le fichier en lecture seule est suffisant pour afficher la configuration du cluster. Le fichier d’espace de noms principal est nécessaire pour les opérations telles que la modification de l’authentification locale ou Microsoft Entra, ou la collecte de la capture de paquets.

Accès en lecture seule

Pour exécuter des commandes kubectl en lecture seule, telles que pour décrire les pods et afficher les journaux, vous pouvez télécharger un fichier kubeconfig à partir de l’interface utilisateur locale ASE. Sous Appareil, sélectionnez Télécharger la configuration.

Conseil

Pour accéder à l’interface utilisateur locale, consultez tutoriel : Connecter à Azure Stack Edge Pro avec GPU.

Screenshot of Kubernetes dashboard showing link to download config.

Le fichier téléchargé est appelé config.json. Ce fichier a l’autorisation de décrire les pods et d’afficher les journaux, mais pas d’accéder aux pods avec kubectl exec.

Accès à l’espace de noms principal

Le déploiement Azure Private 5G Core utilise l’espace de noms principal . Pour les opérations telles que la modification de l’authentification locale ou Microsoft Entra ou la collecte de la capture de paquets, vous avez besoin d’un fichier kubeconfig avec un accès total à l’espace de noms principal. Pour télécharger ce fichier, configurez une session minishell et exécutez les commandes nécessaires comme indiqué dans cette section.

Vous n’avez besoin d’effectuer cette procédure qu’une seule fois. Si vous avez effectué cette procédure avant de pouvoir utiliser le fichier kubeconfig précédemment enregistré.

Entrer une session minishell

Vous devez exécuter des commandes minishell sur Azure Stack Edge pendant cette procédure. Vous devez utiliser une machine Windows qui se trouve sur un réseau disposant d’un accès au port de gestion de l’ASE. Vous devez être en mesure d’afficher l’interface utilisateur locale d’ASE pour vérifier que vous avez accès.

Activer WinRM sur votre ordinateur

Le processus suivant utilise PowerShell et nécessite que WinRM soit activé sur votre ordinateur. Exécutez la commande suivante à partir d’une fenêtre PowerShell en mode Administration istrator :

winrm quickconfig

WinRM peut déjà être activé sur votre ordinateur, car vous devez le faire une seule fois. Vérifiez que vos connexions réseau sont définies sur Private ou Domain (et non Public) et acceptez les modifications.

Conseil

WinRM ouvre votre PC aux connexions à distance, ce qui est nécessaire pour le reste de la procédure. Si vous ne souhaitez pas laisser les connexions distantes autorisées, exécutez puis Set-Service WinRM -StartupType Disabled -PassThru à Stop-Service WinRM -PassThru partir d’une fenêtre PowerShell en mode Administration istrator une fois que vous avez terminé le reste de la procédure pour obtenir l’accès principal à l’espace de noms.

Démarrer la session minishell

  1. À partir d’une fenêtre PowerShell en mode Administration istrateur, entrez l’adresse IP de gestion ASE (y compris les guillemets, par exemple"10.10.5.90") :

    $ip = "<ASE_IP_address>"
    
    $sessopt = New-PSSessionOption -SkipCACheck -SkipCNCheck -SkipRevocationCheck
    
    $minishellSession = New-PSSession -ComputerName $ip -ConfigurationName "Minishell" -Credential ~\EdgeUser -UseSSL -SessionOption $sessopt
    
  2. À l’invite, entrez votre mot de passe Azure Stack Edge. Ignorez le message suivant :

    WARNING: The Windows PowerShell interface of your device is intended to
    be used only for the initial network configuration. Please
    engage Microsoft Support if you need to access this interface
    to troubleshoot any potential issues you may be experiencing.
    Changes made through this interface without involving Microsoft
    Support could result in an unsupported configuration.
    

Vous disposez maintenant d’une session minishell prête à obtenir le fichier kubeconfig à l’étape suivante.

Conseil

En cas de modification du réseau, la session peut s’interrompre. Exécutez Get-PSSession pour afficher l’état de la session. S’il est toujours connecté, vous devez toujours être en mesure d’exécuter des commandes minishell. S’il est rompu ou déconnecté, exécutez Remove-PSSession pour supprimer la session localement, puis démarrez une nouvelle session.

Configurer l’accès de kubectl

  • Si c’est la première fois que vous exécutez cette procédure, vous devez exécuter les étapes suivantes. Ces étapes créent l’espace de noms, téléchargez le fichier kubeconfig et utilisez-le pour accorder l’accès à l’espace de noms.

    Invoke-Command -Session $minishellSession -ScriptBlock {New-HcsKubernetesNamespace -Namespace "core"}
    Invoke-Command -Session $minishellSession -ScriptBlock {New-HcsKubernetesUser -UserName "core"} | Out-File -FilePath .\kubeconfig-core.yaml
    Invoke-Command -Session $minishellSession -ScriptBlock {Grant-HcsKubernetesNamespaceAccess -Namespace "core" -UserName "core"}
    

    Si vous voyez une erreur telle que The Kubernetes namespace 'core' already exists, cela signifie que vous avez exécuté ces étapes avant. Dans ce cas, passez directement à la puce suivante pour récupérer le fichier généré précédemment.

  • Si vous avez déjà exécuté cette procédure, vous pouvez récupérer immédiatement le fichier kubeconfig généré précédemment en exécutant :

    Invoke-Command -Session $miniShellSession -ScriptBlock { Get-HcsKubernetesUserConfig -UserName "core" }
    

Pour plus d’informations, consultez Configurer l’accès au cluster via Kubernetes RBAC.

Étapes suivantes

  • Enregistrez le fichier kubeconfig afin qu’il soit disponible à utiliser si vous en avez besoin à l’avenir.
  • Si vous avez besoin du fichier kubeconfig dans le cadre d’une procédure différente (par exemple pour configurer l’authentification Microsoft Entra), revenez à cette procédure et poursuivez.