Guide: Accessing the Kubernetes Dashboard
This document details the deployment of the Kubernetes Dashboard and explains how to access it.
1. Architecture: Declarative Deployment via GitOps
Like all other components in this project, the Kubernetes Dashboard is deployed declaratively via GitOps.
- Wrapper Chart: We use a wrapper chart located in the
spitikos/chartsrepository atcharts/kube-dashboard. This chart includes the officialkubernetes-dashboard/kubernetes-dashboardchart as a dependency. - Declarative Configuration: All configuration is defined in
charts/kube-dashboard/values.yamlin thespitikos/chartsrepository. - GitOps Management: The dashboard is deployed and managed as an application within the root Argo CD chart. Its configuration is defined as an entry in
charts/argocd/values.yaml. To deploy, modify, or remove the dashboard, a change is made in thespitikos/chartsrepository and pushed to Git. Argo CD handles the rest.
2. Ingress and Networking
The dashboard is exposed at https://kube.taehoonlee.cloud.
The wrapper chart contains a standard Ingress template that is managed by the NGINX Ingress Controller.
3. Authentication: Service Account and Token
The dashboard is configured to use token-based authentication. The Helm chart creates a ServiceAccount named admin-user with cluster-admin privileges.
How to Log In
-
Generate a Login Token: From your local machine, run the following command. The token is short-lived by default.
kubectl create token admin-user -n kube-dashboard -
Copy the token that is printed to the console.
-
Access the Dashboard:
- Navigate to https://kube.taehoonlee.cloud.
- Select the Token authentication method.
- Paste the token into the field and click Sign in.