Chapter 11. Debugging Istio

Like any other software, operating Istio can mean troubleshooting and debugging from time to time. Istio and other open source tooling provides logging, introspection, and debugging to assist in component management.

Introspecting Istio Components

Istio components have been designed to incorporate a common introspection package called ControlZ (ctrlz). ControlZ is a flexible introspection framework that makes it easy to inspect and manipulate the internal state of a running Istio component. ControlZ offers an administrative UI, to which components provide access by opening a port (9876 by default) that can be accessed from a web browser or via REST for access and control from external tools. The simple UI of the ControlZ introspection framework gives an interactive view into the state of the Istio component.

Mixer, Pilot, Citadel, and Galley are built with the ctlz package included, whereas gateways are not. Gateways do not implement the ControlZ administrative UI, because these are Envoy instances that instead implement Envoy’s administrative console. When Mixer, Pilot, Citadel, and Galley components start, a message is logged indicating the IP address and port to connect to in order to interact with ControlZ. ControlZ is designed around the idea of “topics.” A topic corresponds to the different sections of the UI. There are a set of built-in topics representing the core introspection functionality, and each control-plane component that uses ControlZ ...

Get Istio: Up and Running now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.