TOUVE 发表于 2018-12-31 06:31:40

keepalived+lvs配置详解

  安装:
  tar -zxvf keepalived-1.2.2.tar.gz
  yum list all |grep "ipvsadm"
  yum -y install kernel-devel openssl-develpopt-devel ipvsadm libnl libnl-devel
  service iptables stop
  setenforce 0
  ./configure --prefix=/--with-kernel-dir=/usr/src/kernels/2.6.32-431.el6.x86_64 && make&& make install
  添加系统服务:
  chkconfig --add keepalived   添加后可以使用service、chkconfig工具管理keepalived服务
  chkconfig keepalived on            on级别为2、3、4
  chkconfig --list keepalived      查看2、3、4级别是否开启
  全局配置文件:
  global_defs {
  notification_email {
  acassen@firewall.loc
  failover@firewall.loc
  sysadmin@firewall.loc
  }
  notification_email_from Alexandre.Cassen@firewall.loc
  smtp_server 192.168.1.1
  smtp_connect_timeout 30
  router_id LVS_master
  }
  vrrp_script check_httpd {
  #vrrp_script模块专门用于对集群中服务资源进行监控(HA集群监控)。于此模块一起使用的还有track_script模块,track_script模块主要是调用vrrp_script模块。还可以检查端口、shell语句检查、脚本检查。在附录下面演示
  script “killall –O httpd”
  #用killall –O httpd 查看httpd服务返回状态,如果是零则表示运行正常,为1则表示运行异常。
  interval 2
  #检查的时间间隔,单位为秒。
  }
  Vrrp配置(keepalived高可用配置)实例:
  vrrp_instance VI_1 {
  #标识,vrrp实例开始的标识
  state MASTER
  #定义主备角色master和backup
  interface eth0
  #指定监听网卡
  virtual_router_id51
  #虚拟路由标识,此标识主备不许相同。
  priority 100
  #优先级。数字越大优先级越高,在同一个vrrp-instance下master必须比backup优先级大
  advert_int 1
  #设置master与backup之间同步检查的时间间隔,单位是秒
  authentication {
  auth_type PASS
  auth_pass 1111
  #设定master和backup验证类型(AH、PASS)和密码,主备密码一致才能通信。
  }
  notify_master “/etc/keep/master.sh”
  notify_backup “/etc/keep/backup.sh”
  notify_fault “/etc/keep/fault.sh”
  #指定当keepalived进入master、backup、fault状态时执行到脚本。脚本举例在附录下。
  track_script {
  check_httpd
  }
  #调用vrrp_script模块,check_httpd为vrrp_script模块后面跟的名字。
  virtual_ipaddress {
  192.168.1.250
  #虚拟地址,可以设置多个。它是以ip address add的方式加入地址。
  }
  #nopreempt
  #不抢占功能,此功能只能用在state状态是backup的节点上,而且这个节点优先级要高于其他节点
  #preempt_delay 300
  #抢占延迟时间,单位是秒。例如:网络有抖动master节点向backup节点发送探测包不及时实际master节点没有问题,无需主备切换。重启服务或重启系统也是如此。
  }
  ————————————————vrrp配置附录—————————————————
  -----------------------------------vrrp配置附录--------------------------------------------
  notify_master “/etc/keep/master.sh” 脚本实例如下:
  #!/bin/bash
  logfile=/var/log/keep/keep-http-statsu.log
  echo “” >>$logfile
  date >> $logfile
  backup.sh和fault.sh 略过。
  端口检查:
  vrrp_script check_httpd {
  script “/dev/null | grep"200 OK" | wc -l`
  if [ ${CMD} -ne 1];then
  echo"CRITCAL: check proxy ${PROXY_IP} failed."
  exit 1
  else
  echo"OK: check proxy ${PROXY_IP} OK."
  echo0
  fi
  fi

页: [1]
查看完整版本: keepalived+lvs配置详解