關于MySQL 的高可用性:Keepalived 雙主熱備

通常說的「雙機熱備」是指兩臺機器都在運行,但并不是兩臺機器都同時在提供服務。當提供服務的一臺出現故障的時候,另外一臺會馬上自動接管并且提供服務,而且切換的時間非常短。

Keepalived的工作原理是VRRP(Virtual Router Redundancy Protocol)虛擬路由冗余協議。在VRRP中有兩組重要的概念:VRRP路由器和虛擬路由器,主控路由器和備份路由器。

VRRP路由器是指運行VRRP的路由器,是物理實體,虛擬路由器是指VRRP協議創建的,是邏輯概念。一組VRRP路由器協同工作,共同構成一臺虛擬路由器。 Vrrp中存在著一種選舉機制,用以選出提供服務的路由即主控路由,其他的則成了備份路由。當主控路由失效后,備份路由中會重新選舉出一個主控路由,來繼續工作,來保障不間斷服務。

環境描述:

OS:Ubuntu16.04
MASTER:172.16.29.205
BACKUP:172.16.29.197
VIP:172.16.29.206

[root@masterr?~]#?vi?/etc/keepalived/keepalived.conf global_defs?{ notification_email?{ test@sina.com ?} notification_email_from??admin@test.com smtp_server?127.0.0.1 smtp_connect_timeout?30 router_id?MYSQL_HA??????#標識,雙主相同 ?} vrrp_instance?VI_1?{ ?state?BACKUP???????????#兩臺都設置BACKUP ?Interface?eth0 ?virtual_router_id?51???????#主備相同 ?priority?100???????????#優先級,backup設置90 ?advert_int?1 ?nopreempt?????????????#不主動搶占資源,只在master這臺優先級高的設置,backup不設置 ?authentication?{ ?auth_type?PASS ?auth_pass?1111 ?} ?virtual_ipaddress?{ ?172.16.29.206 ?} } virtual_server?172.16.29.206?3306?{ ?delay_loop?2 ?#lb_algo?rr??????????????#LVS算法,用不到,我們就關閉了 ?#lb_kind?DR??????????????#LVS模式,如果不關閉,備用服務器不能通過VIP連接主MySQL ?persistence_timeout?50??#同一IP的連接60秒內被分配到同一臺真實服務器 ?protocol?TCP ?real_server?172.16.29.205?3306?{???#檢測本地mysql,backup也要寫檢測本地mysql ?weight?3 ?notify_down?/etc/keepalived/mysql.sh????#當mysq服down時,執行此腳本,殺死keepalived實現切換 ?TCP_CHECK?{ ?connect_timeout?3????#連接超時 ?nb_get_retry?3???????#重試次數 ?delay_before_retry?3?#重試間隔時間 ??} }??? [root@masterr?~]#?vi?/usr/local/keepalived/mysql.sh #!/bin/bash sudo?service?keepalived?stop [root@masterr?~]#?chmod?+x?/usr/local/keepalived/mysql.sh [root@masterr?~]#?/etc/init.d/keepalived?start

backup服務器只修改priority為90、nopreempt不設置、real_server設置本地IP。

3、測試高可用性

1.通過Mysql客戶端通過VIP連接,看是否連接成功。

2.停止master這臺mysql服務,是否能正常切換過去,可通過ip addr命令來查看VIP在哪臺服務器上。

3.可通過查看/var/log/messges日志,看出主備切換過程

4.master服務器故障恢復后,是否主動搶占資源,成為活動服務器。

本文講解了利用Keepalived ,讓MySQL 實現高可用性,更多相關推薦請關注php中文網。

相關推薦:

使用php寫出幾種常見的排序算法程序

使用php寫出幾種常見的排序算法程序

使用php寫出幾種常見的排序算法程序

? 版權聲明
THE END
喜歡就支持一下吧
點贊6 分享