Docker Swarm排程策略

2021-07-12 06:16:22 字數 712 閱讀 8807

swarm在用命令swarm manager啟動swarm manager時,可用--strategy指定排程策略。

swarm提供了三種排程策略計算節點的排名,在排程(例如選擇哪乙個節點執行容器時)時,取排名最前的節點。

這三種排程策略是:

- spread

- binpack

- random

random策略:隨機選擇節點。一般用於開發測試階段。

spread策略:預設策略,swarm優先選擇占用資源(如cpu、記憶體等)最少的節點,能保證集群中所有節點資源的均勻使用。

它的好處是,保證

示例:

# 測試spread策略

# 背景:swarm集群中有兩個相同資源(cpu、記憶體大小相同)的節點node1 node2

# 執行兩個容器

docker tcp://run -d -p -m 1g --name db mysql

docker tcp://run -d -p -m 1g --name db mysql

# 檢視容器所在節點

docker tcp://ps

# 結果分析:如果是spread策略,兩個執行的容器一定在不同的節點串

# 如果是binpack策略,兩個執行的容器一定在同乙個節點中

參考:

Docker Swarm重排程策略

什麼是重排程?就是正在執行的節點 在啟動時是經過swarm排程的 壞掉之後,指定由swarm再次排程,這就是重排程。在啟動容器時指定重重排程策略。通過引數指定重排程策略 docker run d e reschedule on node failure redis 通過容器label指定重排程策略 ...

Docker Swarm 經濟高效的容器排程

本文講的是docker swarm 經濟高效的容器排程 編者的話 本文 了幾種容器排程策略,並以記憶體約束為例,討論了如何利用docker swarm,通過資源約束實現容器的合理排程。其中,對容器資源的約束,包括硬約束和軟約束,硬約束是指記憶體資源的實際限制條件,而軟約束則是當伺服器實際記憶體資源有...

程序排程及排程策略

程序排程負責動態的將cpu分配給各個程序。主要功能如下 1 記住程序狀態。2 決定哪個程序,什麼時候獲取cpu及其占用多長時間。3 把cpu分配給程序,即將選中程序的pcb中有關程序的相關資訊,如程式狀態暫存器 通用暫存器等內容送入cpu的相應的暫存器中,從而讓該程序占用cpu去執行。4 收回cpu...