dcoker swarm和mesos中的docker资源利用

ffscu2ro  于 2021-06-26  发布在  Mesos
关注(0)|答案(1)|浏览(273)

我在docker swarm ucp(使用compose.yml文件)和mesos(使用marathon.json文件)中以docker容器的形式运行我的应用程序。
我在两个文件中都添加了资源约束。
合成.yml:

resources:
  limits:
    cpus: '0.50'
    memory: 50M
  reservations:
    cpus: '0.25'
    memory: 20M

marathon.json格式:

"cpus": 0.50,
"mem": 128.0,
"disk": 5.0

我发现内存是硬限制,cpu是软限制。i、 cpu限制仅用于重量和优先级。如果mesos cpu为1,并且如果两个应用程序分别运行0.4cpu和0.6cpu,那么app one将获得40%的cpu周期,app two将获得60%的cpu周期。
那么compose.yml文件中的limit和reservation有什么用呢?
现在我正在努力理解下面的事情
1) 这种资源约束究竟是如何工作的
2) 当容器超过这些值时会发生什么。

ct3nt3jp

ct3nt3jp1#

reservations 意味着容器不会在没有足够的可用资源来遵守此约束的节点上启动。 limits 意味着当容器中的进程达到该限制并试图分配更多时,它将被强制终止。

相关问题