一款简单好用的k8s资源监视器

关注公众号,获取更多精彩内容
Kubewatch 是一个开源的 Kubernetes 资源事件监控工具,它可以监听 Kubernetes 集群中的资源事件,并将这些事件通知到各种消息渠道,如 Slack、HipChat、Mattermost、Webhook 等。
Kubewatch 对于那些希望实时监控 Kubernetes 集群状态变化的运维人员和开发者来说,是一个非常有用的工具。

一. 什么是Kubewatch?

Kubewatch 最初由 Bitnami 发起,现由Robusta.dev维护的一个轻量级 Kubernetes 事件监控工具。它的主要功能是监听 Kubernetes 集群中的资源事件(如 Pod 创建、删除、更新等),并将这些事件通知到配置好的消息渠道。通过使用 Kubewatch,运维人员和开发者可以及时了解集群中的资源变化,从而迅速做出响应。

Kubewatch 的特点

  1. 简单易用:Kubewatch 安装和配置非常简单,不需要复杂的设置。
  2. 多种通知渠道:Kubewatch 支持多种消息通知渠道,包括 Slack、HipChat、Mattermost、Flock、Webhook、MS Teams 和 SMTP 等。
  3. 灵活的事件过滤:用户可以配置需要监听的资源类型和事件类型,减少不必要的通知。

二. 安装Kubewatch

Kubewatch 可以通过 Helm Chart进行安装。Helm 是 Kubernetes 的包管理工具,可以方便地安装和管理 Kubernetes 应用。
  1. 添加 Robusta仓库

$ helm repo add robusta https://robusta-charts.storage.googleapis.com $ helm repo update
2. 安装 Kubewatch
$ helm install kubewatch robusta/kubewatch --set='rbac.create=true,slack.channel=#YOUR_CHANNEL,slack.token=xoxb-YOUR_TOKEN,resourcesToWatch.pod=true,resourcesToWatch.daemonset=true'
3.  查看Pod状态 
$ kubectl get podNAME                        READY   STATUS    RESTARTS   AGEkubewatch-8cf99b4dc-pmb6k   1/1     Running   0          2m26s

三. 配置Kubewatch

安装完 Kubewatch 后,需要进行一些基本配置,指定需要监控的资源类型和通知渠道。
下面的相关的Configmap模板:
apiVersion: v1kind: ConfigMapmetadata:  name: kubewatch-configdata:  .kubewatch.yaml: |    namespace: ""    handler:      slack:        token:         channel:     resource:      deployment: false      replicationcontroller: false      replicaset: false      daemonset: false      statefulset: false      services: true      pod: true      secret: false      configmap: false      hpa: false      coreevent: false      event: true
在这个配置文件中,我们指定了使用 Slack 作为通知渠道,并设置了需要监控的资源类型(如 Deployment 和 Pod)。
Kubewatch 支持多种通知渠道,不同渠道的配置方式略有不同。如果你希望将事件通知发送到自定义的 Webhook 端点,可以进行如下配置:
handler:  webhook:    url: ""


功能展示效果:


-------------------------------------------

Kubernetes精品教程限时特惠,点击查看  ↓
全文结方便的话可以随手点个“赞”或者“在看”,也欢迎分享文章到朋友圈和技术群,感谢阅读!

请使用浏览器的分享功能分享到微信等