对于每个容器,在每个层次结构中创建一个 cgroup。在具有旧版本 LXC 用户空间工具的旧系统上,cgroup 的名称是容器的名称。对于更新版本的 LXC 工具,cgroup 是lxc/.

    对于使用 cgroups 的 Docker 容器,容器名称是容器的完整 ID 或长 ID。如果一个容器在 中显示为 ae836c95b4c3 docker ps,它的长 ID 可能类似于 ae836c95b4c3c9e9179e0e91015512da89fdec91612f63cebae57df9a5444c79. docker inspect您可以使用或进行查找docker ps —no-trunc。

    1. [root@C26B4FD2CE277D4F ~]# docker ps --no-trunc
    2. CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
    3. 0df78c337d3ecfc27e70208762ffdd88ae686b50acd38349c2f727131f371b90 registry.cn-hangzhou.aliyuncs.com/bd/node-baidu-video:v6.299-t20220617 "/bin/sh /PCDN/softdog.sh" 22 hours ago Up 22 hours xcdn
    4. f477315f06da836286cacb0179d7e899fe26e3fd3089dd2e720911d4f469c333 registry.cn-hangzhou.aliyuncs.com/bd/rce:baidu-xcdn "bash /apps/entrypoint.sh" 10 days ago Up 8 days rce-baidu-xcdn
    5. b6d4ac38205b83ec0e55274d3d3cb0eae8b816cb4bbc91758ad52b0685b4afee registry.cn-hangzhou.aliyuncs.com/bd/rce:bd-zabbix "bash /apps/entrypoint.sh" 2 weeks ago Up 8 days rce-bd-zabbix
    6. [root@C26B4FD2CE277D4F ~]#
    1. [root@C26B4FD2CE277D4F ~]# ls /sys/fs/cgroup/memory/docker/
    2. 0df78c337d3ecfc27e70208762ffdd88ae686b50acd38349c2f727131f371b90 memory.force_empty memory.kmem.tcp.max_usage_in_bytes memory.memsw.max_usage_in_bytes memory.stat
    3. b6d4ac38205b83ec0e55274d3d3cb0eae8b816cb4bbc91758ad52b0685b4afee memory.kmem.failcnt memory.kmem.tcp.usage_in_bytes memory.memsw.usage_in_bytes memory.swappiness
    4. cgroup.clone_children memory.kmem.limit_in_bytes memory.kmem.usage_in_bytes memory.move_charge_at_immigrate memory.usage_in_bytes
    5. cgroup.event_control memory.kmem.max_usage_in_bytes memory.limit_in_bytes memory.numa_stat memory.use_hierarchy
    6. cgroup.procs memory.kmem.slabinfo memory.max_usage_in_bytes memory.oom_control notify_on_release
    7. f477315f06da836286cacb0179d7e899fe26e3fd3089dd2e720911d4f469c333 memory.kmem.tcp.failcnt memory.memsw.failcnt memory.pressure_level tasks
    8. memory.failcnt memory.kmem.tcp.limit_in_bytes memory.memsw.limit_in_bytes memory.soft_limit_in_bytes
    9. [root@C26B4FD2CE277D4F ~]#

    将所有内容放在一起查看 Docker 容器的内存指标,请查看以下路径:

    • /sys/fs/cgroup/memory/docker//在 cgroup v1 上,cgroupfs驱动程序
    • /sys/fs/cgroup/memory/system.slice/docker-.scope/在 cgroup v1 上,systemd驱动程序
    • /sys/fs/cgroup/docker/在 cgroup v2 上,cgroupfs驱动程序
    • /sys/fs/cgroup/system.slice/docker-.scope/在 cgroup v2 上,systemd驱动程序

    参考文章:
    https://docs.docker.com/config/containers/runmetrics/#control-groups
    https://blog.csdn.net/fly910905/article/details/123718418