1. 程式人生 > 實用技巧 >Keepalived+MariaDB10配置+雙主+高可用資料庫

Keepalived+MariaDB10配置+雙主+高可用資料庫

Keepalived+MariaDB10配置雙主高可用資料庫

dGcBAAAAAAAA&ek=1&kp=1&pt=0&bo=KgJ9AQAAA

OS

RS

子網掩碼

路由閘道器

Centos6.6

MariaDB10

Keepalived

Eth0:192.168.26.210

255.255.252.0

192.168.25.3

VIP:192.168.27.210

255.255.255.252


Centos6.6

MariaDB10

Keepalived

Eth0:192.168.26.211

255.255.252.0

192.168.25.3

VIP:192.168.27.210

255.255.255.255


Win7(client)

IP:192.168.26.70

255.255.252.0

192.168.25.3

在兩臺伺服器上分別安裝MYSQL:

yum -y install MariaDB (這裡略)
安裝完後配置雙主模型:

編輯配置檔案26.210:vim /etc/my.cnf.d/server.cnf

在配置檔案中加入以前幾個引數設定:

log-bin=mysql-bin

server-id=210

relay-log=relay-bin

dMcAAAAAAAAA&ek=1&kp=1&pt=0&bo=RwKWAQAAA

編輯配置檔案26.211:vim /etc/my.cnf.d/server.cnf

log-bin=mysql-bin

server-id=211

relay-log=relay-bin

dGcBAAAAAAAA&ek=1&kp=1&pt=0&bo=FAKaAQAAA

分別啟動兩臺伺服器的MYSQL服務:service mysql start

伺服器設定雙主:

26.210:

mysql

grantreplicationslave,replicationclienton*.*to'jerry'@'192.168.%.%'identifiedby'jerrypass';

changemastertomaster_host='192.168.26.211',master_user='jerrymy',master_password='jerrypass',master_log_file='mysql-bin.000006',master_log_pos=558;

start slave;

showslavestatus\G; #檢視從狀態IO和SQL 執行狀態均為YES表示配置成功

26.211:

mysql

grantreplicationslave,replicationclienton*.*to'jerrymy'@'192.168.%.%'identifiedby'jerrypass';

changemastertomaster_host='192.168.26.210',master_user='jerry',master_password='jerrypass',master_log_file='mysql-bin.000007',master_log_pos=540;

start slave;
showslavestatus\G;
#檢視從狀態IO和SQL 執行狀態均為YES表示配置成功

dGcBAAAAAAAA&ek=1&kp=1&pt=0&bo=iwEAAQAAA


dMYAAAAAAAAA&ek=1&kp=1&pt=0&bo=TwJ2AQAAA

dAQBAAAAAAAA&ek=1&kp=1&pt=0&bo=WwI7AQAAA

dGcBAAAAAAAA&ek=1&kp=1&pt=0&bo=WQKCAQAAA

dMcAAAAAAAAA&ek=1&kp=1&pt=0&bo=XgKDAQAAA

dAMBAAAAAAAA&ek=1&kp=1&pt=0&bo=MgJWAQAAA

dGYBAAAAAAAA&ek=1&kp=1&pt=0&bo=NwKVAQAAA

顯示狀態為成功,我們再建立資料庫來測試,看看雙主是否執行正常。

dMYAAAAAAAAA&ek=1&kp=1&pt=0&bo=hQGnAQAAA

dGYBAAAAAAAA&ek=1&kp=1&pt=0&bo=jAGcAQAAA

dGYBAAAAAAAA&ek=1&kp=1&pt=0&bo=ggGrAQAAA

雙主設定成功。

26.210:安裝Keepalived

dMcAAAAAAAAA&ek=1&kp=1&pt=0&bo=TgK2AQAAA

安裝報錯未安裝gcc

yum -y install gcc

dGYBAAAAAAAA&ek=1&kp=1&pt=0&bo=2AFYAQAAA

yum -y install openssl-devel

dGcBAAAAAAAA&ek=1&kp=1&pt=0&bo=iALAAQAAA

