K8S:搭建dashboard--web管理界面

搭建dashboard-UI界面

在上次部署了K8S多master节点的基础之上,进行网页图形界面的部署,便于操作管理。
1:基于上次部署,进行状态检查(master节点操作)

# kubectl get nodes
node节点是Ready状态
# kubectl get pods

K8S:搭建dashboard--web管理界面_第1张图片
2:创建dashboard工作目录(master1节点)

# cd /root/k8s
# mkdir dashboard
# cd dashboard
拷贝官方的文件
https://github.com/kubernetes/kubernetes/tree/master/cluster/addons/dashboard

dashboard-rbac.yaml		      //角色管理控制 访问控制	
dashboard-secret.yaml         //网站安全,包含身份验证
dashboard-configmap.yaml      //整个网站配置
dashboard-controller.yaml	  //控制器
dashboard-service.yaml		  //服务,提供服务给别人访问

编写一个k8s-admin.yaml文件(为了后面生成令牌)
# vim k8s-admin.yaml
apiVersion: v1
kind: ServiceAccount
metadata:
  name: dashboard-admin
  namespace: kube-system
---
kind: ClusterRoleBinding
apiVersion: rbac.authorization.k8s.io/v1beta1
metadata:
  name: dashboard-admin
subjects:
  - kind: ServiceAccount
    name: dashboard-admin
    namespace: kube-system
roleRef:
  kind: ClusterRole
  name: cluster-admin
  apiGroup: rbac.authorization.k8s.io

在这里插入图片描述
2:创建这5个服务资源,才形成web界面

创建rbac控制管理资源(角色控制访问控制)
# kubectl create -f dashboard-rbac.yaml
需指定类型和命名空间才能查看状态
# kubectl get Role -n kube-system

创建安全资源
# kubectl create -f dashboard-secret.yaml
# kubectl get Secret -n kube-system

创建配置管理资源
# kubectl create -f dashboard-configmap.yaml
# kubectl get Configmap -n kube-system

创建控制器
# kubectl create -f dashboard-controller.yaml
# kubectl get ServiceAccount -n kube-system
# kubectl get deployment -n kube-system

创建服务资源
# kubectl create -f dashboard-service.yaml
# kubectl get service -n kube-system
# kubectl get svc -n kube-system

创建rbac控制管理资源(角色控制 访问控制)
K8S:搭建dashboard--web管理界面_第2张图片
创建安全资源
K8S:搭建dashboard--web管理界面_第3张图片
创建配置管理资源
在这里插入图片描述
创建控制器
K8S:搭建dashboard--web管理界面_第4张图片
创建服务资源
在这里插入图片描述
Service服务被提供出去,别人就能访问,yaml文件中指定了映射端口

查看创建在指定的kube-system命名空间下的详细信息

# kubectl get pods -n kube-system
查看如何访问
可看到具体分配到哪个node节点
# kubectl get pods -n kube-system -o wide
可看到对外提供访问的端口号
# kubectl get pods,svc -n kube-system

在这里插入图片描述
K8S:搭建dashboard--web管理界面_第5张图片
3:网页访问对应node节点:对外提供的端口号,显示谷歌浏览器无法访问的问题
K8S:搭建dashboard--web管理界面_第6张图片

K8S:搭建dashboard--web管理界面_第7张图片
4:需自己制作CA证书签名

# vim dashboard-cert.sh
cat > dashboard-csr.json <

K8S:搭建dashboard--web管理界面_第8张图片
5:让控制器能够通过证书进行安全验证,然后重新部署控制器
查看所在node节点

# vim dashboard-controller.yaml 
    - --auto-generate-certificates
    添加证书位置:
    - --tls-key-file=dashboard-key.pem
    - --tls-cert-file=dashboard.pem


重新部署更新
# kubectl apply -f dashboard-controller.yaml

再次查看dashboard资源所在node节点,有可能会变,因为proxy进行调度算法,进行重新分配
# kubectl get pods -n kube-system -o wide

K8S:搭建dashboard--web管理界面_第9张图片
网页重新刷新
点击 高级—> 继续前往 —> 仪表盘点击令牌 —> 输入令牌
K8S:搭建dashboard--web管理界面_第10张图片
K8S:搭建dashboard--web管理界面_第11张图片
6:生成令牌码,并复制粘贴到网页

生成令牌
# kubectl create -f k8s-admin.yaml 
查看
# kubectl get secret -n kube-system
详细查看令牌,并复制令牌码
# kubectl describe secret dashboard-admin-token-6k4jf -n kube-system

K8S:搭建dashboard--web管理界面_第12张图片
复制令牌码
K8S:搭建dashboard--web管理界面_第13张图片
粘贴到网页,输入令牌码
K8S:搭建dashboard--web管理界面_第14张图片
7:点击登录,就进入web界面,云原生环境搭建完成。
K8S:搭建dashboard--web管理界面_第15张图片

你可能感兴趣的:(docker,K8S)