2014-04-08 112 views

回答

1

Yes就我的理解而言,理想情況下應該有一個具有專用機器的動物園管理員羣集,用於管理分佈式系統中不同應用程序之間的協調。我會嘗試在這裏分享幾點


由幾個服務器組成的zookeeper集羣通常稱爲集合,並且基本上可以管理您的應用程序的狀態跟蹤和共享.eaf Kafka使用它來提交對它的偏移更改,以便在發生故障它可以識別從哪裏開始。

來自doc頁面:
Like the distributed processes it coordinates, ZooKeeper itself is intended to be replicated over a sets of hosts(整體)。每當進行更改時,只有在寫入集合中服務器的法定人數(至少一半)之後纔會認爲它是成功的。

現在 想象都卡夫卡&的Hadoop是每個具有3個飼養員服務器專用羣集,以防夫婦節點的任何兩個簇將導致服務出現故障而趴下(ZK作品根據簡單多數表決,所以它可以容忍多達1個節點故障來保持服務活着,但不是2)。相反,如果有One Single羣集的5zk服務器管理這兩個應用程序,並且在兩個節點關閉的情況下,您仍然可以使用該服務。這不僅可以提供更好的可靠性,還可以降低硬件開支,而不必管理只有6臺服務器照顧5.