Acceso al panel web de Kubernetes en Azure Kubernetes Service (AKS)Access the Kubernetes web dashboard in Azure Kubernetes Service (AKS)

Kubernetes incluye un panel web que se puede usar para operaciones básicas de administración.Kubernetes includes a web dashboard that can be used for basic management operations. Este panel le permite ver el estado de mantenimiento básico y las métricas para sus aplicaciones, crear e implementar servicios, y modificar las aplicaciones existentes.This dashboard lets you view basic health status and metrics for your applications, create and deploy services, and edit existing applications. Este artículo muestra cómo acceder al panel de Kubernetes mediante la CLI de Azure y luego lo guía por algunas operaciones básicas del panel.This article shows you how to access the Kubernetes dashboard using the Azure CLI, then guides you through some basic dashboard operations.

Para más información sobre el panel de Kubernetes, consulte la información sobre el panel de la interfaz de usuario web de Kubernetes.For more information on the Kubernetes dashboard, see Kubernetes Web UI Dashboard. AKS usa la versión 2.0 y posterior del panel de código abierto.AKS uses version 2.0 and greater of the open-source dashboard.

Advertencia

El complemento del panel de AKS está programado para quedar en desuso. Use la vista de recursos de Kubernetes en Azure Portal (versión preliminar) en su lugar.The AKS dashboard add-on is set for deprecation. Use the Kubernetes resource view in the Azure portal (preview) instead.

  • El panel de Kubernetes está habilitado de forma predeterminada para los clústeres que ejecutan una versión de Kubernetes inferior a la 1.18.The Kubernetes dashboard is enabled by default for clusters running a Kubernetes version less than 1.18.
  • El complemento de panel se deshabilitará de forma predeterminada para todos los nuevos clústeres creados en Kubernetes 1.18 o posterior.The dashboard add-on will be disabled by default for all new clusters created on Kubernetes 1.18 or greater.
  • A partir de Kubernetes 1.19 en versión preliminar, AKS ya no admitirá la instalación del complemento administrado kube-dashboard.Starting with Kubernetes 1.19 in preview, AKS will no longer support installation of the managed kube-dashboard addon.
  • Los clústeres actuales con el complemento habilitado no se verán afectados.Existing clusters with the add-on enabled will not be impacted. Los usuarios seguirán pudiendo instalar manualmente el panel de código abierto como software instalado por el usuario.Users will continue to be able to manually install the open-source dashboard as user-installed software.

Antes de empezarBefore you begin

En los pasos que se detallan en este documento se da por hecho que ha creado un clúster de AKS y que ha establecido una conexión kubectl con dicho clúster.The steps detailed in this document assume that you've created an AKS cluster and have established a kubectl connection with the cluster. Si necesita crear un clúster de AKS, consulte Inicio rápido: Implementación de un clúster de Azure Kubernetes Service mediante la CLI de Azure.If you need to create an AKS cluster, see Quickstart: Deploy an Azure Kubernetes Service cluster using the Azure CLI.

También es preciso que esté instalada y configurada la versión 2.6.0 de la CLI de Azure u otra versión posterior.You also need the Azure CLI version 2.6.0 or later installed and configured. Ejecute az --version para encontrar la versión.Run az --version to find the version. Si necesita instalarla o actualizarla, vea Instalación de la CLI de Azure.If you need to install or upgrade, see Install Azure CLI.

Deshabilitación del panel de KubernetesDisable the Kubernetes dashboard

El complemento kube-dashboard está habilitado de forma predeterminada en los clústeres anteriores a K8s 1.18.The kube-dashboard addon is enabled by default on clusters older than K8s 1.18. El complemento se puede deshabilitar ejecutando el siguiente comando.The addon can be disabled by running the following command.

az aks disable-addons -g myRG -n myAKScluster -a kube-dashboard

Inicio del panel de KubernetesStart the Kubernetes dashboard

Advertencia

