设为首页 收藏本站
查看: 1095|回复: 0

[经验分享] keepalived + mysql

[复制链接]

尚未签到

发表于 2018-12-29 09:49:59 | 显示全部楼层 |阅读模式
  keepalived 安装

  

  wgethttp://www.keepalived.org/software/keepalived-1.2.19.tar.gz
        yum install gcc gcc-c++ pcre-devel zlib-devel openssl-devel -y
        yum –y install kernel-devel kerne   内核开发包
  

  tar -xf keepalived-1.2.19.tar.gz
  cp keepalived-1.2.19
  

  ./configure --with-kernel-dir=/usr/src/kernels/2.6.32-573.18.1.el6.x86_64/
  make make install
  
  cp /usr/local/etc/rc.d/init.d/keepalived /etc/rc.d/init.d/
  cp /usr/local/etc/sysconfig/keepalived /etc/sysconfig/
  

  mkdir -p /etc/keepalived
  cp /usr/local/sbin/keepalived /usr/sbin/
  

  配置文件默认不存在 需要手动创建配置文件

  

   cp /usr/local/sbin/keepalived /usr/sbin/
  

  

  ! configuration file for keepalived
  #by:v
  global_defs {
  

  }
  

  vrrp_script chk_run {
  script /root/my.sh      #要执行的脚本
  interval 2
  weight 2
  }
  

  # VIP1
  

  vrrp_instance VI_1 {
  state MASTER            #名称
  interface eth0
  lvs_sync_daemon_inteface eth0
  virtual_router_id 151      #id
  priority 102            #优先级
  advert_int 1            #检测频率 发送 vrrp包  1秒
  authentication {
  auth_typepass        
  auth_pass  111          #验证密码
  }
  

  virtual_ipaddress {
  192.168.80.6       #虚拟ip 可以写多个
  }
  

  track_script {
  chk_run
  }
  }
  35,1
  backup keepaliced 安装和master一样就不演示了
  

  backup 配置文件
  

   vim /etc/keepalived/keepalived.conf

  

  

  ! configuration file for keepalived
  #by:V
  global_defs {
  

  }
  

  vrrp_script chk_run {
  script "/root/my.sh"
  interval 2
  weight 2
  }
  

  # VIP1
  vrrp_instance VI_1 {
  state BACKUP
  interface eth0
  lvs_sync_daemon_inteface eth0
  virtual_router_id 151
  priority 100
  advert_int 1
  

  authentication {
  auth_typepass
  auth_pass  1111
  }
  

  virtual_ipaddress {
  192.168.80.6
  }
  

  track_script {
  chk_run
  

  }
  

  }
  


  

  在两台机创建脚本如下
  

  vim my.sh
  

  #!/bin/bash
  A=`ps -C mysqld --no-header |wc -l`
  

  if [ $A -eq 0 ];then
  service mysqld start
  sleep 3
  if [ `ps -C mysqld --no-header |wc -l` -eq 0 ];then
  killall keepalived
  fi
  fi
  ~
  

  cchmod +x my.sh
  

  ip a 查看vip  

  

  我们来验证一下 手动停止mysql
  /etc/init.d/mysqld stop
  

  需要注释掉脚本 service mysqld start
  

  查看日志
  

  6)
  Feb 27 18:18:57 han3 Keepalived_vrrp[12343]: VRRP_Instance(VI_1) sending 0 priority
  Feb 27 18:18:57 han3 Keepalived_vrrp[12343]: VRRP_Instance(VI_1) removing protocol VIPs.
  Feb 27 18:18:57 han3 Keepalived_healthcheckers[12342]: Netlink reflector reports IP 192.168.80.6 removed
  

  

  

  在backup查看日志
  

  itous ARPs on eth0 for 192.168.80.6
  Feb 27 18:21:44 han2 Keepalived_healthcheckers[13140]: Netlink reflector reports IP 192.168.80.6 added
  Feb 27 18:21:49 han2 Keepalived_vrrp[13141]: VRRP_Instance(VI_1) Sending gratuitous ARPs on eth0 for 192.168.80.6
  

  

  

  [root@han2 han]# ip a
  1: lo:  mtu 65536 qdisc noqueue state UNKNOWN
  link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
  inet 127.0.0.1/8 scope host lo
  inet6 ::1/128 scope host
  valid_lft forever preferred_lft forever
  2: eth0:  mtu 1500 qdisc pfifo_fast state UP qlen 1000
  link/ether 00:0c:29:67:cd:68 brd ff:ff:ff:ff:ff:ff
  inet 192.168.80.62/24 brd 192.168.80.255 scope global eth0
  inet 192.168.80.6/32 scope global eth0
  inet6 fe80::20c:29ff:fe67:cd68/64 scope link
  valid_lft forever preferred_lft forever
  

  这是vip 已经漂移过来
  

  如果要均衡nginx 或其他服务只需要把脚本改一下即可 如nginx如下
A=`ps -C nginx --no-header |wc -l`


if [ $A -eq 0 ];then
   service nginx start
         sleep 3
        if [ `ps -C mysqld --no-header |wc -l` -eq 0 ];then
             killall keepalived
        fi
fi
  





运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-657119-1-1.html 上篇帖子: nagios监控keepalived 下篇帖子: script for keepalived
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表