2.2.2 Conmon:容器监控器的职责(状态跟踪、日志收集) 作为容器运行时生态中承上启下的关键组件,Conmon(Container Monitor)常被比作容器世界的"守夜人"。它既不像runc那样直接操作内核命名空间,也不像kubelet那样承载编排逻辑,却以其独特的定位解决了容器生命周期管理中最棘手的两个难题:如何可靠地跟踪容器主进程的死亡,以及如何在不影响容器I/O性能的前提下完成日志的持久化与转发。这个由C语言编写的轻量级二进制文件,体积不足2MB,却是支撑CRI-O、Podman等现代容器引擎稳定运行的基石。 当我们深入剖析Conmon的实现机理时,会发现它本质上是一个精密的进程状态收割机与I/O多路复用器的复合体。