千家信息网

k8s实践(十):监控工具Weave Scope详解

发表于:2025-01-24 作者:千家信息网编辑
千家信息网最后更新 2025年01月24日,环境说明:主机名操作系统版本ipdocker versionkubelet version配置备注masterCentos 7.6.1810172.27.9.131Docker 18.09.6V1.1
千家信息网最后更新 2025年01月24日k8s实践(十):监控工具Weave Scope详解

环境说明:

主机名操作系统版本ipdocker versionkubelet version配置备注
masterCentos 7.6.1810172.27.9.131Docker 18.09.6V1.14.22C2Gmaster主机
node01Centos 7.6.1810172.27.9.135Docker 18.09.6V1.14.22C2Gnode节点
node02Centos 7.6.1810172.27.9.136Docker 18.09.6V1.14.22C2Gnode节点

k8s集群部署详见:Centos7.6部署k8s(v1.14.2)集群
k8s学习资料详见:基本概念、kubectl命令和资料分享
k8s高可用集群部署详见:Centos7.6部署k8s v1.16.4高可用集群(主备模式)

一、Weave Scope简介

Weave Scope自动生成应用程序的映射,使您能够直观地理解、监视和控制基于容器化微服务的应用程序。

Weave Scope可以监控kubernetes集群中的一系列资源的状态、资源使用情况、应用拓扑、scale、还可以直接通过浏览器进入容器内部调试等,其提供的功能包括:

  • 交互式拓扑界面
  • 图形模式和表格模式
  • 过滤功能
  • 搜索功能
  • 实时度量
  • 容器排错
  • 插件扩展

Weave Scope由App和Probe两部分组成:

  • Probe 负责收集容器和宿主的信息,并发送给 App
  • App 负责处理这些信息,并生成相应的报告,并以交互界面的形式展示

二、Weave Scope安装

1.安装Weave Scopea

[root@master ~]# kubectl apply -f "https://cloud.weave.works/k8s/scope.yaml?k8s-version=$(kubectl version | base64 | tr -d '\n')"namespace/weave createdserviceaccount/weave-scope createdclusterrole.rbac.authorization.k8s.io/weave-scope createdclusterrolebinding.rbac.authorization.k8s.io/weave-scope createddeployment.apps/weave-scope-app createdservice/weave-scope-app createddeployment.apps/weave-scope-cluster-agent createddaemonset.apps/weave-scope-agent created

2.资源查看

[root@master ~]# kubectl get all -n weave NAME                                            READY   STATUS    RESTARTS   AGEpod/weave-scope-agent-hx4t2                     1/1     Running   0          103spod/weave-scope-agent-vmbqr                     1/1     Running   0          103spod/weave-scope-agent-zd8x7                     1/1     Running   0          103spod/weave-scope-app-b99fb9585-77rld             1/1     Running   0          104spod/weave-scope-cluster-agent-58f5b5454-vnckm   1/1     Running   0          103sNAME                      TYPE        CLUSTER-IP     EXTERNAL-IP   PORT(S)   AGEservice/weave-scope-app   ClusterIP   10.99.31.182           80/TCP    105sNAME                               DESIRED   CURRENT   READY   UP-TO-DATE   AVAILABLE   NODE SELECTOR   AGEdaemonset.apps/weave-scope-agent   3         3         3       3            0                     104sNAME                                        READY   UP-TO-DATE   AVAILABLE   AGEdeployment.apps/weave-scope-app             1/1     1            1           105sdeployment.apps/weave-scope-cluster-agent   1/1     1            1           105sNAME                                                  DESIRED   CURRENT   READY   AGEreplicaset.apps/weave-scope-app-b99fb9585             1         1         1       105sreplicaset.apps/weave-scope-cluster-agent-58f5b5454   1         1         1       105s

3.对外访问

修改service/weave-scope-app,将其模式由ClusterIP修改为NodePort,使其可以直接通过NodeIP:Port方式访问

[root@master ~]# kubectl edit service -n weave weave-scope-appservice/weave-scope-app edited

4.登录

登录url:http://172.27.9.131:30022/

三、使用Weave Scope

1.资源查看的两种方式

以pod为例查看资源,资源有两种展现形式:

图形式性:

图形方式还会展示pod之间的拓扑关系

表格形式:

Weave Scope监控对象有进程、容器、pods、主机等,监控项有cpu、内存、平均负载等。

2.查看资源使用详情

点击某个pod,会展示状态、资源使用、进程等详细信息

3.pod日志查看

资源使用详情中点击'Get logs'


4.pod描述查看


5.资源伸缩

点击deployment类型的Controllers,可以进行deployment的伸缩和查看

6.容器操作

可以对容器进行attach、exec shell、restart、paus和stop操作

进入容器,执行df -h操作

7.展示条件选择

左下角可按条件展示,有容器类型(系统或者应用)、容器状态(停止或者运行)、命名空间等。

8.搜索功能

按容器名搜索

按资源使用搜索

0