-
Notifications
You must be signed in to change notification settings - Fork 297
container resource view isolation
Hong Zhiguo edited this page Nov 3, 2020
·
2 revisions
Tencent Linux 基于内核实现了类lxcfs的有关cpu、内存统计、进程、磁盘统计等信息的隔离 在docker中,通过如下接口,看到的不再是docker所在的物理机系统的信息,而是docker自己的统计信息:
- /proc/cpuinfo
- /proc/meminfo
- /proc/stat
- /proc/uptimes
- /proc/loadavg
- /proc/diskstat
sysctl -w kernel.stats_isolated=0|1
该开关可读可写,且只有系统级开关开启的情况下,才能启用信息隔离。默认是关闭,
1. 信息隔离控制开关(在docker里面进行配置)
sysctl -w kernel.container_stats_isolated=0|1
该开关可写不可读,且在系统级开关和它同时开启的情况下才有效,默认开启 系统可以在容器对应cgroup的CPU、cpuacct、cpuset、blkio等子系统的xxx.stats_isolated(xxx子系统名)来查看docker是否开启了docker级别开关, 该开关系统只能查看,不能设置
2. cpuinfo显示控制开关
sysctl -w kernel.cpuquota_aware=0|1
默认情况下/proc/cpuinfo显示的cpu个数与cpuset子系统的cpus是相同的。 而lxcfs则使用cpu子系统的quota来控制CPU的个数,为了和lxcfs一致,提供了该开关 默认开启,即:/proc/cpuinfo显示的cpu个数基于cpu子系统的quota来控制