El complemento del panel de AKS está en desuso para las versiones 1.19 +.The AKS dashboard add-on is deprecated for versions 1.19+. Use la vista de recursos de Kubernetes en Azure Portal (versión preliminar) en su lugar.Please use the Kubernetes resource view in the Azure portal (preview) instead.

  • El siguiente comando abrirá ahora la vista de recursos de Azure Portal en lugar del panel de Kubernetes para las versiones 1.19 y posteriores.The following command will now open the Azure Portal resource view instead of the kubernetes dashboard for versions 1.19 and above.

Para iniciar el panel de Kubernetes en un clúster, use el comando az aks browse.To start the Kubernetes dashboard on a cluster, use the az aks browse command. Este comando requiere la instalación del complemento kube-dashboard en el clúster, que se incluye de forma predeterminada en los clústeres que ejecutan cualquier versión anterior a Kubernetes 1.18.This command requires the installation of the kube-dashboard addon on the cluster, which is included by default on clusters running any version older than Kubernetes 1.18.

El ejemplo siguiente abre el panel para el clúster denominado myAKSCluster en el grupo de recursos denominado myResourceGroup:The following example opens the dashboard for the cluster named myAKSCluster in the resource group named myResourceGroup:

az aks browse --resource-group myResourceGroup --name myAKSCluster

Este comando crea a un proxy entre el sistema de desarrollo y la API de Kubernetes y abre un explorador web en el panel de Kubernetes.This command creates a proxy between your development system and the Kubernetes API, and opens a web browser to the Kubernetes dashboard. Si un explorador web no se abre en el panel de Kubernetes, copie y pegue la dirección URL que anotó en la CLI de Azure, normalmente http://127.0.0.1:8001.If a web browser doesn't open to the Kubernetes dashboard, copy and paste the URL address noted in the Azure CLI, typically http://127.0.0.1:8001.

Nota

Si no ve el panel en http://127.0.0.1:8001, puede enrutar manualmente a las siguientes direcciones.If you do not see the dashboard at http://127.0.0.1:8001 you can manually route to the following addresses. Los clústeres que ejecutan la versión 1.16 o posterior usan HTTPS y requieren un punto de conexión independiente.Clusters on 1.16 or greater use https and require a separate endpoint.

  • K8s 1.16 o posterior: http://127.0.0.1:8001/api/v1/namespaces/kube-system/services/https:kubernetes-dashboard:/proxyK8s 1.16 or greater: http://127.0.0.1:8001/api/v1/namespaces/kube-system/services/https:kubernetes-dashboard:/proxy
  • K8s 1.15 y anterior: http://127.0.0.1:8001/api/v1/namespaces/kube-system/services/kubernetes-dashboard:/proxyK8s 1.15 and below: http://127.0.0.1:8001/api/v1/namespaces/kube-system/services/kubernetes-dashboard:/proxy

Inicio de sesión en el panel (kubernetes 1.16 o posterior)Sign in to the dashboard (kubernetes 1.16+)

Importante

A partir de la versión 1.10.1 del panel de Kubernetes o la versión 1.16 o posterior de Kubernetes, la cuenta de servicio "kubernetes-dashboard" ya no se puede usar para recuperar recursos debido a una corrección de seguridad en esa versión.As of v1.10.1 of the Kubernetes dashboard or kubernetes v1.16+ the service account "kubernetes-dashboard" can no longer be used to retrieve resources due to a security fix in that release. Como resultado, las solicitudes sin información de autenticación devuelven un error 401 no autorizado.As a result, requests without auth info return a 401 unauthorized error. Un token de portador recuperado de una cuenta de servicio puede seguir utilizándose como en este ejemplo del panel de Kubernetes, pero esto afecta al flujo de inicio de sesión del complemento del panel en comparación con versiones anteriores.A bearer token retrieved from a service account can still be used as in this Kubernetes Dashboard example, but this impacts the login flow of the dashboard add-on compared to older versions.

