friendlessstar 发表于 2015-9-4 09:19:25

LVS+DR+Keepalived实现方式

  来源地址:
  http://blog.yunvi.com/html/797.html
  来源内容:
  一:安装配置 LVS+DR+Keepalived
http://blog.yunvi.com/wp-content/uploads/2011/08/lvs+dr+keepalved-300x225.gif
  

       负载服务器master真实IP      192.168.1.106
       负载服务器backup真实IP    192.168.1.114
       负载服务器虚拟IP            192.168.1.10
       后端WEB服务器IP               192.168.1.50
       后端WEB服务器IP               192.168.1.60
系统:Redhat 5.4 x86 内核:2.6.18-164.el5
1.下载所需要的软件:ipvsadm keepalived
wget http://www.linuxvirtualserver.org/software/kernel-2.6/ipvsadm-1.24.tar.gz
wget http://www.keepalived.org/software/keepalived-1.1.18.tar.gz
2.安装ipvsadm(负载均衡器都要配置master和backup)
A.建立内核快捷方式:
ln –s /usr/src/kernels/2.6.18-164.e15-i686 /usr/src/linux
B.解压ipvsadm,编译ipvsadm
tar    zxvfipvsadm-1.24.tar.gz
cd ipvsadm-1.24
make ; make install
C.显示如下:
# /sbin/ipvsadm -v
ipvsadm v1.24 2005/12/10 (compiled with popt and IPVS v1.2.1)
则Ipvsadm安装成功
3.安装keepalived负载均衡器都要配置master和backup)
tar    zxvf keepalived-1.1.18tar.gz
cd keepalived-1.1.18
./configure --prefix=/usr/local/keepalived
make ; make install
cp etc/rc.d/init.d/keepalived/etc/rc.d/init.d/
cp etc/sysconfig/keepalived /etc/sysconfig/
mkdir /etc/keepalived
cp etc/keepalived/keepalived.conf/etc/keepalived/
cp sbin/keepalived /usr/sbin/
启动keepalived
service keepalived start|stop|restart
4.配置master和backup
A.开启ip_forward 转发功能:
sysctl –w net.ipv4.ip_forward = 1
B.配置keepalived.conf 配置文件
Vim /etc/keepalived/keepalived.conf

! Configuration File for keepalived

global_defs {
   notification_email {
      crazyunix@139.com #
   }
   notification_email_from crazyunix@139.com
   smtp_server smtp.139.com
#   smtp_connect_timeout 30
   router_id LVS_DEVEL
}

vrrp_instance VI_1 {
    state MASTER    #备份服务器上将MASTER改为BACKUP
    interface eth0    #HA监测网络接口
    virtual_router_id 51#主、备机的virtual_router_id必须相同
    priority 90         #主、备机取不同的优先级,主机值较大,备份机值较小
    advert_int 1   #VRRP Multicast广播周期秒数
    authentication {
      auth_type PASS    #VRRP认证方式
      auth_pass 1111    #VRRP口令字
    }
    virtual_ipaddress {
      192.168.1.10   #(如果有多个VIP,继续换行填写.)
    }
}

virtual_server 192.168.1.10 80 {
    delay_loop 2   #每隔2秒查询realserver状态
    lb_algo rr          #lvs 算法
    lb_kind DR      #Direct Route
    persistence_timeout 50 #同一IP的连接60秒内被分配到同一台realserver
    protocol TCP         #用TCP协议检查realserver状态

    real_server 192.168.1.50 80 {
      weight 100
      TCP_CHECK {
            connect_timeout 3
            nb_get_retry 3
            delay_before_retry 3
      }
    }

    real_server 192.168.1.60 80 {
      weight 1
      TCP_CHECK {
            connect_timeout 3
            nb_get_retry 3
            delay_before_retry 3
      }
    }
}
BACKUP服务器同上配置,先安装lvs再按装keepalived,仍后配置/etc/keepalived/keepalived.conf,只需将红色标示的部分改一下即可.
5.配置 VIP:
vim /etc/sysconfig/network-scripts/ifcfg-lo:0
DEVICE=lo:0
IPADDR=192.168.1.10
NETMASK=255.255.255.255
ONBOOT=yes
NAME=loopback
重启网卡,启动keepalived 显示如下成功!
6.配置ipvsadm(配置master和backup)
添加负载均衡器
/sbin/ipvsadm -A -t 192.168.1.10:80 -s rr
增加realserver
/sbin/ipvsadm -a –t 192.168.1.10:80 -r 192.168.1.50:80 -g   #192.168.1.50 是真实机的ip
/sbin/ipvsadm -a –t 192.168.1.10:80 -r 192.168.1.60:80 -g   #192.168.1.60 是真实机的ip
routeadd -host 192.168.1.10 dev lo:0

7.配置realserver (web1和web2)
配置vip 地址
/sbin/ifconfig lo:0 192.168.1.10 netmask 255.255.255.255 broadcast 192.168.1.10 up
route add -host 192.168.1.10 dev lo:0
8.在realserver 安装测试httpd(只为显示结果)
yum install httpd –y
service httpd start
vim /var/www/html/index.html
this is 192.168.1.50/60
http://blog.yunvi.com/wp-content/uploads/2011/08/test1-300x281.jpg

9.在master负载均衡器上查看
# ipvsadm -L -n
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port         Forward Weight ActiveConn InActConn
TCP192.168.1.10:80 rr persistent 50
-> 192.168.1.60:80            Route   1      0          0      
-> 192.168.1.50:80            Route   100    0          0
10.访问:192.168.1.10 出现一下表示安装成功http://blog.yunvi.com/wp-content/uploads/2011/08/test2-300x252.png
页: [1]
查看完整版本: LVS+DR+Keepalived实现方式