Mizu is an API traffic viewer for Kubernetes that enables users to view all API communication between microservices to help debug and troubleshoot regressions.
“Viewing API traffic between microservices is essential if you want to understand the root cause of problems found in complex distributed systems,” Alex Haiut, the co-founder and vice president of engineering at UP9, the company behind the project, wrote in a blog post. “Through our efforts to observe API traffic between microservices, we were able to isolate a chunk of our technology and package it as an open source project.”
Users can easily view traffic in the same way that they can use Google Chrome Dev Tool to view the traffic of their webapps.
The tool works by injecting a container that performs a tcpdump-like operation at the node level of a Kubernetes cluster. The operation can be performed on-demand via a CLI that injects the container when run. Alternatively, when ^C is used, it removes the container.
Mizu doesn’t require code instrumentation. It can be used in true on-demand fashion without prior preparation.
Mizu uses Kubectl and can therefore run on any node through which kubectl is configured.
The tool supports HTTP/1.x, HTTP/2, AMQP, Apache Kafka, Redis protocols. A Kubernetes server version of 1.16.0 or higher is required.