上篇文章中介绍了用kubeadm安装Kubernetes1.10,本篇咱们来一睹Kubernetes Dashboard风采。git
老规矩,先介绍下环境:github
Kubernetes1.10,Dashboard1.8.3bash
在k8s中 dashboard能够有两种访问方式:kubeconfig(HTTPS)和token(http)本篇先来介绍下Token方式的访问。app
Token访问是无登陆密码的,简单方便ide
1.下载官方的dashboard YAML文件或者下载个人YAML(无坑版)spa
# 官网版 https://raw.githubusercontent.com/kubernetes/dashboard/master/src/deploy/recommended/kubernetes-dashboard.yaml
# 修改版 https://github.com/gh-Devin/kubernetes-dashboard/blob/master/kubernetes-dashboard.yaml
# 你下载完以后开始修改YAML文件,修改内容以下 image: k8s.gcr.io/kubernetes-dashboard-amd64:v1.8.3
修改文件里面的镜像为本身可用的镜像,也就是上篇文章使用kubeadm安装Kubernetes v1.10以及常见问题解答中让你提早下载到本地的K8S相关的镜像,这里也要注意镜像版本要一致,否则也会报错。插件
提示:下载官网版YAML须要***。orm
为了不没必要要的报错和坑,建议你们采用个人修改版,里面有heapster插件YAML和RBAC YAML。blog
https://github.com/gh-Devin/kubernetes-dashboard
2.建立podtoken
下载完上面的YAML文件以后,开始建立pod
[root@k8smaster devin]# ls heapster-rbac.yaml heapster.yaml kubernetes-dashboard-admin.rbac.yaml kubernetes-dashboard.yaml [root@k8smaster devin]# kubectl -n kube-system create -f .
3.查看pod
[root@k8smaster devin]# kubectl get svc,pod --all-namespaces | grep dashboard
注意:前方高能,报错多发区。
若是采用官方YAML,就会出现如下报错
这是由于K8S在1.6版本之后启用了RBAC访问控制策略,可使用kubectl或Kubernetes API进行配置。使用RBAC能够直接受权给用户,让用户拥有受权管理的权限,这样就再也不须要直接触碰Master Node。
下面教你如何解决以上报错问题,若是你下载的是官方版本,修改kubernetes-dashboard.yaml文件中的ServiceAccount名称
[root@k8smaster devin]# vi kubernetes-dashboard.yaml 146 serviceAccountName: kubernetes-dashboard-admin [root@k8smaster devin]# kubectl apply -f kubernetes-dashboard.yaml -f kubernetes-dashboard-admin.rbac.yaml
至此Dashboard就能够采用token方式来访问,若是没有修改dashboard YAML文件里面的ip和端口的话能够直接访问K8S Master IP地址+30090便可。