Kubernetes 集群可视化监控之Weave Scope

文章目录

  • Kubernetes 集群可视化监控之Weave Scope
    • 一、背景
    • 二、组件详解
      • 1、功能
      • 2、组成
      • 3、部署模式
    • 三、安装部署
    • 四、使用
      • 1、资源对象查看
        • 1.1、图表方式
        • 1.2、表格方式
      • 2、对象资源使用情况
      • 3、日志信息
      • 4、描述信息
      • 5、资源伸缩
      • 6、容器操作
      • 7、条件查询
      • 8、搜索功能
        • 8.1、名称
        • 8.2、资源使用率
    • 五、小结

Kubernetes 集群可视化监控之Weave Scope

一、背景

在生产环境中 kubernetes 应用部署众多,需要一款可视化工具方便日常获知集群的实时状态,并为故障排查提供及时和准确的数据支持。在此背景下,Weaveworks 的项目 Weave Scope 应运而生,其是一款 Docker 和 Kubernetes 可视化监控工具。Scope 提供了至上而下的集群基础设施和应用的完整视图,用户可以轻松对分布式的容器化应用进行实时监控和问题诊断,以确保容器应用程序的稳定性和性能,通过查看容器上下文的度量/标记,以及原数据,在容器内部的进程之间可以轻松的确定运行服务消耗最多CPU/内存资源的容器,

官网地址:https://www.weave.works/docs/scope/latest/installing/

二、组件详解

1、功能

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

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

2、组成

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

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

3、部署模式

  • weave-scope-agent,集群每个节点上都会运行的 scope agent 程序,负责收集数据,其部署为DaemonSet模式。
  • weave-scope-app,scope 应用,从 agent 获取数据,通过 Web UI 展示并与用户交互,其部署为Deployment模式。
  • weave-scope-app,默认是 ClusterIP 类型,为了方便已通过kubectl edit修改为NodePort

三、安装部署

$ kubectl apply -f "https://cloud.weave.works/k8s/scope.yaml?k8s-version=$(kubectl version | base64 | tr -d '\n')"


# 修改svc 为NodePort 
$ kubectl patch svc $(kubectl get svc -n weave |grep weave-scope-app |awk '{print $1}') -p '{"spec":{"type": "NodePort"}}' -n weave

$ kubectl get svc -n weave |grep weave-scope-app 
weave-scope-app   NodePort   10.96.49.99           80:32709/TCP   27d

# 查看weave 的pod 
$ kubectl get pod -n weave -o wide
NAME                                        READY   STATUS    RESTARTS   AGE     IP               NODE                   NOMINATED NODE   READINESS GATES
weave-scope-agent-8qng5                     1/1     Running   0          11m     172.16.106.200   k8s-master.novalocal              
weave-scope-agent-gq292                     1/1     Running   0          11m     172.16.106.203   k8s-node-3.novalocal              
weave-scope-agent-kvcv5                     1/1     Running   0          11m     172.16.106.226   k8s-node-2.novalocal              
weave-scope-agent-tzpwm                     1/1     Running   0          11m     172.16.106.227   k8s-node-1.novalocal              
weave-scope-app-d54d4f97f-9mj7h             1/1     Running   0          7m35s   10.100.156.165   k8s-node-3.novalocal              
weave-scope-cluster-agent-5c5dcc8cb-csjvs   1/1     Running   0          11m     10.100.156.167   k8s-node-3.novalocal              

访问地址:http://node_ip:32709/

四、使用

1、资源对象查看

在此以 POD 资源对象为例,Weave Scope监控对象有进程、容器、pods、主机等,监控项有 cpu、内存、平均负载等。

1.1、图表方式

Kubernetes 集群可视化监控之Weave Scope_第1张图片

1.2、表格方式

Kubernetes 集群可视化监控之Weave Scope_第2张图片

2、对象资源使用情况

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

Kubernetes 集群可视化监控之Weave Scope_第3张图片

3、日志信息

点击具体 POD 的 get logs 弹出 Terminal 窗口查看日志

Kubernetes 集群可视化监控之Weave Scope_第4张图片

4、描述信息

点击具体 POD上的 describe 通过 Terminal 来查看 POD 资源信息

Kubernetes 集群可视化监控之Weave Scope_第5张图片

5、资源伸缩

点击 deployment 类型的 Controllers,可以来 web 界面来扩展或缩小以及查看 POD 的数量及详细信息。

Kubernetes 集群可视化监控之Weave Scope_第6张图片

6、容器操作

可以对容器进行 attach、exec shell、restart、paus 和 stop 操作以及容器日志查看

Kubernetes 集群可视化监控之Weave Scope_第7张图片

7、条件查询

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

Kubernetes 集群可视化监控之Weave Scope_第8张图片

8、搜索功能

8.1、名称

Kubernetes 集群可视化监控之Weave Scope_第9张图片

8.2、资源使用率

Kubernetes 集群可视化监控之Weave Scope_第10张图片

五、小结

weave scope 可以以其简洁的可视化为我们更生动形象的展现出service/controller/pod等资源对象的管理及简单的 Web UI 操作,方便故障排除及时定位。

你可能感兴趣的:(操作系统相关,Kubernetes,kubernetes)