Member-only story
Dependency-Free Kubernetes Cluster Monitoring
Introduce Murre for continued monitoring of Kubernetes containers
The go-to platform for deploying applications is now Kubernetes. For one, its clusters may include hundreds of resources like pods and deployments, and it is made up of several components and user-defined operators.
The variety of services, applications, and networks encapsulated in the resources make it challenging for users to comprehend how Kubernetes works. There are many different parts, such as what happens inside the container, which pod executes specific requests, and why the request is not executed successfully. Therefore, the cloud management team needs to keep observability and monitor the health state of the resources.
Observability involves three aspects: logging, tracing, and metrics. Through logging, we can understand the operations of the application. Tracing enables us to know where the problem occurs. Finally, metrics show the cluster’s resource usage and overall health status.
It is also one of the most invested areas in the CNCF community. The following image lists all the projects regarding observability in CNCF, many of which I have never used or known before.
Monitoring tools usually focus on collecting and aggregating metrics. But for getting the CPU and MEM usage of nodes, pods, and containers in the cluster, Murre, an open-source dependency-free monitoring Go tool, does better than the tools in this list.
Before we explore Murre, let’s take Prometheus + Grafana
and kubectl Top
command as examples to see how non-dependency-free monitoring tools function and what are Murre’s advantages.
Non-dependency-free Monitoring Tools
Prometheus + Grafana
As the most popular Kubernetes monitoring solution, it helps us get the CPU and MEM usage of the…