Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Tutorial: Implementar el panel de Kubernetes (interfaz de usuario web)
Este tutorial le guiará en la implementación del panel de Kubernetes

Prerequisites
Este tutorial se basa en los siguientes supuestos:
-
Ha creado un clúster de Amazon EKS siguiendo los pasos que se indican en Introducción a Amazon EKS.
-
Los grupos de seguridad de las interfaces de red elásticas y los nodos del plano de control de siguen la configuración recomendada de Consideraciones relativas al grupo de seguridad de Amazon EKS.
-
Está utilizando un cliente
kubectl
que está configurado para comunicarse con el clúster de Amazon EKS.
Paso 1: Implementación del servidor de métricas de Kubernetes
El servidor de métricas de Kubernetes es un agregador de datos de uso de recursos en el clúster. No está implementado en los clústeres de Amazon EKS de forma predeterminada. El panel de Kubernetes utiliza el servidor de métricas para recopilar métricas para el clúster, como el uso del CPU y de la memoria a lo largo del tiempo.
Para implementar el servidor de métricas
-
Implemente el servidor de métricas con el siguiente comando:
kubectl apply -f https://github.com/kubernetes-sigs/metrics-server/releases/download/v0.3.7/components.yaml
-
Compruebe que la implementación de
metrics-server
está ejecutando la cantidad deseada de pods con el siguiente comando:kubectl get deployment metrics-server -n kube-system
Output
NAME READY UP-TO-DATE AVAILABLE AGE metrics-server 1/1 1 1 6m
Paso 2: Implementar el panel de Kubernetes
Complete las instrucciones para la opción que corresponde a la región en la que se encuentra el clúster.
-
Todas las regiones distintas de Pekín y Ningxia China
kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v2.0.5/aio/deploy/recommended.yaml
-
Pekín y Ningxia China
-
Descargue el manifiesto del panel de Kubernetes con el siguiente comando.
curl -o recommended.yaml https://raw.githubusercontent.com/kubernetes/dashboard/v2.0.5/aio/deploy/recommended.yaml
-
Edite los archivos del manifiesto siguiendo estos pasos.
-
Vea el archivo o archivos de manifiesto que descargó y anote el nombre de la imagen. Descargue la imagen localmente con el siguiente comando.
docker pull image:<tag>
-
Etiquete la imagen que se va a insertar en un repositorio de Amazon EC2 Container Registry en China con el siguiente comando.
docker tag image:<tag> <aws_account_id>.dkr.ecr.<cn-north-1>.amazonaws.com/image:<tag>
-
Inserte la imagen en un repositorio Amazon ECR de China con el siguiente comando.
docker push image:<tag> <aws_account_id>.dkr.ecr.<cn-north-1>.amazonaws.com/image:<tag>
-
Actualice el archivo o archivos de manifiesto de Kubernetes para hacer referencia a la URL de la imagen de Amazon ECR en su región.
-
-
Aplique el manifiesto al clúster con el comando siguiente.
kubectl apply -f recommended.yaml
-
Salida:
namespace/kubernetes-dashboard created
serviceaccount/kubernetes-dashboard created
service/kubernetes-dashboard created
secret/kubernetes-dashboard-certs created
secret/kubernetes-dashboard-csrf created
secret/kubernetes-dashboard-key-holder created
configmap/kubernetes-dashboard-settings created
role.rbac.authorization.k8s.io/kubernetes-dashboard created
clusterrole.rbac.authorization.k8s.io/kubernetes-dashboard created
rolebinding.rbac.authorization.k8s.io/kubernetes-dashboard created
clusterrolebinding.rbac.authorization.k8s.io/kubernetes-dashboard created
deployment.apps/kubernetes-dashboard created
service/dashboard-metrics-scraper created
deployment.apps/dashboard-metrics-scraper created
Paso 3: Creación de una cuenta de servicio de eks-admin
y un enlace de rol de clúster
De forma predeterminada, el usuario del panel de Kubernetes tiene permisos limitados.
En esta sección creará una cuenta de servicio eks-admin
y un enlace de rol de clúster con los que poder conectarse de forma segura al panel
con permisos de nivel de administrador. Para obtener más información, consulte Managing Service Accounts
Para crear la cuenta de servicio eks-admin
y el enlace de rol de clúster
La cuenta de servicio de ejemplo creada con este procedimiento tiene todos los privilegios
de cluster-admin
(superusuario) para el clúster. Para obtener más información, consulte cómo usar la autorización RBAC
-
Cree un archivo llamado
eks-admin-service-account.yaml
con el siguiente texto. Este manifiesto define una cuenta de servicio y un enlace de rol de clúster llamadoeks-admin
.apiVersion: v1 kind: ServiceAccount metadata: name: eks-admin namespace: kube-system --- apiVersion: rbac.authorization.k8s.io/v1beta1 kind: ClusterRoleBinding metadata: name: eks-admin roleRef: apiGroup: rbac.authorization.k8s.io kind: ClusterRole name: cluster-admin subjects: - kind: ServiceAccount name: eks-admin namespace: kube-system
-
Aplique la cuenta de servicio y el enlace de rol de clúster al clúster:
kubectl apply -f eks-admin-service-account.yaml
Salida:
serviceaccount "eks-admin" created clusterrolebinding.rbac.authorization.k8s.io "eks-admin" created
Paso 4: Conectar al panel
Ahora que el panel de Kubernetes ya está implementado en el clúster y dispone de una cuenta de servicio administrativa que le permite ver y controlar el clúster, puede conectarse al panel utilizando esa cuenta de servicio.
Para conectarse al panel de Kubernetes
-
Obtenga un token de autenticación para la cuenta de servicio
eks-admin
. Copie el valor<authentication_token>
de la salida. Con este token podrá conectarse al panel.kubectl -n kube-system describe secret $(kubectl -n kube-system get secret | grep eks-admin | awk '{print $1}')
Salida:
Name: eks-admin-token-b5zv4 Namespace: kube-system Labels: <none> Annotations: kubernetes.io/service-account.name=eks-admin kubernetes.io/service-account.uid=bcfe66ac-39be-11e8-97e8-026dce96b6e8 Type: kubernetes.io/service-account-token Data ==== ca.crt: 1025 bytes namespace: 11 bytes token: <authentication_token>
-
Inicie
kubectl proxy
.kubectl proxy
-
Para obtener acceso al punto de enlace del panel, abra el enlace siguiente con un navegador web: http://localhost:8001/api/v1/namespaces/kubernetes-dashboard/services/https:kubernetes-dashboard:/proxy/#!/login
. -
Elija Token, pegue la salida
<authentication_token>
del comando anterior en el campo Token y elija SIGN IN (Iniciar sesión).nota Pueden pasar algunos minutos antes de que aparezcan las métricas de CPU y memoria en el panel.
Paso 5: Pasos siguientes
Una vez conectado al panel de Kubernetes, podrá ver y controlar el clúster con su
cuenta del servicio eks-admin
. Para obtener más información sobre cómo usar el panel, consulte la documentación del proyecto en GitHub