請問大家有使用過 Puppet, Chef, Ansible, Salt 這些組態管理與配置工具的經驗嗎?
(configuration management and orchestration tools)
我覺得同事部署應用程式的方法實在太辛苦了,希望能幫他們想點辦法。
據我查的資料,上列方案至少都能夠批次自動調整作業系統的設定,
有些甚至還有中央控制的伺服器可以排程配置很多電腦的組態設定。
但是各家廠商宣傳文件和比較表令我看得頭昏眼花,有些問題也沒找到答案,
請問大家方便解答下列的疑惑嗎?
1. 如果系統的使用量不會經常變動,管理者多半不用經常調整叢集裡的伺服器配置,
甚至有許多系統不是叢集,這樣的話導入這類工具的效益會不會很差呢?
據我所知,這些工具的操作與管理介面似乎相當不一致,
我們恐怕難以大幅藉著過去的軟體使用經驗快速評估任何一種方案,
只能一頭栽進去,花費大量時間了解狀況。
另外,雖然公司未來有可能會部署應用程式到國外的資料中心,
但系統使用量多半相當穩定,可能沒有擴充性(scalability)的問題。
因為有這些考量,使我不太確定是否值得導入這類工具。
2. 請問他們目前跟持續整合伺服器結合的狀況怎麼樣?
我知道 ansible 有 jenkins 的外掛,但是不清楚其他的組態管理工具
有沒有現成的整合工具或套件,使它能夠跟主流的持續整合系統一起
實現高度自動化的持續部署機制?
3. 請問像 kubernetes 這樣的工具跟前面那些組態管理工具有什麼不同?
差別是不是在組態管理的對象...前四樣是作業系統,kubernetes則是容器呢?
http://blog.kubernetes.io/
4. 請問有沒有人試過在開發人員行情於 42k 左右之團隊引入 Docker 建置
個人的開發環境呢? 不知道這些人能否順利上手? 會不會遇到很特殊的問題?
不知道能否期待使用 windows 10 的 docker 將新人建置 java 開發環境的時間
從三天縮減至一天?
在此先謝謝大家分享的經驗! 也歡迎私信交流!