2016-12-29 65 views
1

泊塢羣API客戶端對服務的下列元信息:泊塢窗服務updatedAt時間戳

Meta.UpdatedAt 

這是時間戳最後一個用戶發起update(如更改服務的配置),或者是它的時間戳任何更改服務,即使Docker羣集執行?

例如,如果我的羣服務有5個任務分佈在集羣,然後多克爾由於某種原因,從一個節點移到一個任務到另一個節點(因此該服務的配置不會改變);它會更新這個領域?

回答

1

簡答案:不,這不會。

如果你看源代碼,通過調用updatetouchMeta方法更改meta.UpdatedAt。對於服務,處理該服務的方法是​​,該服務鏈接到docker service update cli命令。所以在技術上,meta.UpdatedAt僅在您使用docker service update時更新。

您可以通過本地計算機或羣集上以下這種情況下快速測試:

$ docker service create --name redis --replicas 5 redis 

$ docker service inspect --format='{{.Meta.UpdatedAt}}' redis 
2017-01-07 15:16:14.910287822 +0000 UTC 

$ docker rm -f <some-redis-task-id> 

# Swarm should re-schedule the forced removed task onto another node 

$ docker service inspect --format='{{.Meta.UpdatedAt}}' redis 
2017-01-07 15:16:14.910287822 +0000 UTC 

meta.UpdatedAt現場應保持不變。

現在叫docker service update redis --replicas 10,你應該看到新的時間戳。

+0

謝謝,這是一個很棒的答案! – igr