2016-05-12 117 views
2

我正在與Kubernetes合作開發一個新項目,我需要三種環境:DEV,QA和PROD。Kubernetes集羣最佳實踐

什麼是最推薦的,創建多個羣集或創建一個大的羣集通過名稱空間分隔環境。

回答

2

你只是想要一個產品集羣或多個產品集羣?需要考慮的一件事是更新集羣管理軟件(對於新的k8s版本)可能會影響您的應用程序。如果您只計劃使用單個產品羣集,則建議分別運行qa和dev,以便您可以先升級這些羣集以解決任何問題。如果您打算擁有多個產品羣集,那麼您可以一次對其進行升級,以確保應用程序可用性並在環境之間共享羣集更有意義。

+0

我想使用單個羣集,我會根據您的建議創建。謝謝。 – Rick

1

命名空間不會給你帶來隔離,目前它只是dns中的一個不同的子域。每個應用程序擁有名稱空間會更好。 我強烈建議你爲prod(在更新k8s的情況下)和dev/qa的一個兩個羣集。

1

肯定會出現您需要多個羣集的問題: 任何對於升級過程中可能會失敗的k8s至關重要的東西,或者因爲您在某個地方搞砸都會影響整個羣集。

例如,我遇到了一個DNS問題,它在我的集羣中破壞了浩劫;所有的命名空間都受到影響。

升級通常不是什麼大問題,但有一天你可能會遇到障礙;如果kubelet失敗太久,你的豆莢會被殺死。

因此,最好是在升級產品之前升級您的測試/開發環境並將其中的東西燒掉。

+0

我一直在討論使用命名空間來定義我的環境的優點,我認爲你的評論在這裏說出了它。 – eggie5