LVS+keepalived快速搭建测试环境
#LVS+keepalived快速搭建测试环境 #centos6 X64 # LVS 负载均衡模式:DR(直接路由) 192.168.18.31 master(LVS) 192.168.18.32 slave(LVS) 192.168.18.18 VIP 192.168.18.11 web1 192.168.18.12 web2 ################################## #手动配置测试 ###LVS 安装配置 yum install ipvsadm -y rpm -ql ipvsadm # ipvsadm # lsmod|grep ip_vs #添加VIP /sbin/ifconfig eth1:1 192.168.18.18/24 up #ifconfig eth1:1 down #测试完后停止VIP ipvsadm -C #清空 #添加虚拟服务 ipvsadm -A -t 192.168.18.18:80 -s wrr -p 20 #添加后端服务 ipvsadm -a -t 192.168.18.18:80 -r 192.168.18.11:80 -g -w 1 ipvsadm -a -t 192.168.18.18:80 -r 192.168.18.12:80 -g -w 1 #删除ipvsadm -d -t 192.168.18.18:80 -r 192.168.18.11:80 ipvsadm -L -n #查看列表 ########## ################################## #后端WEB配置 # #安装Apache或nginx,启动服务 # yum install httpd -y # echo “this is rs1” > /var/www/html/index.html # service httpd restart vim lvs-rs.sh #!/bin/bash # 配置VIP、配置ARP抑制 VIP=192.168.18.18 . /etc/rc.d/init.d/functions case "$1" in start) echo " start LVS of REALServer" /sbin/ifconfig lo:0 $VIP broadcast $VIP netmask 255.255.255.255 up /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 >/dev/null 2>&1 ;; stop) /sbin/ifconfig lo:0 down echo "close LVS Directorserver" 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 "Usage: $0 {start|stop}" exit 1 esac exit 0 #给脚本加权限,并执行 chmod +x lvs-rs.sh chmod 755 /etc/rc.d/init.d/functions ./lvs-rs.sh start ################################## #LVS+keepalived 配置 yum install keepalived -y #rpm -ql keepalived #分别安装配置keepalived cp /etc/keepalived/keepalived.conf /etc/keepalived/keepalived.conf.bak vim /etc/keepalived/keepalived.conf /etc/init.d/keepalived restart /etc/init.d/keepalived stop #关闭、开启LVS_MASTER测试 ip add #查看VIP #配置如下: #####keepalived配置 ! Configuration File forkeepalived 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 LVS_MASTER #router_id LVS_BACKUP #LVS_BACKUP } vrrp_instance VI_1 { state MASTER #state BACKUP interface eth1 virtual_router_id 18 #虚拟路由标识,主从相同 priority 100 #priority 90 #BACKUP advert_int 1 authentication { auth_type PASS auth_pass 1111 #主从认证密码必须一致 } virtual_ipaddress { #Web虚拟IP(VTP) 192.168.18.18/24 } } ###real_server### virtual_server 192.168.18.18 80 { #定义虚拟IP和端口 delay_loop 6 #检查真实服务器时间,单位秒 lb_algo rr #设置负载调度算法,rr为轮训 lb_kind DR #设置LVS负载均衡DR模式 persistence_timeout 30 #同一IP的连接30秒内被分配到同一台真实服务器 protocol TCP #使用TCP协议检查realserver状态 real_server 192.168.18.11 80 { #第一个web服务器 weight 3 #节点权重值 TCP_CHECK { #健康检查方式 connect_timeout 3 #连接超时 nb_get_retry 3 #重试次数 delay_before_retry 3 #重试间隔/S } } real_server 192.168.18.12 80 { #第二个web服务器 weight 3 TCP_CHECK { connect_timeout 3 nb_get_retry 3 delay_before_retry 3 } } } #####keepalived配置 ## curl http://192.168.18.18 >/tmp/null #http访问测试 tail -10 /var/log/nginx/access.log #查看nginx日志 tail -10 /etc/httpd/logs/access_log #查看Apache日志