Si sigue ejecutando una versión anterior a la 1.16, todavía puede conceder permisos a la cuenta de servicio "kubernetes-dashboard", pero no se recomienda:If you still run a version prior to 1.16 you can still give permissions to the "kubernetes-dashboard" service account, but this is not recommended:

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

La pantalla inicial presentada requiere un archivo kubeconfig o un token.The initial screen presented requires a kubeconfig or token. Ambas opciones requieren permisos de recursos para mostrar esos recursos en el panel.Both options require resource permissions to display those resources in the dashboard.

pantalla de inicio de sesión

Uso de un archivo kubeconfigUse a kubeconfig

En el caso de los clústeres tanto habilitados como no habilitados para Azure AD, se puede pasar un archivo kubeconfig.For both Azure AD enabled and non-Azure AD enabled clusters, a kubeconfig can be passed in. Asegúrese de que los tokens de acceso sean válidos. Si los tokens han expirado, puede actualizarlos a través de kubectl.Ensure access tokens are valid, if your tokens are expired you can refresh tokens via kubectl.

  1. Establezca el archivo kubeconfig de administración con az aks get-credentials -a --resource-group <RG_NAME> --name <CLUSTER_NAME>.Set the admin kubeconfig with az aks get-credentials -a --resource-group <RG_NAME> --name <CLUSTER_NAME>
  2. Seleccione Kubeconfig y haga clic en Choose kubeconfig file para abrir el selector de archivos.Select Kubeconfig and click Choose kubeconfig file to open file selector
  3. Seleccione el archivo kubeconfig (de forma predeterminada, se encuentra en $HOME/.kube/config).Select your kubeconfig file (defaults to $HOME/.kube/config)
  4. Haga clic en Sign InClick Sign In

Uso de un tokenUse a token

  1. En el caso de los clústeres no habilitados para Azure AD, ejecute kubectl config view y copie el token asociado a la cuenta de usuario del clúster.For non-Azure AD enabled cluster, run kubectl config view and copy the token associated with the user account of your cluster.
  2. Péguelo en la opción de token en el inicio de sesión.Paste into the token option at sign in.
  3. Haga clic en Sign InClick Sign In

En el caso de los clústeres habilitados para Azure AD, recupere el token de AAD con el siguiente comando.For Azure AD enabled clusters, retrieve your AAD token with the following command. Compruebe que ha reemplazado el grupo de recursos y el nombre del clúster en el comando.Validate you've replaced the resource group and cluster name in the command.

## Update <RESOURCE_GROUP and <AKS_NAME> with your input.

kubectl config view -o jsonpath='{.users[?(@.name == "clusterUser_<RESOURCE GROUP>_<AKS_NAME>")].user.auth-provider.config.access-token}'

Una vez que se realiza correctamente, se mostrará una página similar a la siguiente.Once successful, a page similar to the below will be displayed.

Página de información general del panel web de Kubernetes

Crear una aplicaciónCreate an application

Los pasos siguientes requieren que el usuario tenga permisos para los recursos respectivos.The following steps require the user to have permissions to the respective resources.

Para ver cómo el panel de Kubernetes puede reducir la complejidad de las tareas de administración, vamos a crear una aplicación.To see how the Kubernetes dashboard can reduce the complexity of management tasks, let's create an application. Puede crear una aplicación desde el panel de Kubernetes, ya sea proporcionando la entrada de texto, un archivo YAML o mediante un asistente gráfico.You can create an application from the Kubernetes dashboard by providing text input, a YAML file, or through a graphical wizard.

Para crear una aplicación, realice los pasos siguientes:To create an application, complete the following steps:

  1. Seleccione el botón Crear de la ventana superior derecha.Select the Create button in the upper right window.
  2. Para usar el asistente para gráficos, elija Crear una aplicación.To use the graphical wizard, choose to Create an app.
  3. Proporcione un nombre para la implementación, por ejemplo nginxProvide a name for the deployment, such as nginx
  4. Escriba el nombre de la imagen de contenedor que se utilizará, como nginx:1.15.5Enter the name for the container image to use, such as nginx:1.15.5
  5. Para exponer el puerto 80 para el tráfico web, cree un servicio de Kubernetes.To expose port 80 for web traffic, you create a Kubernetes service. En Service (Servicio), seleccione External (Externo) y escriba 80 tanto para el puerto como para el puerto de destino.Under Service, select External, then enter 80 for both the port and target port.
  6. Cuando esté preparado, seleccione Implementar para crear la aplicación.When ready, select Deploy to create the app.

