kubernetes-dashboard安装
简介紧接上一篇博客,在上篇博客安装了k8s,安装完后我们只能通过命令行去执行操作,这样不方便非战斗人员去使用。介于此因,我们可以安装相应版本的dashboard,这样我们就可以通过图形界面的方式去使用k8s了。1. 通过yaml文件安装dashboard我们可以从https://github.com/kubernetes/dashboard/releases上边找到和自己安装的k8s相对于的...
简介
紧接上一篇博客,在上篇博客安装了k8s,安装完后我们只能通过命令行去执行操作,这样不方便非战斗人员去使用。介于此因,我们可以安装相应版本的dashboard,这样我们就可以通过图形界面的方式去使用k8s了。
1. 通过yaml文件安装dashboard
我们可以从https://github.com/kubernetes/dashboard/releases上边找到和自己安装的k8s相对于的dashboard的版本,这里我安装的是1.8.3的版本。
1.1 下载对应版本
[root@k8s-master ~]# wget https://github.com/kubernetes/dashboard/archive/v1.8.3.tar.gz
[root@k8s-master ~]# tar xf dashboard-1.8.3.tar
[root@k8s-master ~]# cd dashboard-1.8.2/src/deploy/recommended/
1.2 修改yaml文件中镜像地址
因为大家都知道的原因,yaml文件中的镜像地址无法被访问,因此无法拉下来我们需要的镜像,所以需要我们将镜像地址修改成可以访问到的(自行百度吧)。
1.3 修改yaml文件中service的type类型
官方的kubernetes-dashboard.yaml文件中service的type类型为clusterIp(service默认类型),这种方式要访问dashboard需要通过代理,所以我们改为NodePort方式,这样部署完后,就可以直接通过nodeIP:port的方式访问
1.4 部署
[root@k8s-master ~]# kubectl create -f kubernetes-dashboard.yaml
部署完成后,可以通过kubectl get svc,pod -n kube-system来查看是否部署成功
当部署成功后,我们就可以访问dashboar的图形界面了(使用任何一个节点的宿主机ip:port访问)
2 为dashboar配置访问权限
k8s 从1.6版本开始使用RBAC(有关基于角色的访问控制,请参考k8s文档), 所以我们需要给dashboard配置一个serviceAccount, 并给该serviceAccount附上权限(也就是和role进行绑定,因为我们是集群,所以执行的是clusterRoleBinding)
2.1 创建serviceAccount
我们创建一个叫dashboard-admin的serviceAccount用户
apiVersion: v1
kind: ServiceAccount
metadata:
name: dashboard-admin
namespace: kube-system
2.2 授权
进行权限绑定ClusterRoleBinding ,也就是授予权限, 我们把k8s内置的cluster-admin这个role(角色)赋给了dashboard-admin这个serviceAccount用户
apiVersion: rbac.authorization.k8s.io/v1beta1
kind: ClusterRoleBinding
metadata:
name: dashboard-admin
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
name: cluster-admin
subjects:
- kind: ServiceAccount
name: dashboard-admin
namespace: kube-system
2.3 获取用户token
[root@k8s-master ~]# kubectl -n kube-system describe secret $(kubectl -n kube-system get secret | grep dasboard-admin | awk '{print $1}')
2.4登陆dashboard
到此,k8s的dashboard就安装完了,我们就可以愉快的通过图形界面进行操作了。
更多推荐
所有评论(0)