xsw222 发表于 2019-1-4 13:16:58

#######keepdalived+lvs################

  #######keepdalived+lvs################
  ########keepalived安装################
######内核结合否则不能vrrp####
ln -s /usr/src/kernels/2.6.18-194.el5-i686/ /usr/src/linux
  yum -y install yum-fastestmirror
yum -y install gcc
###在编译时,keepalived+lvs依赖openssl和内核源代码 ######
yum -y install openssl-devel kernel-devel
  ln -s /usr/src/kernels/2.6.18-308.11.1.el5-i686/ /usr/src/linux
  wget http://www.keepalived.org/software/keepalived-1.1.19.tar.gz
  tar zxvf keepalived-1.1.19.tar.gz
  cd keepalived-1.1.19
./configure --prefix=/usr/local/keepalived/
  ###前三项 Use IPVS Framework ,IPVS sync daemon support,Use VRRP Framework为yes 编译成功##########
  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/   ###启动项
chkconfig --level 35 keepalived on
mkdir /etc/keepalived
vi /etc/keepalived/keepalived.conf
  global_defs {
  notification_email {
  kongdeqian@163.com
  }
  notification_email_from kongdeqian@163.com
  smtp_server 127.0.0.1
  smtp_connect_timeout 30
  router_id test1
  }
  vrrp_instance VI_1 {
  state BACKUP
  interface eth0
  virtual_router_id 51
  priority 100   #权重
  advert_int 1   #检测间隔

nopreempt #不抢占
  smtp_alert
  authentication {
  auth_type PASS
  auth_pass 123
  }
  virtual_ipaddress {
  192.168.1.100    #虚拟IP
  }
  }
########## WEB负载均衡#############
virtual_server 192.168.1.100 80 {
    delay_loop 6                  #(每隔10秒查询realserver状态)
    lb_algo wlc                  #(lvs 算法)
    lb_kind DR                  #(Direct Route)
    persistence_timeout 60      #(同一IP的连接60秒内被分配到同一台realserver)
    protocol TCP                #(用TCP协议检查realserver状态)

    real_server 192.168.1.80 80 {
      weight 100               #(权重)
      TCP_CHECK {
      connect_timeout 10       #(10秒无响应超时)
      nb_get_retry 3
      delay_before_retry 3
      connect_port 80
      }
    }
    real_server 192.168.1.81 80 {
      weight 100
      TCP_CHECK {
      connect_timeout 10
      nb_get_retry 3
      delay_before_retry 3
      connect_port 80
      }
   }
}
  ############# LVS 安装##############
  wget http://www.linuxvirtualserver.org/software/kernel-2.6/ipvsadm-1.24.tar.gz
  tar -zxvf ipvsadm-1.24.tar.gz
  cd ipvsadm-1.24
make
make install
  ###若ipvsadm 能查看则证明安装成功
###ip a 查看虚拟IP
  ###########在备用服务器上########
如复制虚拟机网卡不能启动,则删除ifcfg-eth0 中的HWADDR(网卡MAC)
priority 90   #权重
  ###若要双方不抢占,则双方都要关闭防火墙 iptales -F
或者,iptables命令双方添加组播地址:iptables -I RH-Firewall-1-INPUT -d 224.0.0.18 -j ACCEPT (若重启iptables 会失效)
  #####在每一台real上运行增加lookup#####
vi /root/lvs.sh
  #!/bin/bash
  SNS_VIP=192.168.1.100###虚拟IP

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

case "$1" in
start)
       /sbin/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)
       /sbin/ifconfig lo:0 down
       /sbin/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




页: [1]
查看完整版本: #######keepdalived+lvs################