2017-05-17 41 views
0

我不確定我之前是否看到過這種功能,但我相信我去年秋天做過。然而,我現在似乎無法找到任何文件,所以我想我會在這裏問。如何同時更新多個部署並僅在全部成功時部署?

我有一堆與kubernetes設置的微服務。目前,當新版本的微服務準備發佈時,我會執行一個kubectl set image來更新部署的映像。如果部署卡住,則舊圖像不會被取下。因此我們的微服務保持不變。

但是,我想知道如何使用與上面相同的功能同時更新多個微服務。

具體來說,假設我有一個依賴於後端服務的前端服務。假設前端在版本1中對後端進行特定簽名的POST。如果在版本2中該簽名發生更改,則需要我的前端和後端服務同時進行更新。如果兩個部署陷入困境,我不希望任何一個部署,因爲這會導致這兩個微服務無法正常工作。

所以我的問題是,你如何同時更新kubernetes中的多個部署,同時確保沒有任何舊圖像被取消,直到所有新圖像都成功完成爲止?

回答

0

您應該看看名爲Helm的官方Kubernetes軟件包管理器。

Helm支持將多個部署和服務打包到一個發行版中。這使您可以對版本中的所有資源執行升級和回滾。