January 15, 2023

KubeWatch 2.0 Released

How is KubeWatch used and what's new in version 2.0.0?

KubeWatch is a popular open source project for tracking changes to Kubernetes clusters.

We recently released KubeWatch version 2.0.0. This is the first release since VMWare transferred the project to Robusta.dev. This version includes our own improvements, as well as contributions from two other companies.

How is KubeWatch used?

Companies use KubeWatch to improve visibility into their Kubernetes clusters.

For example, using KubeWatch you can answer questions like:

  • What was deployed to us-west-1 last night at 23:04?
  • When was the last time that a specific application was deployed to production?
  • Is the version of a specific app running in our US cluster the same as the version running in our EU cluster?
  • What Kubernetes events occurred after the rollout of version XYZ last night?

KubeWatch provides a valuable datasource for improving Kubernetes reliability.

What's new in KubeWatch 2.0?

Version 2.0 improves stability and performance. It adds support for ARM clusters and new Kubernetes versions.

APIServer coverage has been expanded too! You can now watch Kubernetes Events and ClusterRoleBindings.

Finally, KubeWatch can send it's data to several new destinations. There is an improved Slack webhook integration, as well as support for the Cloud Events API. We use the latter to send KubeWatch events to Robusta.dev, but all Cloud Event destinations are supported.

See the Release Notes for the full list of improvements.

What is the relationship between KubeWatch and Robusta?

Robusta uses KubeWatch behind the scenes to track changes to Kubernetes objects. It takes KubeWatch's underlying capabilities and builds upon them for monitoring and troubleshooting use cases.

For example, KubeWatch supports sending a message on any Job change, whereas Robusta can be configured to notify once on Job failure:

customPlaybooks:
- triggers:
  - on_job_failure:
      namespace_prefix: robusta
  actions:
  - create_finding:
      title: "Job $name on namespace $namespace failed"
      aggregation_key: "Job Failure"
  - job_events_enricher: {}

Here is an example message in Slack:

Finally, Robusta gathers data from many sources - not just KubeWatch. It pulls together disparate events like Prometheus alerts and pod logs, unifying them into a single view of your cluster.

Here is a diagram showing how the pieces fit together.

Is KubeWatch used in the Robusta SaaS platform?

Yes, KubeWatch powers various features in the Robusta SaaS platform, like the cluster/namespace comparison screen:

By and large, KubeWatch and the Robusta OSS perform data collection and ship it to destinations like Slack, MSTeams, PagerDuty, the Robusta SaaS, and more.

The Robusta SaaS adds a single pane of glass for all that data, plus the ability to drill down and troubleshoot issues.

If you prefer, both KubeWatch and the Robusta OSS can be used standalone, without the SaaS platform.

What's Next for KubeWatch?

New versions are coming soon! We have a few more PRs from the community to review, as well as new features of our own.

Please share the word on social media and by sending a tip to your favorite Kubernetes newsletters.

Long live KubeWatch!

Never miss a blog post.