kubernetes-1.12.2安装web-ui附件dashboard v1.10.1

1、参考资料

https://yq.aliyun.com/articles/635503

http://blog.51cto.com/wangxiaoke/2311028?source=dra

https://github.com/kubernetes/dashboard

http://www.ebanban.com/?p=603


2、步骤

#拉取镜像
docker pull mirrorgooglecontainers/kubernetes-dashboard-amd64:v1.10.1

#重新打标签
docker tag mirrorgooglecontainers/kubernetes-dashboard-amd64:v1.10.1 k8s.gcr.io/kubernetes-dashboard-amd64:v1.10.1

#删除无用镜像
docker rmi mirrorgooglecontainers/kubernetes-dashboard-amd64:v1.10.1

kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v1.10.1/src/deploy/recommended/kubernetes-dashboard.yaml

查看dashboard的POD是否正常启动,如果正常说明安装成功
kubectl get pods --namespace=kube-system


3、Dashboard有多种方式可以访问

  • kubectl proxy方式:只支持127.0.0.1和localhost为来源地址的方式访问,需要配置SSH隧道,比较麻烦,不建议使用。
  • Node Port方式:该方式容易配置,只建议在开发环境的环境中使用。本文采用这种方式实现。
  • Ingress方式:通过Ingress Controller来暴露应用,比较灵活,是最推荐的方式,但较复杂。请参考文章:http://www.ebanban.com/?p=603
  • API Server方式:由于API服务器是公开的,可以从外部访问,是比较推荐的方式。请参考文章:http://www.ebanban.com/?p=603

4、通过Node Port方式访问dashboard

  • 配置外网访问(不配置的话默认只能集群内访问)

修改service配置,将type: ClusterIP改成NodePort

执行 kubectl edit service  kubernetes-dashboard --namespace=kube-system

  • 查看外网暴露端口

kubectl get service --namespace=kube-system

5、访问dashboard

  • 创建dashboard用户

创建admin-token.yaml文件,文件内容如下:

kind: ClusterRoleBinding
apiVersion: rbac.authorization.k8s.io/v1beta1
metadata:
  name: admin
  annotations:
    rbac.authorization.kubernetes.io/autoupdate: "true"
roleRef:
  kind: ClusterRole
  name: cluster-admin
  apiGroup: rbac.authorization.k8s.io
subjects:
- kind: ServiceAccount
  name: admin
  namespace: kube-system
---
apiVersion: v1
kind: ServiceAccount
metadata:
  name: admin
  namespace: kube-system
  labels:
    kubernetes.io/cluster-service: "true"
    addonmanager.kubernetes.io/mode: Reconcile

执行kubectl create -f admin-token.yaml 

获取登陆token

执行:kubectl describe secret/$(kubectl get secret -nkube-system |grep admin|awk '{print $1}') -nkube-system

  • 通过火狐浏览器登陆dashboard,其他的浏览器麻烦些。
  • 输入https://192.168.80.132:30502/ =》意思是节点IP:节点端口、
  • 默认浏览器会阻止访问,要加入信任列表,选择令牌访问,然后输入token。

登陆后,界面显示效果:

猜你喜欢

转载自blog.csdn.net/judyjie/article/details/85217617