创建dashboard的目录mkdir dashboard
[root@k8s-master01 ~]# cd dashboard/
helm下载dashboard相关内容
[root@k8s-master01 ~]# cd dashboard/ [root@k8s-master01 dashboard]# helm fetch stable/kubernetes-dashboard [root@k8s-master01 dashboard]# ll 总用量 8 -rw-r--r-- 1 root root 5286 5月 30 10:21 kubernetes-dashboard-0.6.0.tgz [root@k8s-master01 dashboard]# tar -zxvf kubernetes-dashboard-0.6.0.tgz [root@k8s-master01 dashboard]# cd kubernetes-dashboard [root@k8s-master01 kubernetes-dashboard]# ls Chart.yaml README.md templates values.yaml
创建kubernetes-dashboard.yaml文件
image: repository: k8s.gcr.io/kubernetes-dashboard-amd64 tag: v1.10.1 ingress: enabled: true hosts: - k8s.frognew.com annotations: nginx.ingress.kubernetes.io/ssl-redirect: "true" nginx.ingress.kubernetes.io/backend-protocol: "HTTPS" tls: - secretName: frognew-com-tls-secret hosts: - k8s.frognew.com rbac:
clusterAdminRole: true
导入镜像:
[root@k8s-master01 Dashboard]# docker load -i dashboard.tar
上传到harbor
[root@k8s-master01 Dashboard]# docker tag k8s.gcr.io/kubernetes-dashboard-amd64:v1.10.1 hub.msjfkg.com/library/kubernetes-dashboard-amd64:v1.10.1 [root@k8s-master01 Dashboard]# docker push hub.msjfkg.com/library/kubernetes-dashboard-amd64:v1.10.1 The push refers to repository [hub.msjfkg.com/library/kubernetes-dashboard-amd64] fbdfe08b001c: Pushed v1.10.1: digest: sha256:0ae6b69432e78069c5ce2bcde0fe409c5c4d6f0f4d9cd50a17974fea38898747 size: 529
运行
[root@k8s-master01 kubernetes-dashboard]# helm install . -n kubernetes-dashboard --namespace kube-system -f kubernetes-dashboard.yaml NAME: kubernetes-dashboard LAST DEPLOYED: Sun May 30 10:26:29 2021 NAMESPACE: kube-system STATUS: DEPLOYED RESOURCES: ==> v1/Pod(related) NAME READY STATUS RESTARTS AGE kubernetes-dashboard-c6b9644b-ngf2h 0/1 ContainerCreating 0 1s ==> v1/Secret NAME TYPE DATA AGE kubernetes-dashboard Opaque 0 1s ==> v1/Service NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE kubernetes-dashboard ClusterIP 10.103.152.118 <none> 443/TCP 2s ==> v1/ServiceAccount NAME SECRETS AGE kubernetes-dashboard 1 2s ==> v1beta1/ClusterRoleBinding NAME AGE kubernetes-dashboard <invalid> ==> v1beta1/Deployment NAME READY UP-TO-DATE AVAILABLE AGE kubernetes-dashboard 0/1 1 0 1s ==> v1beta1/Ingress NAME HOSTS ADDRESS PORTS AGE kubernetes-dashboard k8s.frognew.com 80, 443 1s NOTES: ********************************************************************************* *** PLEASE BE PATIENT: kubernetes-dashboard may take a few minutes to install *** ********************************************************************************* From outside the cluster, the server URL(s) are: https://k8s.frognew.com
要想外部访问修改SVC
[root@k8s-master01 kubernetes-dashboard]# kubectl get svc -n kube-system NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE kube-dns ClusterIP 10.96.0.10 <none> 53/UDP,53/TCP,9153/TCP 243d kubernetes-dashboard ClusterIP 10.110.188.160 <none> 443/TCP 15m tiller-deploy ClusterIP 10.103.158.23 <none> 44134/TCP 12h [root@k8s-master01 kubernetes-dashboard]# kubectl edit svc kubernetes-dashboard -n kube-system service/kubernetes-dashboard edited
type: NodePort
[root@k8s-master01 kubernetes-dashboard]# kubectl get svc -n kube-system NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE kube-dns ClusterIP 10.96.0.10 <none> 53/UDP,53/TCP,9153/TCP 244d kubernetes-dashboard NodePort 10.110.188.160 <none> 443:30892/TCP 18m tiller-deploy ClusterIP 10.103.158.23 <none> 44134/TCP 12h [root@k8s-master01 kubernetes-dashboard]#
用令牌登录
[root@k8s-master01 kubernetes-dashboard]# kubectl -n kube-system get secret |grep kubernetes-dashboard-token kubernetes-dashboard-token-qx29w kubernetes.io/service-account-token 3 3m16s [root@k8s-master01 kubernetes-dashboard]# kubectl describe secret kubernetes-dashboard-token-qx29w -n kube-system