Docker Swarm(九)资源限制

资源限制

docker run 針對限制容器資源有許多設置選項,但Swarm中的 docker service 是另一回事,目前只有cpu和memory的選項可以操作

如果 docker 找不到足夠的資源來部署service,該service會進入Pending的狀態,然後持續kill、recreate的流程直到找到資源為止。

  • reserve:预定资源,是一種承诺,例如主機有4 CPU,如果把某個service的CPU資源設為4,其他service將無法取得任何CPU資源。
  • limit:限制资源,最多可使用的资源。

示例:

docker service create --reserve-memory 800M --limit-memory 1024M --reserve-cpu 1 --limit-cpu 1.5 masl

预定800M内存,最大可使用1G内存;预定1个cpu,最大可使用1.5个cpu

示例(更新):

docker service update --limit-cpu 0.5 --limit-memory 2G masl

docker service update --limit-cpu 3 --limit-memory 1g masl

docker service update --limit-cpu 2 --limit-memory 100m masl

相关推荐