参考地址:

环境说明:

拉取 chart 镜像

  1. $ helm search repo kubernetes-dashboard
  2. NAME CHART VERSION APP VERSION DESCRIPTION
  3. stable/kubernetes-dashboard 1.10.1 1.10.1 General-purpose web UI for Kubernetes clusters
  4. $ helm pull stable/kubernetes-dashboard
  5. $ tar zxvf kubernetes-dashboard-1.10.1.tgz

从阿里 docker hub 拉取 dashboard 镜像

  1. $ docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/kubernetes-dashboard-amd64:v1.10.1
  2. $ docker tag registry.cn-hangzhou.aliyuncs.com/google_containers/kubernetes-dashboard-amd64:v1.10.1 k8s.gcr.io/kubernetes-dashboard-amd64:v1.10.1
  3. $ docker save k8s.gcr.io/kubernetes-dashboard-amd64:v1.10.1 -o kubernetes-dashboard-amd64:v1.10.1.tar
  4. $ scp ./kubernetes-dashboard-amd64\:v1.10.1.tar root@k8s-node01:~
  5. $ docker load -i kubernetes-dashboard-amd64\:v1.10.1.tar
  1. cat <<EOF >./kubernetes-dashboard.yaml
  2. image:
  3. repository: k8s.gcr.io/kubernetes-dashboard-amd64
  4. tag: v1.10.1
  5. ingress:
  6. enabled: true
  7. hosts:
  8. - k8s.frognew.com
  9. annotations:
  10. nginx.ingress.kubernetes.io/ssl-redirect: "true"
  11. nginx.ingress.kubernetes.io/backend-protocol: "HTTPS"
  12. tls:
  13. - secretName: frognew-com-tls-secret
  14. hosts:
  15. - k8s.frognew.com
  16. rbac:
  17. clusterAdminRole: true
  18. EOF

安装

  1. $ helm install kubernetes-dashboard . \
  2. --namespace kube-system \
  3. -f kubernetes-dashboard.yaml

查看

  1. $ kubectl get svc -n kube-system
  2. NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
  3. kube-dns ClusterIP 10.96.0.10 <none> 53/UDP,53/TCP,9153/TCP 32d
  4. kubernetes-dashboard ClusterIP 10.100.18.56 <none> 443/TCP 22m

通过 NodePort 方式访问

  1. $ kubectl edit svc kubernetes-dashboard -n kube-system
  2. # 修改 ClusterIP 为 NodePort
  3. spec:
  4. type: ClusterIP -> NodePort
  5. $ kubectl get svc -n kube-system
  6. NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
  7. kube-dns ClusterIP 10.96.0.10 <none> 53/UDP,53/TCP,9153/TCP 32d
  8. kubernetes-dashboard NodePort 10.100.18.56 <none> 443:30632/TCP 25m

访问地址:https://192.168.5.80:30632/ 谷歌浏览器会限制访问,可以通过火狐浏览器访问。通过令牌方式登录。

获取令牌信息

  1. $ kubectl -n kube-system get secret | grep kubernetes-dashboard-token
  2. kubernetes-dashboard-token-m68dk kubernetes.io/service-account-token 3 114m
  3. $ kubectl describe secret kubernetes-dashboard-token-m68dk -n kube-system

系统截图

image.png
image.pngimage.png

image.png

image.png