溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

keepalived+vip+mysql雙機高可用的示例分析

發(fā)布時間:2021-11-06 10:59:46 來源:億速云 閱讀:247 作者:小新 欄目:MySQL數(shù)據(jù)庫

這篇文章主要為大家展示了“keepalived+vip+mysql雙機高可用的示例分析”,內(nèi)容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領(lǐng)大家一起研究并學(xué)習(xí)一下“keepalived+vip+mysql雙機高可用的示例分析”這篇文章吧。

1.環(huán)境  mysql主從
更新

 yum update glib*

配置第三方源
yum install -y  epel-release

直接通過yum安裝keepalived

#查看是否有安裝包
yum list |grep keepalived

安裝
yum install  keepalived.x86_64

各種參數(shù)定義查看如下bolg
http://blog.csdn.net/zhu_tianwei/article/details/43603135

真實生產(chǎn)環(huán)境案例
master
路徑/etc/keepalived/keepalived.conf
通過權(quán)重 priority 0-250 來判斷 主從
#######################master###########################
global_defs {
    router_id HA_MySQL
}


vrrp_instance VI_1 {
     state BACKUP
     interface em1
     virtual_router_id 12
     priority 120
     advert_int 1
     nopreempt
     authentication {
         auth_type PASS
         auth_pass 1111
     }
     virtual_ipaddress {
      #vip
        192.168.27.12
     }
}


virtual_server 192.168.27.12 3306 {
     delay_loop 2
     lb_algo wrr
     lb_kind DR
     persistence_timeout 60
     protocol TCP
     real_server 192.168.27.73 3306 {
         weight 3
         inhibit_on_failure
        #檢查真實ip的端口3306 是否down 如果down 執(zhí)行stop_keeplived.sh
         notify_down /usr/local/keepalived/sbin/stop_keeplived.sh
         TCP_CHECK {
             connect_timeout 10
             nb_get_retry 3
             delay_before_retry 3
             connect_port 3306
         } 
     }
}

###########################slave###############################


slave
通過權(quán)重 priority 0-250 來判斷 主從


global_defs {
    router_id HA_MySQL
}


vrrp_instance VI_1 {
     state BACKUP
     interface em1
     virtual_router_id 12
     priority 100
     advert_int 1
     #nopreempt
     authentication {
         auth_type PASS
         auth_pass 1111
     }
     virtual_ipaddress {
      #vip
        192.168.27.12
     }
}


virtual_server 192.168.27.12 3306 {
     delay_loop 2
     lb_algo wrr
     lb_kind DR
     persistence_timeout 60
     protocol TCP
     real_server 192.168.27.72 3306 {
         weight 3
         notify_down /usr/local/keepalived/sbin/stop_keeplived.sh
         TCP_CHECK {
             connect_timeout 10
             nb_get_retry 3
             delay_before_retry 3
             connect_port 3306
         } 
     }
}


################stop_keeplived.sh############
/usr/local/keepalived/sbin/stop_keeplived.sh
內(nèi)容
#! /bin/bash 
echo "test" > text.txt
/etc/init.d/keepalived stop

#遇到的錯誤
停止mysql 3306端口
service mysqld stop
正常應(yīng)該是vip 進行漂移,但是卻沒有漂,查看keepalived狀態(tài)
service keepalived status
發(fā)現(xiàn) ipvs: Protocol not available 提示信息
此問題 導(dǎo)致vip無法漂移
原因是ip_vs模塊系統(tǒng)默認沒有自動加載
查看ip_vs模塊
lsmod | grep ip_vs 若沒有值需要手工加載
modprobe ip_vs
modprobe ip_vs_wrr

lsmod | grep ip_vs正常輸出
[root@hs-73 sbin]# lsmod | grep ip_vs
ip_vs_wrr              12697  0 
ip_vs                 140944  2 ip_vs_wrr
nf_conntrack          105745  1 ip_vs
libcrc32c              12644  2 xfs,ip_vs 
設(shè)置開機加載
/etc/rc.local
modprobe ip_vs
   modprobe ip_vs_wrr
寫入rc.local配置文件


到此 問題解決

vip 可以正常漂移

使用命令 ip a 可以查看vip

-----keepalived 對應(yīng)的機器必須開啟112端口 否則 兩邊無法通信

以上是“keepalived+vip+mysql雙機高可用的示例分析”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識,歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI