lvs+keepalived,后台数据库怎么同步

lvs+keepalived,后台数据库怎么同步,第1张

环境:

mysql主主同步

node1:192.168.1.51

node2:192.168.1.54

VIP:192.168.1.55

安装lvs\\只需要ipvsadm模块

#yum install ipvsadm

安猜尘装keepalived

#tar -zxvf keepalived-1.2.7.tar.gz

#./configure --prefix=/usr/local/keepalived

#make &&make install

# cp /usr/local/keepalived/sbin/keepalived /usr/轿兆信sbin/

# cp /usr/local/keepalived/etc/sysconfig/keepalived /etc/sysconfig/

# cp /usr/local/keepalived/etc/rc.d/init.d/keepalived /etc/init.d/

#mkdir /etc/keepalived

#iptables -A INPUT -p vrrp -j ACCEPT //闭轮这里不开启vrrp协议的端口,会造成backup服务器检测不到master服务器的是否正常而自动启动backup的应用服务

node1:192.168.1.53

#vim /etc/keepalived/keepalived.conf

global_defs {

notification_email {

[email protected]

}

notification_email_from [email protected]

smtp_server 127.0.0.1

smtp_connect_timeout 30

router_id LVS1

}

vrrp_sync_group test {

group {

loadbalance

}

}

vrrp_instance loadbalance {

state MASTER

interface eth0

lvs_sync_daemon_inteface eth0

virtual_router_id 51

priority 200

advert_int 1

authentication {

auth_type PASS

auth_pass 1111

}

virtual_ipaddress {

192.168.1.55 dev eth0 label eth0:1 //55为VIP

}

}

virtual_server 192.168.1.55 3306 {

delay_loop 6

lb_algo rr

lb_kind DR

persistence_timeout 20

protocol TCP

sorry_server 192.168.1.54 3306

real_server 192.168.1.53 3306 {

weight 3

TCP_CHECK {

connect_timeout 3

nb_get_retry 3

delay_before_retry 3

connect_port 3306

}

}

}

node2:192.168.1.54

vim /etc/keepalived/keepalived.conf

global_defs {

notification_email {

[email protected]

}

notification_email_from [email protected]

smtp_server 127.0.0.1

smtp_connect_timeout 30

router_id LVS1

}

vrrp_sync_group test {

group {

loadbalance

}

}

vrrp_instance loadbalance {

state BACKUP

interface eth0

lvs_sync_daemon_inteface eth0

virtual_router_id 51

priority 50 //必须比master低

advert_int 1

authentication {

auth_type PASS

auth_pass 1111

}

virtual_ipaddress {

192.168.1.55 dev eth0 label eth0:1

}

}

virtual_server 192.168.1.55 3306 {

delay_loop 6

lb_algo rr

lb_kind DR

persistence_timeout 20

protocol TCP

sorry_server 192.168.1.54 3306

real_server 192.168.1.53 3306 {

weight 3

TCP_CHECK {

connect_timeout 3

nb_get_retry 3

delay_before_retry 3

connect_port 3306

}

}

}

node1 node2

vim /etc/rc.d/init.d/realserver.sh

#!/bin/bash

# description: Config realserver lo and apply noarp

SNS_VIP=10.1.1.176

/etc/rc.d/init.d/functions

case "$1" in

start)

ifconfig lo:0 $SNS_VIP netmask 255.255.255.255 broadcast $SNS_VIP

/sbin/route add -host $SNS_VIP dev lo:0

echo "1" >/proc/sys/net/ipv4/conf/lo/arp_ignore

echo "2" >/proc/sys/net/ipv4/conf/lo/arp_announce

echo "1" >/proc/sys/net/ipv4/conf/all/arp_ignore

echo "2" >/proc/sys/net/ipv4/conf/all/arp_announce

sysctl -p >/dev/null 2>&1

echo "RealServer Start OK"

stop)

ifconfig lo:0 down

route del $SNS_VIP >/dev/null 2>&1

echo "0" >/proc/sys/net/ipv4/conf/lo/arp_ignore

echo "0" >/proc/sys/net/ipv4/conf/lo/arp_announce

echo "0" >/proc/sys/net/ipv4/conf/all/arp_ignore

echo "0" >/proc/sys/net/ipv4/conf/all/arp_announce

echo "RealServer Stoped"

*)

echo "Usage: $0 {start|stop}"

exit 1

esac

exit 0

启动(先启动数据库)

#/etc/rc.d/init.d/realserver.sh start

#/etc/rc.d/init.d/keepalived start

#echo “/etc/rc.d/init.d/realserver.sh start” >>/etc/rc.local

#echo “/etc/rc.d/init.d/keepalived start” >>/etc/rc.local

查看状态

# ipvsadm

IP Virtual Server version 1.2.1 (size=4096)

Prot LocalAddress:Port Scheduler Flags

->RemoteAddress:Port Forward Weight ActiveConn InActConn

TCP 192.168.1.55:mysql rr persistent 20

->192.168.1.53:mysql Route 3 0 0

测试

ü 停掉master上的mysql,看看能否自动切换到sorry_server,使用如下命令查看:ipvsadm –ln。

ü 停掉master上的keepalived,看写VIP是否会迁移到backup。

ü 启动master上的mysql,看是否能切换回master。

ü 启动master上的keepalived,看VIP是否会迁移回master上。

ü 重启master的系统,看看切换过程是否OK

这里我能想到的有两种方法。

1、通过nfs共享session存储路径,另一台机器挂载

2、构建session服务纯握器。

我这里通过memcached做session存储,具体的配置方法可参考 http://www.rootop.org/pages/2070.html 这样,session全部存到memcached中,两台web服务配粗器都会去memcached寻找会话信息。这里只提供一个思路,如果用在实际项目中,有需要可以留下你的qq,讨论一下培裤镇。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/12145582.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-21
下一篇 2023-05-21

发表评论

登录后才能评论

评论列表(0条)

保存