Dashboard介绍
Dashboard 是基于网页的 Kubernetes 用户界面。您可以使用 Dashboard 将容器应用部署到 Kubernetes 集群中,也可以对容器应用排错,还能管理集群资源。您可以使用 Dashboard 获取运行在集群中的应用的概览信息,也可以创建或者修改 Kubernetes 资源(如 Deployment,Job,DaemonSet 等等)。例如,您可以对 Deployment 实现弹性伸缩、发起滚动升级、重启 Pod 或者使用向导创建新的应用。
获取并修改Yaml文件
项目地址 https://github.com/kubernetes/dashboard/releases# wget https://raw.githubusercontent.com/kubernetes/dashboard/v2.0.0-beta8/aio/deploy/recommended.yamlmaster执行[root@master ~]# mkdir dashboard[root@master ~]# cd dashboard/# vim recommended.yamlkind: ServiceapiVersion: v1metadata: labels: k8s-app: kubernetes-dashboard name: kubernetes-dashboard namespace: kubernetes-dashboardspec: type: NodePort #新加此行 ports: - port: 443 nodePort: 30001 #新加此行 targetPort: 8443 selector: k8s-app: kubernetes-dashboard应用配置文件# kubectl apply -f recommended.yaml############################################################################[root@master dashboard]# kubectl apply -f recommended.yamlnamespace/kubernetes-dashboard createdserviceaccount/kubernetes-dashboard createdservice/kubernetes-dashboard createdsecret/kubernetes-dashboard-certs createdsecret/kubernetes-dashboard-csrf createdsecret/kubernetes-dashboard-key-holder createdconfigmap/kubernetes-dashboard-settings createdrole.rbac.authorization.k8s.io/kubernetes-dashboard createdclusterrole.rbac.authorization.k8s.io/kubernetes-dashboard createdrolebinding.rbac.authorization.k8s.io/kubernetes-dashboard createdclusterrolebinding.rbac.authorization.k8s.io/kubernetes-dashboard createddeployment.apps/kubernetes-dashboard createdservice/dashboard-metrics-scraper createddeployment.apps/dashboard-metrics-scraper created############################################################################查看pod和service-o wide 宽格式显示 -n 指定名称空间[root@master dashboard]# kubectl get pod -o wide -n kubernetes-dashboardNAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATESdashboard-metrics-scraper-76585494d8-2czfj 1/1 Running 0 7m54s 10.244.2.3 node2 <none> <none>kubernetes-dashboard-5996555fd8-p8qgc 1/1 Running 0 7m54s 10.244.1.2 node1 <none> <none>[root@master dashboard]# kubectl get svc -o wide -n kubernetes-dashboardNAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE SELECTORdashboard-metrics-scraper ClusterIP 10.98.193.51 <none> 8000/TCP 8m24s k8s-app=dashboard-metrics-scraperkubernetes-dashboard NodePort 10.96.240.128 <none> 443:30001/TCP 8m33s k8s-app=kubernetes-dashboard
访问Dashboard
得使用火狐浏览器https://192.168.81.30:30001接受风险并继续
创建一个dashboard用户
master节点[root@master ~]# cd dashboard/# vim create-admin.yamlapiVersion: v1kind: ServiceAccountmetadata: name: admin-user namespace: kubernetes-dashboard---apiVersion: rbac.authorization.k8s.io/v1kind: ClusterRoleBindingmetadata: name: admin-userroleRef: apiGroup: rbac.authorization.k8s.io kind: ClusterRole name: cluster-adminsubjects:- kind: ServiceAccount name: admin-user namespace: kubernetes-dashboard[root@master dashboard]# kubectl apply -f create-admin.yaml 获取Token[root@master dashboard]# kubectl -n kubernetes-dashboard describe secret $(kubectl -n kubernetes-dashboard get secret | grep admin-user | awk '{print $1}')Name: admin-user-token-5vcp4Namespace: kubernetes-dashboardLabels: <none>Annotations: kubernetes.io/service-account.name: admin-user kubernetes.io/service-account.uid: 0137b407-a40b-4635-b26a-d53139688b5dType: kubernetes.io/service-account-tokenData====ca.crt: 1025 bytesnamespace: 20 bytestoken: eyJhbGciOiJSUzI1NiIsImtpZCI6IkR6RWY1alg5MGwybzBuOEVJVGdCOF9XSklleUtaMFY3eTFWRzVrcTBvdFkifQ.eyJpc3MiOiJrdWJlcm5ldGVzL3NlcnZpY2VhY2NvdW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9uYW1lc3BhY2UiOiJrdWJlcm5ldGVzLWRhc2hib2FyZCIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VjcmV0Lm5hbWUiOiJhZG1pbi11c2VyLXRva2VuLTV2Y3A0Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZXJ2aWNlLWFjY291bnQubmFtZSI6ImFkbWluLXVzZXIiLCJrdWJlcm5ldGVzLmlvL3NlcnZpY2VhY2NvdW50L3NlcnZpY2UtYWNjb3VudC51aWQiOiIwMTM3YjQwNy1hNDBiLTQ2MzUtYjI2YS1kNTMxMzk2ODhiNWQiLCJzdWIiOiJzeXN0ZW06c2VydmljZWFjY291bnQ6a3ViZXJuZXRlcy1kYXNoYm9hcmQ6YWRtaW4tdXNlciJ9.O33TppsQxjkha3QsHEFpUJpcggubFZSmGyXRNfRUaw_8d1xBUeiFKaG0lUHp4__Zorv5Hx_K5TQpgUV-bpQmG7hSxwgs4S77mTo2oWOE48c_wMqkRro2DCU1ef3D-aL6ChnGz_evGj8PHF-g7OPcN9oOKuRAD-fLJiccUBZFfc2Jbh_53QVKjbPYfGSyBMrhxnMuVaFajOneocSbfT7a-3D-gBLxPbMXvm3BKvSQjAUJjOh1HpSH5QC6e84QCI_cisxdy2OldzsrTdYFagGO1pbCJmyM0Sq6meYq5AJkcgfCgvgZYI_DycaqcznSBPeVmuaZ0UR0NMu4iR9-MBzcUw
登录dashboard
https://192.168.81.30:30001复制tokeneyJhbGciOiJSUzI1NiIsImtpZCI6IkR6RWY1alg5MGwybzBuOEVJVGdCOF9XSklleUtaMFY3eTFWRzVrcTBvdFkifQ.eyJpc3MiOiJrdWJlcm5ldGVzL3NlcnZpY2VhY2NvdW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9uYW1lc3BhY2UiOiJrdWJlcm5ldGVzLWRhc2hib2FyZCIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VjcmV0Lm5hbWUiOiJhZG1pbi11c2VyLXRva2VuLTV2Y3A0Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZXJ2aWNlLWFjY291bnQubmFtZSI6ImFkbWluLXVzZXIiLCJrdWJlcm5ldGVzLmlvL3NlcnZpY2VhY2NvdW50L3NlcnZpY2UtYWNjb3VudC51aWQiOiIwMTM3YjQwNy1hNDBiLTQ2MzUtYjI2YS1kNTMxMzk2ODhiNWQiLCJzdWIiOiJzeXN0ZW06c2VydmljZWFjY291bnQ6a3ViZXJuZXRlcy1kYXNoYm9hcmQ6YWRtaW4tdXNlciJ9.O33TppsQxjkha3QsHEFpUJpcggubFZSmGyXRNfRUaw_8d1xBUeiFKaG0lUHp4__Zorv5Hx_K5TQpgUV-bpQmG7hSxwgs4S77mTo2oWOE48c_wMqkRro2DCU1ef3D-aL6ChnGz_evGj8PHF-g7OPcN9oOKuRAD-fLJiccUBZFfc2Jbh_53QVKjbPYfGSyBMrhxnMuVaFajOneocSbfT7a-3D-gBLxPbMXvm3BKvSQjAUJjOh1HpSH5QC6e84QCI_cisxdy2OldzsrTdYFagGO1pbCJmyM0Sq6meYq5AJkcgfCgvgZYI_DycaqcznSBPeVmuaZ0UR0NMu4iR9-MBzcUwsign in

