Tablero de Kubernetes

Una mejor manera de administrar los recursos de Kubernetes.

¿Qué es el panel de control de Kubernetes?

Kubernetes Dashboard es una interfaz de usuario basada en web para visualizar el clúster de Kubernetes. Le muestra los detalles del clúster de Kubernetes, que incluye los nodos del clúster, los espacios de nombres, los volúmenes, las funciones del clúster, los detalles del trabajo y mucho más. Puede implementar una aplicación en contenedores a través del panel de control de Kubernetes con solo unos pocos clics y administrar todos los recursos del clúster con facilidad.

Requisito previo

Debe tener un clúster de Kubernetes en ejecución antes de configurar un tablero de Kubernetes. Lea este artículo para aprender a configurar Kubernetes.

Implementar el panel de control de Kubernetes

Ejecute el siguiente comando kubectl en el nodo principal para implementar el panel de control de Kubernetes.

[email protected]:~$ sudo kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v2.0.0-beta8/aio/deploy/recommended.yaml
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

Puede ver que los pods del tablero están en estado de ejecución ahora.

[email protected]:~$ kubectl get pods --all-namespaces
NAMESPACE NAME READY STATUS RESTARTS AGE
kube-system coredns-6955765f44-hwxdq 1/1 Running 0 6m35s
kube-system coredns-6955765f44-z2tdg 1/1 Running 0 6m35s
kube-system etcd-kubernetes-master 1/1 Running 0 6m45s
kube-system kube-apiserver-kubernetes-master 1/1 Running 0 6m45s
kube-system kube-controller-manager-kubernetes-master 1/1 Running 0 6m45s
kube-system kube-proxy-4b5jz 1/1 Running 0 6m35s
kube-system kube-proxy-v26wn 1/1 Running 0 26s
kube-system kube-scheduler-kubernetes-master 1/1 Running 0 6m45s
kubernetes-dashboard dashboard-metrics-scraper-76585494d8-czrtf 1/1 Running 0 2m37s
kubernetes-dashboard kubernetes-dashboard-5996555fd8-5mhxm 1/1 Running 0 2m37s

Acceder al Panel de Kubernetes

Ejecute el siguiente comando para acceder al panel de Kubernetes en 192.168.0.107:8001 (cámbielo a su IP)

[email protected]:~$ kubectl proxy --port=8001 --address='192.168.0.107' --accept-hosts="^*$"
Starting to serve on 192.168.0.107:8001

Abra el navegador y vaya al siguiente enlace para iniciar sesión en el panel de control de Kubernetes.

http://192.168.0.107:8001/api/v1/namespaces/kubernetes-dashboard/services/https:kubernetes-dashboard:/proxy/#/login

Estas son las dos formas de iniciar sesión en Kubernetes Dashboard.

Generar token para iniciar sesión

En el espacio de nombres predeterminado, cree una cuenta de servicio.

[email protected]:~$ kubectl create serviceaccount geekflare -n default
serviceaccount/geekflare created

Cree reglas de enlace de clúster para la cuenta de servicio recién creada.

[email protected]:~$ kubectl create clusterrolebinding geekflare-admin -n default --clusterrole=cluster-admin --serviceaccount=default:geekflare
clusterrolebinding.rbac.authorization.k8s.io/geekflare-admin created

Ejecute el siguiente comando kubectl para generar el token

[email protected]:~$ kubectl get secret $(kubectl get serviceaccount geekflare -o jsonpath="{.secrets[0].name}") -o jsonpath="{.data.token}" | base64 --decode
eyJhbGciOiJSUzI1NiIsImtpZCI6ImZxeUhfd0ROdE1qOWxqcFhQODR2NDVFaTJSQU85VHhyUnRneVRCZzBJVUkifQ.eyJpc3MiOiJrdWJlcm5ldGVzL3NlcnZpY2VhY2NvdW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9uYW1lc3BhY2UiOiJkZWZhdWx0Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZWNyZXQubmFtZSI6ImRhc2hib2FyZC10b2tlbi02ajhyNSIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VydmljZS1hY2NvdW50Lm5hbWUiOiJkYXNoYm9hcmQiLCJrdWJlcm5ldGVzLmlvL3NlcnZpY2VhY2NvdW50L3NlcnZpY2UtYWNjb3VudC51aWQiOiJhNzBiNzZmZC1iMzI1LTRiNTUtYTc5YS0wZDRmNjAwNTI4MTAiLCJzdWIiOiJzeXN0ZW06c2VydmljZWFjY291bnQ6ZGVmYXVsdDpkYXNoYm9hcmQifQ.KtOGDMp_llQ1_V5OpJGsXzPlDkKw2y4y9TowlTH7WnU84LZHZLPar65cVOh20kPkRGJZmKkmkjuXKc1VcmBJQQCLSJgXb3G-7-OSC8LvC-3ROA0cjsGqDuFtXvA4bjlRJ1wGmAmaCgO8oeXVHqciEjw9wcH5tPRKGlvXAESmDlxH_rVu_TJpqSAb2pp3V0_fpD7VxU34mSfLEoMImixHbCILt0YGS9VyEJUgzcOdfj2ZvECOEbD_Y5LPLcTe0fkBJvwIiIgwxCttFRXktdExo7Z17WlekZJLcCBzRWTfrWte8Ugf6vfpN7IfJVWqQLpDZ9XtgHavpXXeJbp2FljIFw

Puede usar el token generado (como se muestra arriba) para iniciar sesión en el tablero.

kubeconfig

La otra forma de iniciar sesión es mediante el archivo de configuración de Kubernetes.

Seleccione la opción Kubeconfig y haga clic en “Elegir archivo Kubeconfig”.

Utilizar el admin.conf, archivo presente en $HOME/.kube/config/ruta e inicie sesión en el tablero con éxito

panel de control de kubernetes kubeconfig

Interfaz de tablero

Así es como se verá la interfaz del tablero.

Tablero de Kubernetes

Verá los detalles de los nodos, los volúmenes persistentes, los espacios de nombres y los roles de clúster que se ejecutan en el clúster de Kubernetes.

Nodos del panel de control de Kubernetes

Panel de Kubernetes - Volumen

Con el panel, puede escribir código YAML en el editor para agregar nuevos recursos al clúster.

Tablero de Kubernetes - Crear nuevo recurso

Una vez que el clúster tenga varios trabajos en ejecución, obtendrá más opciones de visualización. Le dirá qué trabajos fallaron o pasaron. Si hay un problema con el clúster, puede verlo fácilmente en el tablero.

Botón volver arriba