mirror of
https://github.com/LCTT/TranslateProject.git
synced 2025-01-16 22:42:21 +08:00
144 lines
5.4 KiB
Markdown
144 lines
5.4 KiB
Markdown
[#]: subject: "How to Install and Access Kubernetes Dashboard Step-by-Step"
|
||
[#]: via: "https://www.linuxtechi.com/how-to-install-kubernetes-dashboard/"
|
||
[#]: author: "Pradeep Kumar https://www.linuxtechi.com/author/pradeep/"
|
||
[#]: collector: "lkxed"
|
||
[#]: translator: " "
|
||
[#]: reviewer: " "
|
||
[#]: publisher: " "
|
||
[#]: url: " "
|
||
|
||
How to Install and Access Kubernetes Dashboard Step-by-Step
|
||
======
|
||
|
||
Kubernetes, an open-source container orchestration platform, has become the go-to solution for managing containerized applications at scale. While Kubernetes provides powerful command-line tools for managing clusters, sometimes a visual interface can make monitoring and managing your deployments even easier. Kubernetes Dashboard is a web-based user interface that allows you to visualize and interact with your Kubernetes clusters.
|
||
|
||
In this blog post, we will walk you through the process of installing and accessing Kubernetes Dashboard step-by-step, empowering you to streamline your Kubernetes management tasks.
|
||
|
||
##### Prerequisites
|
||
|
||
Before installing Kubernetes Dashboard, ensure that you have a running Kubernetes cluster and have the necessary administrative access.
|
||
|
||
### Installing Kubernetes Dashboard
|
||
|
||
The easy way to install Kubernetes dashboard for your cluster is via helm chart. Kubernetes Dashboard now has a dependency on cert-manager and nginx-ingress-controller. Fortunately, these dependencies can be automatically installed using the Helm chart. However, if you already have these components installed, you can disable their installation by setting the flags –set=nginx.enabled=false and –set=cert-manager.enabled=false when installing the chart.
|
||
|
||
Without any further delay, let’s jump into installation steps,
|
||
|
||
##### 1 ) Install Helm
|
||
|
||
Access your cluster’s master node using a terminal or command prompt. Install helm if not installed. Run the following commands.
|
||
|
||
```
|
||
$ curl -fsSL -o get_helm.sh https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3
|
||
$ chmod 700 get_helm.sh
|
||
$ ./get_helm.sh
|
||
```
|
||
|
||
##### 2) Add Kubernetes Dashboard Helm Repository
|
||
|
||
Run following helm command to add dashboard repository,
|
||
|
||
```
|
||
$ helm repo add kubernetes-dashboard https://kubernetes.github.io/dashboard/
|
||
$ helm repo list
|
||
```
|
||
|
||
##### 3) Install Kubernetes Dashboard
|
||
|
||
To install Kubernetes dashboard using helm, run following command,
|
||
|
||
```
|
||
$ helm upgrade --install kubernetes-dashboard kubernetes-dashboard/kubernetes-dashboard --create-namespace --namespace kubernetes-dashboard
|
||
```
|
||
|
||
Output above confirms dashboard has been deployed in Kubernetes-dashboard namespace. So, in order to access dashboard, run
|
||
|
||
```
|
||
$ kubectl -n kubernetes-dashboard port-forward svc/kubernetes-dashboard-nginx-controller 8443:443
|
||
```
|
||
|
||
Now, open the web browser of system on which you have run above command, type following url
|
||
|
||
https://localhost:8443
|
||
|
||
Click on “Accept the Risk and Continue”
|
||
|
||
As you can see above, we need a token to login. So, let’s generate the required token in the next step.
|
||
|
||
##### 4) Generate Token for Kubernetes Dashboard
|
||
|
||
Open one more ssh session to master node and create a service account and assign required permissions using following yaml file,
|
||
|
||
```
|
||
$ vi k8s-dashboard-account.yaml
|
||
apiVersion: v1
|
||
kind: ServiceAccount
|
||
metadata:
|
||
name: admin-user
|
||
namespace: kube-system
|
||
---
|
||
apiVersion: rbac.authorization.k8s.io/v1
|
||
kind: ClusterRoleBinding
|
||
metadata:
|
||
name: admin-user
|
||
roleRef:
|
||
apiGroup: rbac.authorization.k8s.io
|
||
kind: ClusterRole
|
||
name: cluster-admin
|
||
subjects:
|
||
- kind: ServiceAccount
|
||
name: admin-user
|
||
namespace: kube-system
|
||
```
|
||
|
||
save and exit the file
|
||
|
||
Next create service account by running following command
|
||
|
||
```
|
||
$ kubectl create -f k8s-dashboard-account.yaml
|
||
serviceaccount/admin-user created
|
||
clusterrolebinding.rbac.authorization.k8s.io/admin-user created
|
||
$
|
||
```
|
||
|
||
Now, generate the token for admin-user, run
|
||
|
||
```
|
||
$ kubectl -n kube-system create token admin-user
|
||
```
|
||
|
||
Copy this token and head back to browser, paste it on “Enter Token” field as shown below,
|
||
|
||
Click on “Sign in”
|
||
|
||
##### 5) Access Kubernetes Dashboard
|
||
|
||
When we click on “Sign in” in above then we will get the following dashboard,
|
||
|
||
Great, you are now logged in to the Kubernetes Dashboard. Here are a few key features and functionalities to explore:
|
||
|
||
- Cluster Overview: Gain an overview of your cluster’s health, resource utilization, and running pods.
|
||
- Workloads: View and manage your deployments, replica sets, stateful sets, and daemon sets.
|
||
- Services: Monitor and manage your services, including load balancers and external endpoints.
|
||
- Configurations: Explore your config maps, secrets, and persistent volume claims.
|
||
- Storage: Manage persistent volumes and storage classes.
|
||
- Namespaces: Switch between namespaces to view and manage resources across different projects or teams.
|
||
|
||
That’s all from this post, I hope you have found it useful and informative. Kindly do post your queries and feedback in below comments section.
|
||
|
||
--------------------------------------------------------------------------------
|
||
|
||
via: https://www.linuxtechi.com/how-to-install-kubernetes-dashboard/
|
||
|
||
作者:[Pradeep Kumar][a]
|
||
选题:[lkxed][b]
|
||
译者:[译者ID](https://github.com/译者ID)
|
||
校对:[校对者ID](https://github.com/校对者ID)
|
||
|
||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||
|
||
[a]: https://www.linuxtechi.com/author/pradeep/
|
||
[b]: https://github.com/lkxed/
|
||
|