文章目录
- 一、Dashboard 概述
- 二、GitHub 地址
- 三、Dashboard 部署安装
- 1、选择兼容版本
- 2、下载配置文件
- 3、添加 Dashboard 的Service类型
- 4、应用部署
- 5、查看 kubernetes-dashboard 命名空间下资源状态
- 6、创建访问账户
- 7、授权
- 8、获取账号token
- 9、1.24 版本以后的需要创建一个Pod
- 四、浏览器访问Dashboard
- 1、输入 token 登录
- 2、页面
一、Dashboard 概述
Kubernetes Dashboard是一个Web UI,用于管理Kubernetes集群中的应用程序和资源。它提供了一个可视化的界面,可以方便地查看和管理Kubernetes集群中的各种资源,如Pod、Deployment、Service、ConfigMap等。Dashboard还提供了一些高级功能,如日志查看、资源监控、命名空间管理等。
二、GitHub 地址
dashboard
三、Dashboard 部署安装
1、选择兼容版本
由于之前升级 k8s 集群至 1.23.16 所以这里选择 Dashboard v2.5.1
2、下载配置文件
进入到master节点,下载dashboard对应版本的 recommended.yaml 文件
wget https://raw.githubusercontent.com/kubernetes/dashboard/v2.5.1/aio/deploy/recommended.yaml
3、添加 Dashboard 的Service类型
指定 Service 的类型为
NodePort
指定 NodePort Service 在每个节点上使用的端口号 (30000-32767 )
vim recommended.yamlkind: Service
apiVersion: v1
metadata:labels:k8s-app: dashboard-metrics-scrapername: dashboard-metrics-scrapernamespace: kubernetes-dashboard
spec:type: NodePort #添加ports:- port: 8000targetPort: 8000nodePort: 32111 #添加selector:k8s-app: dashboard-metrics-scraper
4、应用部署
kubectl apply -f recommended.yaml
5、查看 kubernetes-dashboard 命名空间下资源状态
kubectl get pods,svc -n kubernetes-dashboard
6、创建访问账户
1.24 版本前的操作
kubectl create serviceaccount dashboard-admin -n kubernetes-dashboard
7、授权
kubectl create clusterrolebinding dashboard-admin-rb --clusterrole=cluster-admin --serviceaccount=kubernetes-dashboard:dashboard-admin
8、获取账号token
获取 token 登录Dashboard
kubectl get secrets -n kubernetes-dashboard | grep dashboard-adminkubectl describe secrets dashboard-admin-token-qfz2z -n kubernetes-dashboard
9、1.24 版本以后的需要创建一个Pod
cat << EOF > pod1.yaml
apiVersion: v1
kind: Pod
metadata:creationTimestamp: nulllabels:run: pod1name: pod1namespace: kubernetes-dashboard
spec:terminationGracePeriodSeconds: 0serviceAccount: dashboard-admincontainers:- image: nginximagePullPolicy: IfNotPresentname: pod1resources: {}dnsPolicy: ClusterFirstrestartPolicy: Always
status: {}
EOF
kubectl apply -f pod1.yamlkubectl exec -it pod1 -n kubernetes-dashboard -- cat /run/secrets/kubernetes.io/serviceaccount/token
四、浏览器访问Dashboard
遇到显示 Your connection is not private 在页面空白处英文输入法输入
thisisunsafe