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

5 篇文章 0 订阅

搭建dashboard-UI界面

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

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

在这里插入图片描述
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控制管理资源(角色控制 访问控制)
在这里插入图片描述
创建安全资源
在这里插入图片描述
创建配置管理资源
在这里插入图片描述
创建控制器
在这里插入图片描述
创建服务资源
在这里插入图片描述
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

在这里插入图片描述
在这里插入图片描述
3:网页访问对应node节点:对外提供的端口号,显示谷歌浏览器无法访问的问题
在这里插入图片描述

在这里插入图片描述
4:需自己制作CA证书签名

# vim dashboard-cert.sh
cat > dashboard-csr.json <<EOF
{
   "CN": "Dashboard",
   "hosts": [],
   "key": {
       "algo": "rsa",
       "size": 2048
   },
   "names": [
       {
           "C": "CN",
           "L": "BeiJing",
           "ST": "BeiJing"
       }
   ]
}
EOF

K8S_CA=$1
cfssl gencert -ca=$K8S_CA/ca.pem -ca-key=$K8S_CA/ca-key.pem -config=$K8S_CA/ca-config.json -profile=kubernetes dashboard-csr.json | cfssljson -bare dashboard
kubectl delete secret kubernetes-dashboard-certs -n kube-system
kubectl create secret generic kubernetes-dashboard-certs --from-file=./ -n kube-system
删除原有的证书,创建自己的证书

生成CA证书,生成到/root/k8s/k8s-cert/中
# bash dashboard-cert.sh /root/k8s/k8s-cert/

在这里插入图片描述
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

在这里插入图片描述
网页重新刷新
点击 高级—> 继续前往 —> 仪表盘点击令牌 —> 输入令牌
在这里插入图片描述
在这里插入图片描述
6:生成令牌码,并复制粘贴到网页

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

在这里插入图片描述
复制令牌码
在这里插入图片描述
粘贴到网页,输入令牌码
在这里插入图片描述
7:点击登录,就进入web界面,云原生环境搭建完成。
在这里插入图片描述

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值