当前位置:首页 > Web开发 > 正文

k8s群集的几种Web

2024-03-31 Web开发

博文大纲:
一、部署dashboard的Web-UI界面
二、部署weave-scope监控k8s集群
三、部署Prometheus服务

一、部署dashboard的Web-UI界面 1、下载yaml文件配置并执行 #下载github上的项目(github搜索dashboard即可找到该项目) [[email protected] ~]# wget https://raw.githubusercontent.com/kubernetes/dashboard/v1.10.0/src/deploy/recommended/kubernetes-dashboard.yaml [[email protected] ~]# vim kubernetes-dashboard.yaml #跳转至112行,修改其指定的镜像,修改如下: image: registry.cn-hangzhou.aliyuncs.com/google_containers/kubernetes-dashboard-amd64:v1.10.0 #默认指定的是Google的镜像,国外的下载不下来,所以要改为国内阿里云的 #跳转到150行,修改其对应的service,将其类型配置为NodePort,修改如下: kind: Service apiVersion: v1 metadata: labels: k8s-app: kubernetes-dashboard name: kubernetes-dashboard namespace: kube-system spec: type: NodePort #添加类型为NodePort ports: - port: 443 targetPort: 8443 nodePort: 30230 #映射到宿主机的端口为30230 selector: k8s-app: kubernetes-dashboard #修改完成后,保存退出即可 [[email protected] ~]# kubectl apply -f kubernetes-dashboard.yaml #执行yaml文件 [[email protected] ~]# kubectl get pod -n kube-system | grep dashboard #确认其正常运行 kubernetes-dashboard-6cfb7d8f54-l6jgj 1/1 Running 0 88s 2、客户端通过火狐浏览器访问

必须要用火狐浏览器,Google和默认的edge都无法访问。

1)访问https://192.168.20.6:30230 ,(192.168.20.6是我这里master的IP,实际上访问群集内的任意节点IP+30230端口都可以),然后点击如下:

技术图片

2)在终端创建用户并查看登录令牌:

[[email protected] ~]# kubectl create serviceaccount dashboard-admin -n kube-system #创建dashboard管理用户 #绑定用户为集群的管理员 [[email protected] ~]# kubectl create clusterrolebinding dashboard-cluster-admin --clusterrole=cluster-admin --serviceaccount=kube-system:dashboard-admin [[email protected] ~]# kubectl get secrets -n kube-system | grep dashboard-admin #获取刚刚创建的用户的token dashboard-admin-token-97g76 kubernetes.io/service-account-token 3 15s [[email protected] ~]# kubectl describe secrets -n kube-system dashboard-admin-token-97g76 #注意:上面的最后一段取决于上面查看到的用户的secrets名字。 Name: dashboard-admin-token-97g76 Namespace: kube-system ..................#省略部分内容 Data ==== token: #将该token字段后面的值复制下来

3)将token值粘贴到下面:

技术图片

4)至此,即可在web界面进行监控群集节点的信息,及创建资源对象(一般不会在这上面进行创建资源对象):

技术图片

二、部署weave-scope监控k8s集群

这个服务的yaml文件在github上不太容易找到,还是附上找这个链接的过程吧!如下:

1、github搜索“scope”,然后点击如下:

技术图片

2、进入后,下拉页面,点击“kubernetes”,如下:

技术图片

3、进入后,再次下拉页面:

技术图片

4、将获得的链接下载:

[[email protected] ~]# wget https://cloud.weave.works/k8s/scope.yaml

5、修改下载的yaml文件并运行:

[[email protected] ~]# vim scope.yaml #编辑yaml文件 #跳转至197行,修改其service的端口类型 spec: type: NodePort #修改类型为NodePort ports: - name: app port: 80 protocol: TCP targetPort: 4040 nodePort: 30231 #映射到宿主的端口为30231 [[email protected] ~]# kubectl apply -f scope.yaml #执行yaml文件 #查看容器的运行情况,,确定处于正常运行 [[email protected] ~]# kubectl get pod -o wide -n weave #默认在weave名称空间 NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES weave-scope-agent-b4dwz 1/1 Running 0 73s 192.168.20.8 node02 <none> <none> weave-scope-agent-lksqh 1/1 Running 0 73s 192.168.20.7 node01 <none> <none> weave-scope-agent-mv6mj 1/1 Running 0 73s 192.168.20.6 master <none> <none> weave-scope-app-78cff98cbc-kxp9v 1/1 Running 0 73s 10.244.2.2 node02 <none> <none> weave-scope-cluster-agent-7cc889fbbf-ngf8j 1/1 Running 0 73s 10.244.1.3 node01 <none> <none> #DaemonSet资源对象:weave-scope-agent(代理):负责收集节点的信息; #deployment资源对象:weave-scope-app(应用):从agent获取数据,通过web UI展示并与用户交互; #DaemonSet资源对象的特性和deployment相比,就是DaemonSet资源对象会在每个节点上都运行且只能运行一个pod。 #由于每个节点都需要监控,所以用到了DaemonSet这种资源对象

6、浏览器访问群集的映射端口30231,如下:

技术图片

温馨提示: 本文由Jm博客推荐,转载请保留链接: https://www.jmwww.net/file/web/42691.html