「走进k8s」Kubernetes1.15.1安装 Dashboard 的WEB UI插件(15)

上节讲解了通过kubeadm 搭建集群kubeadm1.15.1环境,现在的集群已经搭建成功了,今天给老铁们说说Kubernetes Dashboard 插件的安装。

(一)Dashboard

系统类型 IP地址 节点角色 CPU Memory Hostname
Centos7 192.168.68.100 master 2 4G master
Centos7 192.168.68.101 node1 2 4G node1

对k8s不了解的老铁,感觉界面更亲切点。

  • 准备 (master 和 node 节点)
vi /usr/lib/systemd/system/docker.service
#[Service] 这项下面添加

ExecStartPost=/sbin/iptables -I FORWARD -s 0.0.0.0/0 -j ACCEPT

重启docker服务

systemctl restart docker

  • ① 官网

https://github.com/kubernetes/dashboard

  • ② 镜像 (集群中所有的节点需要进行这样的操作)

为了避免科学上网,这里直接通过国内的阿里镜像拉取,通过tag更改名称

docker pull registry.cn-hangzhou.aliyuncs.com/rsqlh/kubernetes-dashboard:v1.10.1
docker tag registry.cn-hangzhou.aliyuncs.com/rsqlh/kubernetes-dashboard:v1.10.1 k8s.gcr.io/kubernetes-dashboard-amd64:v1.10.1

  • ③下载和修改kubernetest-dashboard添加下面这句话(master节点)
wget https://raw.githubusercontent.com/kubernetes/dashboard/v1.10.1/src/deploy/recommended/kubernetes-dashboard.yaml

sed -i '/targetPort:/a      nodePort: 32500n  type: NodePort' kubernetes-dashboard.yaml

  • ③ 安装(master节点)

因需要修改没有直接没直接使用官网命令,直接下载修改后直接通过yaml文件的形式

kubectl create -f kubernetes-dashboard.yaml
#删除kubectl delete -f kubernetes-dashboard.yaml
kubectl get pods -n kube-system

  • ④查看dashboard的详细信息
kubectl get service --namespace=kube-system 
kubectl describe service kubernetes-dashboard --namespace=kube-system 

查看部署的Dashboard 在那个节点下
在node1的节点下,这样就知道要访问的地址了

kubectl get pods --namespace=kube-system  -o wide

  • ⑤访问node1节点的Dashboard

浏览器访问:https://192.168.86.101:32500,如图:这里需要注意的是谷歌浏览器会禁止不安全证书访问,建议使用火狐浏览器,并且需要在高级选项中添加信任

(二)token令牌认证登录

token认证的话,可以看到正常的信息,不会弹出上边的提示。

  • ①创建serviceaccount
kubectl create serviceaccount dashboard-admin -n kube-system

  • ②把serviceaccount绑定在clusteradmin,授权serviceaccount用户具有整个集群的访问管理权限
 kubectl create clusterrolebinding dashboard-cluster-admin --clusterrole=cluster-admin --serviceaccount=kube-system:dashboard-admin

  • ③获取serviceaccount的secret信息,可得到token(令牌)的信息
kubectl get secret -n kube-system

#dashboard-admin-token-slfcr 通过上边命令获取到的
kubectl describe secret dashboard-admin-token-slfcr -n kube-system

  • ④浏览器访问登录,把token粘贴进去登录即可

浏览器访问:https://192.168.86.101:32500,如图:这里需要注意的是谷歌浏览器会禁止不安全证书访问,建议使用火狐浏览器,并且需要在高级选项中添加信任

  • ⑤快捷查看token的命令

下面的(/admin/)是根据上面设置的名称来的

 kubectl describe secrets -n kube-system $(kubectl -n kube-system get secret | awk '/admin/{print $1}')   

PS:终于成功了。最初一直纠结使用谷歌浏览器搞了1天,结果还是用火狐浏览器进行了展示,流程:
1. docker 修改iptables
2. 所有节点下载镜像
3. 下载kubernetes-dashboard.yaml,修改里面的配置NodePort端口
4. 生成对应的token
5. 登录使用token
6. 如果在使用过程中发现有错误,查看日志 kubectl –namespace=kube-system describe pod

>>原创文章,欢迎转载。转载请注明:转载自IT人故事会,谢谢!
>>原文链接地址:「走进k8s」Kubernetes1.15.1安装 Dashboard 的WEB UI插件(15)
上一篇: 下一篇:

评论 (2)

  • wanghao| 2019年8月17日

    按照大神的配置把环境配置起来了,一直没有问题,
    sed -i ‘/targetPort:/a nodePort: 32500n type: NodePort’ kubernetes-dashboard.yaml
    我直接按照上面命令替换不报错误。实际后面运行的时候,不能正确访问dashboard,慢慢排查发现实际的替换命令应该是:sed -i ‘/targetPort:/a\ \ \ \ \ \ nodePort:32500\n\ \ type: NodePort’ kubernetes-dashboard.yaml
    图片中的是正确的,这个地方走了一些弯路。最后在网上找了删除dashboard,重新创建yaml可正常访问。

  • 发表评论

    电子邮件地址不会被公开。 必填项已用*标注