1

如何將我的代碼增量部署到雲中的大型集羣?我的意思是,如果我擁有300個節點的集羣,並且希望該集羣能夠使用最新的構建代碼進行更新,但只能更改已更改的文件(二進制文件和數據文件),那我該怎麼做?將增量代碼部署到雲中的大型集羣

我遇到謀殺,但似乎沒有做增量文件部署,並將所有內容複製到每個節點。

我也看了一下廚師,但這似乎不太適合增量式總代碼部署,它更適合在每臺機器上運行安裝程序,並確保安裝的代碼配置文件是最新的到廚師服務器。它看起來不喜歡所安裝程序的版本。所以我看到廚師有文件控制,但可能有意義將其用於配置文件,但不知道是否對具有數百個二進制文件和數據文件的代碼項目有意義。

我可以肯定的寫我自己的系統來做到這一點,但我想知道如果我有更好的選擇大型集羣增量部署,特別是在開發階段?

就我而言,服務器是windows而云是aws。

+0

您需要考慮的第一件事是如果您的代碼能夠同時運行新舊版本的代碼(「滾動升級」),如果不是這樣,整個討論沒有多大意義。要具備這種能力,需要相應地設計您的代碼和協議。 – steve

+0

抱歉沒有關注你。這有什麼關係?想象一下,我希望羣集上的代碼始終與特定分支的最新代碼保持同步,但我希望羣集僅部署已更改的二進制文件和數據文件。沒有任何東西從頭開始,所以每當源代碼發生變化時它都會快速部署。 – iCode

回答

0

看看kwatee(我是附屬的)。它是一款輕量級且完全免費的工具。除此之外,它通過將每個文件的哈希與部署的哈希進行比較來自動執行增量部署。

+0

這似乎是廚師的限定版本?正確?哈希代碼是如何生成和比較的?它看起來它接受一個pakage而不是一個文件夾?我對嗎? – iCode

+0

@iCode與廚師的關係並不相關,廚師更擅長於處理基礎設施管理,但生活在類似的空間。 Kwatee接受tar/tgz/bzip/zip檔案或簡單的文件夾。散列最初是在將包/文件夾上傳到存儲庫時生成的。只要其中一個值發生更改,就會重新計算模板化文件(包含變量的I.e)的哈希值。 – mac