Implementación de una aplicación en el panel web de Kubernetes

Se tarda un minuto o dos en que una dirección IP externa pública se asigne al servicio de Kubernetes.It takes a minute or two for a public external IP address to be assigned to the Kubernetes service. A la izquierda, bajo Discovery and Load Balancing (Detección y equilibrio de carga), seleccione Servicios.On the left-hand size, under Discovery and Load Balancing select Services. Se muestra el servicio de la aplicación, incluidos los puntos de conexión externos, como se muestra en el ejemplo siguiente:Your application's service is listed, including the External endpoints, as shown in the following example:

Visualización de la lista de servicios y puntos de conexión

Seleccione la dirección de punto de conexión para abrir una ventana del explorador web con la página predeterminada de NGINX:Select the endpoint address to open a web browser window to the default NGINX page:

Visualización de la página predeterminada de NGINX de la aplicación implementada

Visualización de la información de podView pod information

El panel de Kubernetes puede proporcionar métricas de supervisión básicas e información para solución de problemas como los registros.The Kubernetes dashboard can provide basic monitoring metrics and troubleshooting information such as logs.

Para más información acerca de los pods de aplicación, seleccione Pods en el menú izquierdo.To see more information about your application pods, select Pods in the left-hand menu. Se muestra una lista de los pods disponibles.The list of available pods is shown. Elija su pod nginx para ver información, por ejemplo, del consumo de recursos:Choose your nginx pod to view information, such as resource consumption:

Visualización de la información de pod

Edición de aplicaciónEdit the application

Además de crear y visualizar las aplicaciones, el panel de Kubernetes puede utilizarse para editar y actualizar las implementaciones de aplicaciones.In addition to creating and viewing applications, the Kubernetes dashboard can be used to edit and update application deployments. Para proporcionar redundancia adicional para la aplicación, vamos a aumentar el número de réplicas de NGINX.To provide additional redundancy for the application, let's increase the number of NGINX replicas.

Para editar una implementación:To edit a deployment:

  1. Seleccione Deployments (Implementaciones) en el menú izquierdo y, a continuación, elija su implementación de nginx.Select Deployments in the left-hand menu, and then choose your nginx deployment.
  2. Seleccione Edit (Editar) en la barra de navegación superior derecha.Select Edit in the upper right-hand navigation bar.
  3. Busque el valor de spec.replica, en torno a la línea 20.Locate the spec.replica value, at around line 20. Para aumentar el número de réplicas de la aplicación, cambie este valor de 1 a 3.To increase the number of replicas for the application, change this value from 1 to 3.
  4. Seleccione Update (Actualizar) cuando esté listo.Select Update when ready.

Edición de la implementación para actualizar el número de réplicas

Se tarda unos minutos en que los nuevos pods se creen dentro de un conjunto de réplicas.It takes a few moments for the new pods to be created inside a replica set. En el menú izquierdo, elija Replica Sets (Conjuntos de réplicas) y, a continuación, elija su conjunto de réplicas de nginx.On the left-hand menu, choose Replica Sets, and then choose your nginx replica set. La lista de los pods ahora refleja el número de réplicas actualizado, como se muestra en la salida del ejemplo siguiente:The list of pods now reflects the updated replica count, as shown in the following example output:

Visualización de información sobre el conjunto de réplicas

Pasos siguientesNext steps

Para más información sobre el panel de Kubernetes, consulte el panel de la interfaz de usuario web de Kubernetes.For more information about the Kubernetes dashboard, see the Kubernetes Web UI Dashboard.