Configuración del acceso kubectl

En esta guía paso a paso se explica cómo obtener los archivos kubeconfig necesarios según sea necesario para otros procedimientos. El archivo de solo lectura es suficiente para ver la configuración del clúster. El archivo de espacio de nombres principal es necesario para operaciones como modificar la autenticación local o de Microsoft Entra, o para recopilar la captura de paquetes.

Acceso de solo lectura

Para ejecutar comandos kubectl de solo lectura, como para describir pods y ver registros, puede descargar un archivo kubeconfig desde la interfaz de usuario local de ASE. En Dispositivo, seleccione Descargar configuración.

Sugerencia

Para acceder a la interfaz de usuario local, consulte Tutorial: Conectar a Azure Stack Edge Pro con GPU.

Screenshot of Kubernetes dashboard showing link to download config.

El archivo descargado se denomina config.json. Este archivo tiene permiso para describir pods y ver registros, pero no para acceder a pods con kubectl exec.

Acceso al espacio de nombres principal

La implementación de Azure Private 5G Core usa el espacio de nombres principal . Para las operaciones como modificar la autenticación local o microsoft Entra, o para recopilar la captura de paquetes, necesita un archivo kubeconfig con acceso completo al espacio de nombres principal . Para descargar este archivo, configure una sesión de minishell y ejecute los comandos necesarios como se indica en esta sección.

Solo tiene que realizar este procedimiento una vez. Si ha realizado este procedimiento antes de poder usar el archivo kubeconfig guardado anteriormente.

Escribir una sesión de minishell

Debe ejecutar comandos de minishell en Azure Stack Edge durante este procedimiento. Debe usar una máquina Windows que esté en una red con acceso al puerto de administración del ASE. Debería poder ver la interfaz de usuario local de ASE para comprobar que tiene acceso.

Habilitación de WinRM en la máquina

El siguiente proceso usa PowerShell y necesita que WinRM esté habilitado en el equipo. Ejecute el siguiente comando desde una ventana de PowerShell en modo Administración istrator:

winrm quickconfig

Es posible que WinRM ya esté habilitado en la máquina, ya que solo tiene que hacerlo una vez. Asegúrese de que las conexiones de red están establecidas en Privado o Dominio (no público) y acepte los cambios.

Sugerencia

WinRM abre el equipo a conexiones remotas, que es necesaria para el resto del procedimiento. Si no desea dejar permitidas las conexiones remotas, ejecute Stop-Service WinRM -PassThru y, a continuaciónSet-Service WinRM -StartupType Disabled -PassThru, desde una ventana de PowerShell en modo Administración istrator después de haber completado el resto del procedimiento para obtener acceso al espacio de nombres principal.

Inicio de la sesión de minishell

  1. Desde una ventana de PowerShell en modo Administración istrator, escriba la dirección IP de administración de ASE (incluidas las comillas, por ejemplo"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. En el símbolo del sistema, escriba la contraseña de Azure Stack Edge. Pase por alto el siguiente mensaje:

    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.
    

Ahora tiene una sesión de minishell configurada para obtener el archivo kubeconfig en el paso siguiente.

Sugerencia

Si hay un cambio de red, la sesión puede interrumpirse. Ejecute Get-PSSession para ver el estado de la sesión. Si aún está conectado, debería poder ejecutar comandos de minishell. Si se interrumpe o se desconecta, ejecute Remove-PSSession para quitar la sesión localmente y, a continuación, inicie una nueva sesión.

Configuración del acceso kubectl

  • Si es la primera vez que ejecuta este procedimiento, debe ejecutar los pasos siguientes. Estos pasos crean el espacio de nombres, descargan el archivo kubeconfig y lo usan para conceder acceso al espacio de nombres.

    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 ve un error como The Kubernetes namespace 'core' already exists, significa que ha ejecutado estos pasos antes. En este caso, vaya directamente a la siguiente viñeta para recuperar el archivo generado anteriormente.

  • Si ha ejecutado este procedimiento antes, puede recuperar el archivo kubeconfig generado anteriormente inmediatamente mediante la ejecución de:

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

Para más información, consulte Configuración del acceso al clúster mediante RBAC de Kubernetes.

Pasos siguientes

  • Guarde el archivo kubeconfig para que esté disponible para usarlo si lo necesita en el futuro.
  • Si necesita el archivo kubeconfig como parte de completar un procedimiento diferente (por ejemplo, para configurar la autenticación de Microsoft Entra), vuelva a ese procedimiento y continúe.