Docker核心技术-控制组

控制组Cgroups是 Linux 内核的一个特性,主要用来对共享资源进行隔离、限制、审计等。只有能控制分配到容器的资源,才能避免当多个容器同时运行时的对系统资源的竞争。

控制组可以提供对容器到内存\cpu\磁盘IO等资源进行限制和计费管理.控制组到设计目标是为不同的应用情况提供统一的接口,从控制单一进程到系统级虚拟化.

  • 资源限制(Resource limiting):可以将组设置成不超过设定的内存限制.
  • 优先级(Prioritization):通过优先级让一些组优先得到更多到CPU等资源.
  • 资源审计(Accounting):通过统计系统实际上把多少资源用到适合的目的上,可以用cpuacct子系统记录某个进程组使用CPU的时间.
  • 隔离(Isolation):为组隔离命名空间,使一个组不会看到另一个组的进程/网络连接和文件系统.
  • 控制(Control):挂起/恢复和重启等操作.

Docker组应用的限制在sys/fs/cgroup/memory/docker/可以看到,用户可以修改这些文件的值,来限制Docker应用资源.进入具体容器中可以看到对应容器的一些状态信息.

猜你喜欢

转载自blog.csdn.net/qq_30164225/article/details/79516060