htbzwd 发表于 2019-1-5 11:42:20

9.负载均衡lvs+keepaived

  9.负载均衡lvs+keepaived
  1、安装lvs
  (LB端)
  #/etc/init.d/keepalived stop                     #停止keepalived高可用
  #/application/nginx/sbin/nginx -s stop             #停止nginx反向代理
  rpm -qa ipvsadm                                    #检查是否已安装软件
  yum -y install ipvsadm
  ls /usr/src/kernels
  uname -r
  #yum -y update kernel kernel-devel
  #我遇到过的坑uname看到的内核和安装的内核版本不一致 需要更新内核 再重启!重启!重启!
  #reboot
  ln -s /usr/src/kernels/$(uname -r) /usr/src/linux
  lsmod |grep ip_vs
  2、配置lvs
  (LB端)
  ip addr add 10.0.0.3/24 dev eth0 label eth0:0      #添加vip
  #ipvsadm --help                                    #查看帮助
  ipvsadm -C                                       #清空所有
  ipvsadm -A -t 10.0.0.3:80 -s wrr                   #-A 添加虚拟服务 -t 指定tcp服务地址 -s 调度算法
  ipvsadm -a -t 10.0.0.3:80 -r 10.0.0.7:80 -g -w 1   #添加节点Rs -g 表示dr模式
  ipvsadm -a -t 10.0.0.3:80 -r 10.0.0.8:80 -g -w 1
  ipvsadm --set 30 5 60                     #--set tcp tcpfin udp set connection timeout values
  ipvsadm -Ln                                        #查看ipvs情况
  #以上服务器端搭建完毕!
  

  服务端删除节点:
  ipvsadm -d -t 10.0.0.3:80 -r 10.0.0.8:80
  ipvsadm -d -t 10.0.0.3:80 -r 10.0.0.7:80
  ip addr del 10.0.0.3/24 dev eth0
  虽然lvs没有自动剔除坏节点的功能,但是可以通过编写脚本检测进行删除节点!
  3、绑定VIP
  (RS端)
  ip addr add 10.0.0.3/32 dev lo label lo:0          #绑定vip,此处必须和LB端的vip保持一致
  route add -host 10.0.0.3 dev lo                  #添加静态路由,可有可无。
  4、抑制ARP
  (RS端)
  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
  5、keepalived
  直接管理ipvs
  (LB端)
  cd /etc/keepalived/
  cat >keepalived.conf
页: [1]
查看完整版本: 9.负载均衡lvs+keepaived