Learn How to install and configure Kubernetes Dashboard
This post is part of my ongoing Kubernetes Learning Series, where I share hands-on experiments and practical implementations performed on a local Vagrant-based Kubernetes environment.
Have you ever spent several minutes running multiple kubectl commands just to understand what's happening inside your cluster? The Kubernetes Dashboard solves that problem by providing a visual interface that helps you monitor, manage, and troubleshoot workloads more efficiently.
In this article, I will explain the process of installing and accessing the Kubernetes Dashboard (Web UI), which provides a graphical interface for managing and monitoring Kubernetes resources.
What You'll Learn
Before we begin, here is what you will learn in this tutorial:
- What the Kubernetes Dashboard is and why it is useful
- How to deploy the Kubernetes Dashboard on a Kubernetes cluster
-
How to access the Dashboard using
kubectl proxy - How to create a Cluster Admin Service Account for authentication
- How to generate a login token for secure access
- Basic Dashboard navigation and cluster monitoring capabilities
What is the Kubernetes Dashboard?
The Kubernetes Dashboard is the official web-based user interface for Kubernetes clusters. It enables administrators and developers to:
- Deploy containerized applications
- Monitor cluster resources and workloads
- Manage Kubernetes objects
- Troubleshoot application and infrastructure issues
- View cluster health and resource utilization
Instead of relying solely on command-line tools, the dashboard offers a convenient visual representation of the Kubernetes ecosystem.
Installing the Kubernetes Dashboard
The Kubernetes Dashboard can be deployed using the official Kubernetes Dashboard manifest.
Run the following command:
kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/master/src/deploy/recommended/kubernetes-dashboard.yamlAfter successful execution, Kubernetes will create the required deployments, services, secrets, and roles needed for the dashboard.
Accessing the Dashboard
The Kubernetes Dashboard is typically accessed through a web browser using a secure URL. In most environments, port forwarding or a proxy is required to access the dashboard securely.
Key Features of the Kubernetes Dashboard:
- Workload Management – Manage Deployments, StatefulSets, DaemonSets, and Pods.
- Resource Monitoring – View CPU, Memory, and resource consumption.
- Service Discovery – Inspect Services, Endpoints, and Ingress resources.
- Configuration Management – Manage ConfigMaps, Secrets, and Namespaces.
- Troubleshooting – View logs, events, and pod status information.
- Cluster Administration – Monitor node health and overall cluster status.
Note: The Dashboard is intended primarily for development, testing, and cluster visibility. In production environments, ensure proper RBAC policies, authentication, and network security controls are configured before exposing the Dashboard externally.
Key Features of the Kubernetes Dashboard:
- Workload Management – Manage Deployments, StatefulSets, DaemonSets, and Pods.
- Resource Monitoring – View CPU, Memory, and resource consumption.
- Service Discovery – Inspect Services, Endpoints, and Ingress resources.
- Configuration Management – Manage ConfigMaps, Secrets, and Namespaces.
- Troubleshooting – View logs, events, and pod status information.
- Cluster Administration – Monitor node health and overall cluster status.
Access Using kubectl Proxy
For testing purposes, you can expose the dashboard through kubectl proxy:
nohup kubectl proxy --address="192.168.33.10" -p 8443 --accept-hosts='^*$' >> proxy.log 2>&1 &
This command starts the Kubernetes API proxy in the background and allows dashboard access through the configured IP address and port.
Create a Cluster Admin Service Account
To log in to the dashboard with administrative privileges, create a dedicated Cluster Admin Service Account.
(Continue with your Service Account and ClusterRoleBinding configuration in the next section.)
Challenge for Readers
After installing the Kubernetes Dashboard, try the following tasks:
- Deploy an NGINX application.
- Verify the Deployment and Pods from the Dashboard.
- View Pod logs directly from the Web UI.
- Scale the Deployment from 1 replica to 3 replicas.
- Monitor resource usage and cluster events.
Share your observations in the comments. Which task did you find most useful when managing your Kubernetes cluster?
Comments