2011-10-08 33 views
0

REDIS是否有內置機制,在主機關閉時使用從機? 我可以使用虛擬IP直接指向主控,當主控關閉時是否可以指向主控?重定向到從機

按照該文件建立:

elect the slave to master using the SLAVEOF NO ONE command, and shut down your master. 

但是,應用程序怎麼會知道關於改變IP?

mysql有一個第三方實用程序稱爲MMM(主監視器主複製)。 REDIS有沒有這樣的工具?

回答

1

您可以在負載平衡器中使用虛擬IP,但這不是內置在Redis中的。任何質量的硬件或軟件負載平衡器都應該能夠做到。例如,您可以使用「balance」或HAProxy來訪問VIP,並使用一個或多個檢查Redis實例狀態的腳本來查看哪些是主服務器,並將其設置爲負載均衡器(LB)中的目標服務器。

去這條路線將需要一個或多個額外的服務器(或虛擬機取決於您的設置),但它會爲您提供一個配置,使客戶端與單個IP通話並且無法確定他們需要與哪個服務器交談後端。如何更新與哪個服務器交談的LB取決於您使用的LB。幸運的是,他們都不需要知道或處理Redis協議;他們只是平衡一個港口。

當我走這條路線時,我帶着一個奴隸VIP和一個VIP貴賓。從屬VIP負載在所有Redis實例之間進行平衡,而Master-VIP僅啓用當前主控。如果您的寫入負載很重,您可以將當前主控制器從Slave-VIP池中移出。否則,我會放下它;這消除了Slave-VIP池故障轉移更新的需要。