Kubernetes 开源桌面监控工具 - KubeScrape
共 1512字,需浏览 4分钟
·
2022-02-27 14:49
KubeScrape 是一个开源监控工具,旨在帮助 Kubernetes 用户跟踪集群的健康状况、查看实时指标和查看结构,该应用程序目前有 5 个直观的页面。
![](https://filescdn.proginn.com/9e674b3d1a38a5dab9648160d0414fc6/9b7e5365d5d82e1c947e1e49cec5e2ad.webp)
安装
该应用程序是一个桌面应用程序,只需要从 github release 页面(https://github.com/oslabs-beta/KubeScrape/releases)点击下载与你操作系统兼容的可执行文件,在本地运行即可。
但是要使用该应用程序需要满足一些先决条件:
(必须)首先必须在你的 Kubernetes 集群中安装 Prometheus,并且提供了 node-exporter、kube-state-metrics 指标数据。 (必须)安装了 Prometheus 实例后,需要在本地能够通过 30000 端口访问,这是因为目前 KubeScrape 是通过该端口进行 API 调用的,后续会提供让用户输入 Prometheus 地址的功能。 (可选)如果配置了 Prometheus 的报警规则,KubeScrape 的 Alerts 选项卡会只显示报警相关的信息。
我这里在 Kubernetes 集群中安装了 Prometheus,并且有一个 Service 暴露服务:
➜ kubectl get svc -n kube-mon
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
prometheus ClusterIP 10.108.206.232 9090/TCP 45d
然后我可以在本地通过 kubectl port-forward
将 Prometheus 服务暴露在 30000 端口上:
➜ kubectl port-forward service/prometheus 30000:9090 --address 0.0.0.0 --namespace=kube-mon
Forwarding from 0.0.0.0:30000 -> 9090
此外如果你没有安装相关的指标,可以通过 https://github.com/annechanchan/KubeScrape_PrometheusManifests 仓库来轻松部署,包括报警规则。
特性
上面的需求满足后,在本地直接打开 KubeScrape 应用即可正常使用了,首页提供了集群运行状况和一些重要的集群指标信息概述:
![](https://filescdn.proginn.com/9f7de9d48a6053d8c361783b5cdcbb47/2818f1cb4ae7db055975b638251b7535.webp)
![](https://filescdn.proginn.com/595378d9b67223d396f2d8ed2afd1e74/6dd32c33ae3afc5da45ab53471096d9d.webp)
点击一个节点可以路由到节点详细信息页面,可以获取有关该节点上正在运行的 pod 信息:
![](https://filescdn.proginn.com/731b4df6dce1a4532c70533713940729/e504417ad6690f97fbaec5564d4206d5.webp)
同样点击 Pod 则可以路由到 Pod 的详细信息页面,在该页面可以查看 CPU、内存等资源的相关使用情况:
![](https://filescdn.proginn.com/2f77b37d5eb0d149a7f78db6b08d0563/66587d2a623d02bf840da6b3c5c749f6.webp)
此外 Alerts 页面还会显示 Prometheus 中处于 Firing 状态的报警规则,按照报警名称进行分组:
![](https://filescdn.proginn.com/f00c4d8303fa0699d1485d651c0f13e3/f50a3ca2be41064215739d594ce7bd0d.webp)
Visualizer 页面可以展示 kubernetes 集群对象的关系图,按命名空间组织。
总体来说该项目还处于较早期阶段,功能也略显鸡肋,但是如果作为开发学习的范例则是一个非常好的案例。
项目仓库:https://github.com/oslabs-beta/KubeScrape