Compartir a través de


Acceso al panel de Kubernetes en Azure Stack Hub

Nota

Use solo el elemento de Marketplace de Azure Stack de Kubernetes para implementar clústeres como prueba de concepto. Para los clústeres de Kubernetes admitidos en Azure Stack, utilice el motor de AKS.

Kubernetes incluye un panel web que puede usar para las operaciones de administración básicas. Este panel le permite ver el estado de mantenimiento básico y las métricas de las aplicaciones, crear e implementar servicios y editar las aplicaciones existentes. En este artículo se muestra cómo configurar el panel de Kubernetes en Azure Stack Hub.

Requisitos previos para el panel de Kubernetes

  • Clúster de Kubernetes de Azure Stack Hub: un clúster de Kubernetes implementado en Azure Stack Hub. Para más información, consulte Implementación de Kubernetes.
  • Cliente SSH: un cliente SSH para conectarse de forma segura al nodo del plano de control en el clúster. Si usas Windows, puedes usar PuTTY. Necesita la clave privada que usó al implementar el clúster de Kubernetes.
  • FTP (PSCP): un cliente FTP que admite SSH y el protocolo de transferencia de archivos SSH para transferir los certificados del nodo del plano de control a la máquina de administración de Azure Stack Hub. Puede usar FileZilla. Necesita la clave privada que usó al implementar el clúster de Kubernetes.

Información general sobre los pasos para habilitar el panel

  1. Exporte los certificados de Kubernetes desde el nodo del plano de control del clúster.
  2. Importe los certificados en la máquina de administración de Azure Stack Hub.
  3. Abra el panel web de Kubernetes.

Exportación del certificado desde el nodo principal

Puede recuperar la dirección URL del panel desde el nodo del plano de control del clúster.

  1. Obtenga la dirección IP pública y el nombre de usuario del clúster principal desde el panel de Azure Stack Hub. Para obtener esta información:

    • Inicie sesión en el portal de Azure Stack Hub en https://portal.local.azurestack.external/.
    • Seleccione Todos los servicios>Todos los recursos. Busque el nodo principal en el grupo de recursos de clúster. El nodo principal se denomina k8s-master-<sequence-of-numbers>.
  2. Abra el nodo del plano de control en el portal. Copie la dirección IP pública . Escoger Conectar Para obtener su nombre de usuario en el archivo Inicio de sesión con la cuenta local de VM caja. Este es el mismo nombre de usuario que estableció al crear el clúster. Use la dirección IP pública en lugar de la dirección IP privada que aparece en el panel de conexión.

  3. Abra un cliente SSH para conectarse al clúster principal. Si usa Windows, puede usar Putty para crear la conexión. Use la dirección IP pública para el nodo del plano de control, el nombre de usuario y agregue la clave privada que usó al crear el clúster.

  4. Cuando se conecte el terminal, escriba kubectl para abrir el cliente de línea de comandos de Kubernetes.

  5. Ejecute el siguiente comando:

    kubectl cluster-info 
    

    Busque la dirección URL del panel. Por ejemplo: https://k8-1258.local.cloudapp.azurestack.external/api/v1/namespaces/kube-system/services/https:kubernetes-dashboard:/proxy

  6. Extraiga el certificado autofirmado y conviértelo en el formato PFX. Ejecute el siguiente 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 
    
  7. Obtenga la lista de secretos del espacio de nombres kube-system. Ejecute el siguiente comando:

    kubectl -n kube-system get secrets
    

    Anote el valor de kubernetes-dashboard-token-<XXXXX>.

  8. Obtenga el token y guárdelo. Actualice el kubernetes-dashboard-token-<####> con el valor secreto del paso anterior:

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

Importación del certificado

  1. Abra Filezilla y conéctese al nodo del plano de control. Necesita la siguiente información:

    • Dirección IP pública del nodo del plano de control
    • Nombre de usuario
    • Secreto privado
    • Uso de SFTP: protocolo de transferencia de archivos SSH
  2. Copie /etc/kubernetes/certs/client.pfx y /etc/kubernetes/certs/ca.crt a la máquina de administración de Azure Stack Hub.

  3. Anote las ubicaciones de los archivos. Actualice el script con las ubicaciones y, a continuación, abra PowerShell mediante un símbolo del sistema con privilegios elevados. Ejecute el script actualizado:

    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 
    

Apertura del panel de Kubernetes

  1. Deshabilite el bloqueador de elementos emergentes en el explorador web.

  2. Apunte el explorador a la dirección URL indicada al ejecutar el comando kubectl cluster-info; por ejemplo, https://azurestackdomainnamefork8sdashboard/api/v1/namespaces/kube-system/services/https:kubernetes-dashboard:/proxy.

  3. Seleccione el certificado de cliente.

  4. Introduzca el token.

  5. Vuelva a conectarse a la línea de comandos de Bash en el nodo del plano de control y conceda permisos a kubernetes-dashboard. Ejecute el siguiente comando:

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

    El script proporciona privilegios de administrador en la nube kubernetes-dashboard. Para más información, vea Para clústeres con RBAC habilitado.

Ahora puede usar el panel. Para obtener más información sobre el panel de Kubernetes, consulte Panel de interfaz de usuario web de Kubernetes.

Panel de Kubernetes en Azure Stack Hub

Solución de problemas

Redes virtuales personalizadas

Si encuentra problemas de conectividad al acceder al panel de Kubernetes después de implementar Kubernetes en una red virtual personalizada , asegúrese de que las subredes de destino están vinculadas a la tabla de rutas y a los recursos del grupo de seguridad de red creados por el motor de AKS.

Asegúrese de que las reglas del grupo de seguridad de red permitan la comunicación entre los nodos del plano de control y la dirección IP del pod del panel de Kubernetes. Puede validar este permiso mediante el comando ping desde un nodo del plano de control.

Pasos siguientes