docker资源限制

容器得以实现 依赖于内核中的两个特性
1、Namespace
2、Cgroup

Docker默认没有限制容器的资源,它可以耗尽宿主机上的所有资源    
Docker提供了一个方式控制容器能够使用多少CPU,内存,IO
可压缩,不可压缩
Linux    capabilities可了解。

OOME   内存泄露
1、一旦发生OOME,任何进程都可能被杀死,包括docker-daemon为此docker-daemon特地调整了docker  daemon的OOM优先级,一面他被内核杀死,但是容器的优先级并未被调整
2
OOM-ODJ        权重越高,杀死几率越低
OOM-SCORE        得分越高,杀死几率越高


一旦被杀死,内存释放,restart
如何限制使用内存
创建的时候指定 
Ram ,swap

 

CFS进程调度器

 

 docker run --memory=200M --cpu-shares=10 mysql --vm 1  --cpu=1 --verbose
--vm  1   一个进程
默认256MB 交换memory默认与memory相同;总共516M

 

posted @ 2018-12-26 09:53  慕沁  阅读(190)  评论(0)    收藏  举报