安裝元件後編譯成功:

dGYBAAAAAAAA&ek=1&kp=1&pt=0&bo=6wKnAQAAA

dGcBAAAAAAAA&ek=1&kp=1&pt=0&bo=4gK.AQAAA

dGcBAAAAAAAA&ek=1&kp=1&pt=0&bo=xQFpAAAAA

編輯配置檔案:vim/etc/keepalived/keepalived.conf

dGYBAAAAAAAA&ek=1&kp=1&pt=0&bo=xwG3AAAAA

!ConfigurationFileforkeepalivedglobal_defs{

router_idmysql-ha

}

vrrp_instanceVI_1{

state MASTER

interfaceeth0

virtual_router_id20

priority100

advert_int1

nopreempt

authentication{

auth_typePASS

auth_pass123456

}

virtual_ipaddress{

192.168.27.210

}

}

virtual_server192.168.27.2103306{

delay_loop2

lb_algorr

lb_kindDR

persistence_timeout60

protocolTCP

real_server192.168.26.2103306{

weight1

notify_down/etc/keepalived/mysql.sh

TCP_CHECK{

connect_port3306

connect_timeout3

nb_get_retry2

delay_before_retry1

}

}

}

儲存退出啟動Keepalived服務。

service keepalived start

26.211:安裝Keepalived。

dMYAAAAAAAAA&ek=1&kp=1&pt=0&bo=OwO.AQAAA

dGcBAAAAAAAA&ek=1&kp=1&pt=0&bo=KgNuAQAAA

編輯配置檔案26.211:vim/etc/keepalived/keepalived.conf

dAUBAAAAAAAA&ek=1&kp=1&pt=0&bo=tAFPAAAAA

!ConfigurationFileforkeepalivedglobal_defs{

router_idmysql-ha

}

vrrp_instanceVI_1{

stateBACKUP

interfaceeth0

virtual_router_id20

priority99

advert_int1

nopreempt

authentication{

auth_typePASS

auth_pass123456

}

virtual_ipaddress{

192.168.27.210

}

}

virtual_server192.168.27.2103306{

delay_loop2

lb_algorr

lb_kindDR

persistence_timeout60

protocolTCP

real_server192.168.26.2113306{

weight1

notify_down/etc/keepalived/mysql.sh

TCP_CHECK{

connect_port3306

connect_timeout3

nb_get_retry2

delay_before_retry1

}

}

}

儲存退出啟動26.211上的Keepalived

service keepalived start

測試VIP是否可用:ping 192.168.27.210 -t

dAYBAAAAAAAA&ek=1&kp=1&pt=0&bo=6AElAQAAA

回到26.210或211都可以 上,建立一個數據庫訪問測試使用者賬號密碼。

grant all on *.* to 'jerrytest'@'192.168.%.%' identified by 'jerrypass';

dGYBAAAAAAAA&ek=1&kp=1&pt=0&bo=bAK1AQAAA

下面通過 VIP訪問資料庫觀察訪問:

dGcBAAAAAAAA&ek=1&kp=1&pt=0&bo=WQLpAQAAA

dGYBAAAAAAAA&ek=1&kp=1&pt=0&bo=WQIjAQAAA

VIP在26.210這臺伺服器上,因此我們訪問的26.210上的資料庫。

下面停掉26.210上的MYSQL觀察:

首先觀察VIP網路出現波動後恢復。

dGcBAAAAAAAA&ek=1&kp=1&pt=0&bo=gQKqAQAAA

資料庫訪問成功:

dMYAAAAAAAAA&ek=1&kp=1&pt=0&bo=XQLvAQAAA

VIP已經轉移動26.211伺服器上了。

dAQBAAAAAAAA&ek=1&kp=1&pt=0&bo=VAIOAQAAA

我們再恢復26.210上的MYSQL資料庫服務觀察。dGcBAAAAAAAA&ek=1&kp=1&pt=0&bo=WQLzAQAAA

轉載於:https://blog.51cto.com/jdonghong/1883361