2014-03-05 39 views
0

我打算使用兩個羣集設置Couchbase系統:主羣集處於活動狀態,另一個用於備份(使用XDCR進行復制)。在此Couchbase系統前使用haproxy可在活動羣集關閉時將(手動)從活動羣集切換到備份羣集。Couchbase XDCR和haproxy

在測試之前,我想問一些關於這種拓撲的建議。這有什麼問題嗎?我可以在生產環境中順利運行嗎?

我以爲我不能在此拓撲中使用vbucket感知客戶端。由於客戶端只知道haproxy,我不能直接從客戶端發送到couchbase服務器(具有特定文件的vbucket)。是對的嗎???

回答

3

從您的情景中,它聽起來像是開銷。爲什麼要保持「待命」羣集作爲備份?

相反,您可以將所有四個couchbase服務器實例作爲一個集羣(每個實例在其自己的盒子上運行)......所以您將充分利用vBucket體系結構來進行本機管理。如果其中一個實例關閉,您將不會丟失數據,因爲已啓用的複製將在其他節點中具有鏡像副本。

我們在生產中使用此設置沒有問題。有時我們會將其中一個實例關閉以進行維護,並且集羣的其他部分仍在運行,並且對Couchbase客戶端完全透明,例如,沒有停機時間!

在我看來,XDCR對於地理位置分散的位置很有意義(因此您在EMEA等地區保留了另一個在美洲的集羣)。如果您的所有實例位於同一位置,那麼Couchbase集羣技術將提供高可用性(HA),並具有故障轉移支持。

+0

我知道Couchbase集羣已經內置了HA,但我擔心整個集羣都會關閉,而我必須重建整體(很長的停機時間 - 我遇到這種情況與membase集羣舊版本)。 – consoko

+0

「整個羣集」 - 如果它包含許多實例安裝在單獨的硬件上......我沒有看到它發生......除非在場所發生火災/洪水。如果在同一處所有備份羣集,則不需要DR。 – user1697575