What is containerd?
From the containerd Github page: “containerd is an industry-standard container runtime with an emphasis on simplicity, robustness and portability. It is available as a daemon for Linux and Windows, which can manage the complete container lifecycle of its host.”
containerd was originally created as a low-layer runtime manager for the Docker engine, was part of the Cloud Native Computing Foundation (CNCF) ecosystem, and as of February 28, 2019, is officially a graduated project within CNCF. 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.
How to Monitor containerd
Monitoring containerd and its applications requires the ability to understand how different components run within the containerd environment. Effectively monitoring a container-based application requires visibility at the host, container, component, and code level. Instana provides the most efficient way to discover and monitor containerized applications. To begin, install the Instana Agent onto the host and the agent automatically discovers all containers and components running in the environment. Once discovered, the agent deploys all appropriate monitoring sensors and begins tracing and analyzing every application request. Instana leverages a combination of machine learning and preset health rules to automatically determine the health of the applications and infrastructure components.
Metrics – The Instana agent automatically identifies containerd running on the host and, with no manual effort required, deploys and configures Instana’s containerd monitoring sensor. Instana references its curated knowledge base to understand what performance metrics are relevant to collect as well as what parameters must be configured. Specifically, Instana’s automatic configuration for containerd is set to track things like Container Image, Create and Start Timestamp, and Container ID as shown in the screenshot below.
Health – 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 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.
How to monitor containerd based microservice applications with Instana
To monitor your containerd based microservices with Instana, only 1 agent per host is required. Once installed, every container on that host sends monitoring data through the single, lightweight agent, minimizing overhead while also simplifying the overall deployment of Instana. Instana will also automatically trace every application request flowing through your environment and pull together each distributed trace for a full, end-to-end view of every request. There is no sampling of any kind (and no partial traces) so you’ll always have a complete data set to identify the root cause of any problematic request.
Most important, you’ll also benefit from full analysis of every user impact, performed automatically by Instana, that correlates all of the data from the traces with the underlying container and host metrics. By doing so, Instana provides root cause analysis within a few seconds so that you can update your services as often as you need to without worrying if there are regressions impacting your customers.
Instana’s containerd monitoring includes automatic and continuous discovery, dependency mapping, metric monitoring, distributed tracing, anomaly detection, and analytics across the complete trace data set. This means you’ll always know everything that containerd is doing and the impact to user requests at all times. To see Instana’s containerd monitoring in action sign up for a free trial of Instana today.