吸毒的虫子 发表于 2019-1-5 14:19:02

lvs+keepalive 集群安装部署文档



1安装和配置
1.1 安装LVS
lvs依赖openssl-devel和popt-devel,所以要先安装这个两个资源包:
# yum -y install openssl-devel popt-devel

安装完后,在安装lvs,我们这样采用云安装:
# yum -y install ipvsadm

1.2 安装keepalived
keepalived的下载地址:http://www.keepalived.org/download.html

在192.168.0.205(MASTER)上安装配置如下:
# tar zxvf keepalived-1.2.7.tar.gz
# cd keepalived-1.2.7
# ./configure
# make && make install
# cp /usr/local/etc/rc.d/init.d/keepalived /etc/rc.d/init.d/
# cp /usr/local/etc/sysconfig/keepalived /etc/sysconfig/
# mkdir /etc/keepalived
# cp /usr/local/etc/keepalived/keepalived.conf /etc/keepalived/
# cp /usr/local/sbin/keepalived /usr/sbin/


1.3 配置keepalived开机启动
# chkconfig keepalived on


1.4 配置keepalived
# vi /etc/keepalived/keepalived.conf

配置Keepalived,#vim /etc/keepalived/keepalived.conf,内容如下:
! Configuration File for keepalived
global_defs {
notification_email {
admin@xyxy.tk #接收Real Server 失效通知信息
}
notification_email_from lvs@xyxy.tk
smtp_server 127.0.0.1
smtp_connect_timeout 30
router_id LVS_DEVEL_1 #Backup服务器将此项改为LVS_DEVEL_2
}
vrrp_instance VI_1 {
state MASTER#Backup服务器将此项改为BACKUP
interface eth0
virtual_router_id 51
priority 150#Backup服务器将此项改为100
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
192.168.0.139#VIP,可以是多个,每个ip占一行
}
}
virtual_server 192.168.0.139 80 {
delay_loop 6#(每隔10秒查询realserver状态)
lb_algo rr#(lvs 算法)
lb_kind DR#(Direct Route)
persistence_timeout 0#(同一IP的连接60秒内被分配到同一台realserver)
protocol TCP#(用TCP协议检查realserver状态)

real_server 192.168.0.207 80 {#Real Server 1
weight 100#(权重)
TCP_CHECK {
connect_timeout 10#(10秒无响应超时)
nb_get_retry 3
delay_before_retry 3
connect_port 80
}
}
real_server 192.168.0.208 80 {#Real Server 2
weight 100
TCP_CHECK {
connect_timeout 10
nb_get_retry 3
delay_before_retry 3
connect_port 80
}
}
}
virtual_server 192.168.0.139 3005 {
delay_loop 6#(每隔10秒查询realserver状态)
lb_algo rr#(lvs 算法)
lb_kind DR#(Direct Route)
persistence_timeout 0#(同一IP的连接60秒内被分配到同一台realserver)
protocol TCP#(用TCP协议检查realserver状态)

real_server 192.168.0.150 3005 {#Real Server 1
weight 100#(权重)
TCP_CHECK {
connect_timeout 10#(10秒无响应超时)
nb_get_retry 3
delay_before_retry 3
connect_port 3005
}
}
real_server 192.168.0.151 3005 {#Real Server 2
weight 100
TCP_CHECK {
connect_timeout 10
nb_get_retry 3
delay_before_retry 3
connect_port 3005
}
}
}

192.168.0.206(BACKUP)的配置和MASTER类似,只是会变更其中某个参数,这个已经在上面的配置文件中标出,这里不再赘述。

1.5 启动keepalived
# service keepalived start


1.6 其他配置‍
在192.168.0.207、192.168.0.208、192.168.0.150和192.168.0.151上面分别执行如下配置:
保存一个文件,取名随意,这里以dr.sh为例,内容如下:
#!/bin/sh
VIP=192.168.0.139#Virtual Server IP
/etc/rc.d/init.d/functions
case "$1" in
start)
echo "Start LVS of RS"
/sbin/ifconfig lo:0 $VIP broadcast $VIP netmask 255.255.255.255 up#注意子网掩码
/sbin/ifconfig lo:0 $VIP broadcast $VIP netmask 255.255.255.255 -arp
/sbin/route add -host $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
;;
stop)
/sbin/ifconfig lo:0 down
echo "Close LVS of RS"
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
sysctl -p
;;
*)
echo "Usage:$0{start|stop}"
exit 1
esac




给文件配置可执行权限,并执行即可。



页: [1]
查看完整版本: lvs+keepalive 集群安装部署文档