虚拟机virtualBox 搭建 Keepalived+lvs dr+httpd 负载均衡

来源:互联网 发布:免费发光字制作软件 编辑:程序博客网 时间:2024/06/10 01:29

master :192.168.1.103

backup:192.168.1.104

web1:192.168.1.105

web2:192.168.1.106


1.192.168.1.105、192.168.1.106 搭建http服务器

关闭防火墙 

service iptables stop

chkconfig iptables off

chkconfig iptables --list


进入/var/www/html新建index.html,注明服务的是那个web服务

cd  /var/www/html

touch index.html //新建index.html文件


启动http服务

service httpd start

浏览器访问 http://192.168.1.106


192.168.1.105重做以上操作


2.在192.168.1.105、192.168.1.106 上配置VIP 并配置屏蔽其vip广播

cd /etc/init.d/

touch realserver(名字可以随便取)

vim realserver

#!/bin/bash#chkconfig: 2345 79 20#description:realserverSNS_VIP=192.168.1.180. /etc/rc.d/init.d/functionscase "$1" instart)ifconfig lo:0 $SNS_VIP netmask 255.255.255.255 broadcast $SNS_VIP/sbin/route add -host $SNS_VIP dev lo:0echo "1" >/proc/sys/net/ipv4/conf/lo/arp_ignoreecho "2" >/proc/sys/net/ipv4/conf/lo/arp_announceecho "1" >/proc/sys/net/ipv4/conf/all/arp_ignoreecho "2" >/proc/sys/net/ipv4/conf/all/arp_announcesysctl -p >/dev/null 2>&1echo "RealServer Start OK";;stop)ifconfig lo:0 downroute del $SNS_VIP >/dev/null 2>&1echo "0" >/proc/sys/net/ipv4/conf/lo/arp_ignoreecho "0" >/proc/sys/net/ipv4/conf/lo/arp_announceecho "0" >/proc/sys/net/ipv4/conf/all/arp_ignoreecho "0" >/proc/sys/net/ipv4/conf/all/arp_announceecho "RealServer Stoped";;*)echo "Usage: $0 {start|stop}"exit 1esacexit 0

赋予权限chomd u+x realserver(赋予权限后文件会变色)

启动 service realserver start


3.安装keepalived: yum -y install keepalived

 查看keepalived安装情况:rpm -ql keepalived

> /etc/keepalived/keepalived.conf覆盖keepalived.conf文件相当于清空原来的内容

编辑192.168.1.103主机的keepalived配置文件 

vim /etc/keepalived/keepalived.conf

global_defs {                       ##全局配置部分#   notification_email {             ##下面几行均为全局通知配置,可以实现出现问题后报警,但功能有限,因此注释掉,并采用Nagios监视lvs运行情况#       admin@qq.com#   }#   notification_email_from master@toxingwang.com#   smtp_server smtp.exmail.qq.com#   smtp_connect_timeout 30router_id LVS_DEVEL             ##设置lvs的id,在一个网络内应该是唯一的}vrrp_instance VI_1 {            ##设置vrrp组,唯一且同一LVS服务器组要相同state MASTER             ##备份LVS服务器设置为BACKUPinterface eth1             # #设置对外服务的接口virtual_router_id 51        ##设置虚拟路由标识priority 100                   #设置优先级,数值越大,优先级越高,backup设置为99,这样就能实现当master宕机后自动将backup变为master,而当原master恢复正常时,则现在的master再次变为backup。advert_int 1            ##设置同步时间间隔authentication {         ##设置验证类型和密码,master和buckup一定要设置一样auth_type PASSauth_pass 1111}virtual_ipaddress {          ##设置VIP,可以多个,每个占一行192.168.1.180}}virtual_server 192.168.1.180 80 {delay_loop 6            ##健康检查时间间隔,单位slb_algo wrr             ##负载均衡调度算法设置为加权轮叫lb_kind DR                              ##负载均衡转发规则nat_mask 255.255.255.0   ##网络掩码,DR模式要保障真实服务器和lvs在同一网段persistence_timeout 50    ##会话保持时间,单位sprotocol TCP                           ##协议real_server 192.168.1.105 80 {      ##真实服务器配置,80表示端口weight 3                             ##权重TCP_CHECK {                       ##服务器检测方式设置 keepalived的健康检查方式 有:HTTP_GET|SSL_GET|TCP_CHECK|SMTP_CHECK|MISC_CHECKconnect_timeout 10    ##连接超时时间nb_get_retry 3     ##失败重试次数delay_before_retry 3 ##失败重试的间隔时间connect_port 80      ##连接的后端端口}}real_server 192.168.1.106 80 {weight 3TCP_CHECK {connect_timeout 10nb_get_retry 3delay_before_retry 3connect_port 80}}}

192.168.1.104 备机只需修改 
state BACKUP
<pre name="code" class="html">priority 99

service keepalived start

查看启动情况tail -f /var/log/messages

安装 yum -y install ipvsadm 查看

ipvsadm -L -n              //用LVS工具查看keepalived运行
ip addr show              //查看VIP

验证失败可能原因:

persistence_timeout 50    ##会话保持时间,单位s  距离第一次访问的保持时间
 改为0
<pre name="code" class="html">interface eth1             # #设置对外服务的接口 
ifconfig 可以查看

克隆虚拟机 mac地址一样







0 0
原创粉丝点击