任务4 安装Dashboard插件
任务目的
安装Kubernetes仪表板插件Kubernetes Dashboard
,该插件可以可视化查看集群状态以及管理集群,本实验也将在任务5中使用该插件。
Kubernetes的资源创建(Service、Deployment等),都可以用YAML文件来定义。关于YAML文件的部分,学员可以参考《Kubernetes之YAML文件》文章来了解。
任务步骤
1.安装Kubernetes Dashboard
下载Dashboard的YAML文件。
[root@k8s-master ~]# wget http://mirror.faasx.com/kubernetes/dashboard/master/src/deploy/recommended/kubernetes-dashboard.yaml
修改YAML文件,Kubernetes有三种外部访问方式:NodePort、LoadBalancer和Ingress。本实验通过NodePort来对外暴露Kubernetes Dashboard服务,修改kubernetes-dashboard.yaml
文件末尾处kind: Service
部分(将暴露方式更换为NodePort)。
其他方式这里不作赘述,学员可以自己查询。NodePort会在所有节点(CVM)上开放一个特定端口,任何发送到该端口的流量都被转发到对应服务。也就是说,可以通过
<任意节点的内网IP>:<NodePort开放的端口号>
访问该服务。
[root@k8s-master ~]# vi kubernetes-dashboard.yaml
在文件末尾部分,插入一行type: NodePort
,文件部分如下。
# ------------------- Dashboard Service ------------------- #
kind: Service
apiVersion: v1
metadata:
labels:
k8s-app: kubernetes-dashboard
name: kubernetes-dashboard
namespace: kube-system
spec:
type: NodePort
ports:
- port: 443
targetPort: 8443
selector:
k8s-app: kubernetes-dashboard
创建集群资源对象。
[root@k8s-master ~]# kubectl apply -f kubernetes-dashboard.yaml
等待片刻,查看相关Pod状态。
[root@k8s-master ~]# kubectl get pods -n kube-system| grep dashboard
这时我们需要创建用户来访问Dashboard,创建示例用户admin-user并创建ClusterRoleBinding。
这里直接创建admin-user.yaml
文件,内容如下。
[root@k8s-master ~]# vi admin-user.yaml
---
apiVersion: v1
kind: ServiceAccount
metadata:
name: admin-user
namespace: kube-system
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
name: admin-user
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
name: cluster-admin
subjects:
- kind: ServiceAccount
name: admin-user
namespace: kube-system
---
创建集群资源对象。
[root@k8s-master ~]# kubectl apply -f admin-user.yaml
获取Token,并复制到剪切板。
由于Token值比较长,复制的时候容易将前面的空格也复制进去。建议粘贴到记事本,并检查前后有无多余的空格,如果有,请去掉多余的空格。
[root@k8s-master ~]# kubectl -n kube-system describe secret $(kubectl -n kube-system get secret | grep admin-user | awk '{print $1}')
2.登录Kubernetes Dashboard
先查看Dashboard服务通过NodePort方式暴露的端口号,本实验是32637。(svc是service的缩写)
kubectl get svc -n kube-system | grep kubernetes-dashboard
接下来回到CVM控制台,登录Windows CVM。
双击下载的文件,输入密码并登录。
连接Windows CVM。
下载Firefox浏览器,并打开。
输入https://<任意节点的内网IP>:<NodePort暴露的端口号>/
访问Dashboard,点击【接受风险并继续】。
注意:必须使用内网IP进行访问,如果使用公网IP会出现登录无反应的情况。
选择【令牌】,输入上一步最后得到的Token值,点击登录。
等待片刻,进入仪表盘,至此,Kubernetes Dashboard安装完毕。
建议选择保存Token值,方便下一次登录。
学员评价