containerd Monitoring and Performance Management
containerd is an industry-standard container runtime that emphasizes simplicity, robustness, and portability for containerd monitoring. containerd is available as a daemon for Linux and Windows, which can manage the complete container lifecycle of its host. Instana’s comprehensive containerd monitoring goes beyond simple container metrics with automatic discovery, deployment, configuration, health determination, and performance monitoring at multiple levels:
- Automated discovery and monitoring of each and every containerd container
- Automated discovery of technologies operating within each containerd container
- Real-time dependency mapping and monitoring of all applications running across the entire system
containerd was originally created as a low-layer runtime manager for the Docker engine. The largest containerd use case is as a layer between the Docker engine and the OCI runc executor. containerd is a high-level runtime that supports multiple low-level runtimes (such as storage and networking, via a runtime handler). Being that containerd is focused on operational use cases, like running containers on servers, it manages the complete container lifecycle of its host system from image storage and transfer to container execution and supervision. Monitoring the containerd environment and the applications running on those containers requires the ability to understand how different application components run within a containerd environment.
Managing containerd based applications requires performance visibility at the host, container, component, and code level. Instana automates the discovery and monitoring of containerd applications. After a quick installation of the Instana agent into the virtual or physical host, the agent automatically discovers all containers and software components running in the environment, deploys the appropriate application monitoring sensors, and begins tracing every application request end-to-end.
containerd Performance Monitoring and Configuration
The Instana agent will automatically identify containerd running on the system resources and will deploy and configure Instana’s containerd sensor. Instana leverages its curated knowledge base that already knows what performance metrics are relevant for collection and what parameters must be configured to achieve that. Specifically, Instana’s automatic configuration for containerd is set to track things like Container ID, Image, Created at, Updated at, containerd namespace, and labels.
Typical containerd monitoring metrics include:
- CPU usage
- CPU throttling
- Memory usage
- Memory active
- Memory inactive
In addition to automatically collecting performance metrics, the Instana containerd monitoring sensor automatically collects KPIs on the containerd process to determine its health. Health signatures from the curated knowledge base are used to raise Issues and/or Incidents, depending on user impact. Two primary resources are CPU and Memory, for which Instana collects various KPIs including CPU Load, CPU Steal, and Memory Used.