mysql-mmm 集群高可用软件介绍
mysql-mmm 集群高可用軟件介紹
MMM即Master-Master Replication Manager for MySQL(mysql主主復(fù)制管理器) ? ?關(guān)于mysql主主復(fù)制配置的監(jiān)控、故障轉(zhuǎn)移和管理的一套可伸縮的腳本套件(在任何時候只有一個節(jié)點可以被寫入),這個套件也能對居于標(biāo)準(zhǔn)的主從配置的任意數(shù)量的從服務(wù)器進(jìn)行讀負(fù)載均衡,所以你可以用它來在一組居于復(fù)制的服務(wù)器啟動虛擬ip,除此之外,它還有實?現(xiàn)數(shù)據(jù)備份、節(jié)點之間重新同步功能的腳本。????MySQL本身沒有提供replication?failover的解決方案,通過MMM方案能實現(xiàn)服務(wù)器的故障轉(zhuǎn)移,從而實現(xiàn)mysql的高可用。MySQL-MMM優(yōu)缺
優(yōu)點:高可用性,擴(kuò)展性好,出現(xiàn)故障自動切換,對于主主同步,在同一時間只提供一臺數(shù)據(jù)庫寫操作,保證的數(shù)據(jù)的一致性。
缺點:Monitor節(jié)點是單點,可以結(jié)合Keepalived實現(xiàn)高可用。MySQL-MMM工作原理
?MMM(Master-Master?replication?managerfor?Mysql,Mysql主主復(fù)制管理器)是一套靈活的腳本程序,基于perl實現(xiàn),用來對mysql?replication進(jìn)行監(jiān)控和故障遷移,并能管理mysql?Master-Master復(fù)制的配置(同一時間只有一個節(jié)點是可寫的)。
mmm_mond:監(jiān)控進(jìn)程,負(fù)責(zé)所有的監(jiān)控工作,決定和處理所有節(jié)點角色活動。此腳本需要在監(jiān)管機(jī)上運(yùn)行。
mmm_agentd:運(yùn)行在每個mysql服務(wù)器上的代理進(jìn)程,完成監(jiān)控的探針工作和執(zhí)行簡單的遠(yuǎn)端服務(wù)設(shè)置。此腳本需要在被監(jiān)管機(jī)上運(yùn)行。
mmm_control:一個簡單的腳本,提供管理mmm_mond進(jìn)程的命令。
mysql-mmm的監(jiān)管端會提供多個虛擬IP(VIP),包括一個可寫VIP,多個可讀VIP,通過監(jiān)管的管理,這些IP會綁定在可用mysql之上,當(dāng)某一臺mysql宕機(jī)時,監(jiān)管會將VIP遷移至其他mysql。
在整個監(jiān)管過程中,需要在mysql中添加相關(guān)授權(quán)用戶,以便讓mysql可以支持監(jiān)理機(jī)的維護(hù)。授權(quán)的用戶包括一個mmm_monitor用戶和一個mmm_agent用戶,如果想使用mmm的備份工具則還要添加一個mmm_tools用戶。?
總結(jié)
以上是生活随笔為你收集整理的mysql-mmm 集群高可用软件介绍的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python中do的用法,如何使用doc
- 下一篇: php文件域的作用,PHP作用域和文件夹