DR模式+keepalived(高可用)

实验前提

DR模式配置完成,详见(点击

实验操作

 [root@server1 html]# cd /mnt
[root@server1 mnt]# ls
keepalived-2.0.6.tar.gz          varnish-3.0.5-1.el6.x86_64.rpm
ldirectord-3.9.5-3.1.x86_64.rpm  varnish-libs-3.0.5-1.el6.x86_64.rpm
[root@server1 mnt]# tar zxf keepalived-2.0.6.tar.gz 
[root@server1 keepalived-2.0.6]# yum install openssl-devel
[root@server1 keepalived-2.0.6]# ./configure --prefix=/usr/local/keepalived --with-init=SYSV	
[root@server1 keepalived-2.0.6]# make && make install
[root@server1 keepalived-2.0.6]# cd /usr/local/
[root@server1 local]# ls
bin  etc  games  include  keepalived  lib  lib64  libexec  sbin  share  src
[root@server1 local]# cd keepalived/
[root@server1 keepalived]# ls
bin  etc  sbin  share
[root@server1 keepalived]# cd etc/
[root@server1 etc]# ls
keepalived  rc.d  sysconfig
[root@server1 etc]# cd rc.d/
[root@server1 rc.d]# ls
init.d
[root@server1 rc.d]# cd init.d/
[root@server1 init.d]# ls
keepalived
[root@server1 init.d]# chmod +x keepalived 
制作软链接:
[root@server1 init.d]# ln -s /usr/local/keepalived/etc/rc.d/init.d/keepalived  /etc/init.d/
[root@server1 init.d]# ln -s /usr/local/keepalived/etc/sysconfig/keepalived  /etc/sysconfig/
[root@server1 init.d]# ln -s /usr/local/keepalived/etc/keepalived /etc/
[root@server1 init.d]# ln -s /usr/local/keepalived/sbin/keepalived/ /sbin/


[root@server1 init.d]# /etc/init.d/ldirectord  stop
Stopping ldirectord... success
[root@server1 init.d]# chkconfig  ldirectord off
[root@server1 init.d]# ip addr show
[root@server1 init.d]# ip addr del 172.25.28.100/24 dev eth0
[root@server1 init.d]# ip addr show
[root@server4 local]# vim /etc/keepalived/keepalived.conf 

      notification_email_from keepalived@localhost

   smtp_server 127.0.0.1
   smtp_connect_timeout 30
   router_id LVS_DEVEL
   vrrp_skip_check_adv_addr
   #vrrp_strict
   vrrp_garp_interval 0
   vrrp_gna_interval 0
}

vrrp_instance VI_1 {
    state MASTER
    interface eth0
    virtual_router_id 55
    priority 100
    advert_int 1
    authentication {
       auth_type PASS
        auth_pass 1111
    }
    virtual_ipaddress {
        172.25.55.100
    }
}

virtual_server 172.25.55.100 80 {
    delay_loop 6
    lb_algo rr
    lb_kind DR
    #persistence_timeout 50
    protocol TCP

    real_server 172.25.55.2 80 {
        TCP_CHECK {    添加健康检测
        weight 1
            connect_timeout 3
            retry 3
            delay_before_retry 3
        }
}
    real_server 172.25.55.3 80 {
        TCP_CHECK {
        weight 1
            connect_timeout 3
            retry 3
            delay_before_retry 3
        }
}
}(删除完文件下面的内容)


[root@server1 local]# scp -r keepalived [email protected]:/usr/local
[root@server4 ~]# cd /usr/local/
[root@server4 local]# ls
bin  games    keepalived       lib    libexec  share
etc  include  lib64  sbin     src
[root@server4 local]# chmod +x keepalived 
制作软链接
[root@server4 local]#  ln -s /usr/local/keepalived/etc/rc.d/init.d/keepalived  /etc/init.d/
[root@server4 local]# ln -s /usr/local/keepalived/etc/sysconfig/keepalived  /etc/sysconfig/
[root@server4 local]# ln -s /usr/local/keepalived/etc/keepalived /etc/
[root@server4 local]# ln -s /usr/local/keepalived/sbin/keepalived  /sbin/
[root@server4 local]# vim /etc/keepalived/keepalived.conf 
	global_defs {
   notification_email {
     [email protected]
     [email protected]
     [email protected]
   }
   notification_email_from keepalived@localhost

   smtp_server 127.0.0.1
   smtp_connect_timeout 30
   router_id LVS_DEVEL
   vrrp_skip_check_adv_addr
   #vrrp_strict
   vrrp_garp_interval 0
   vrrp_gna_interval 0
}

  vrrp_instance VI_1 {
      state BACKUP
      interface eth0
      virtual_router_id 55
      priority 50
      advert_int 1
      authentication {
          auth_type PASS
          auth_pass 1111
      }
    }
    virtual_ipaddress {
        172.25.55.100
    }
}

virtual_server 172.25.55.100 80 {
    delay_loop 6
    lb_algo rr
    lb_kind DR
   #persistence_timeout 50
    protocol TCP

    real_server 172.25.55.2 80 {
        TCP_CHECK{
        weight 1
            connect_timeout 3
            retry 3
            delay_before_retry 3
        }
}
  real_server 172.25.55.3 80 {
        TCP_CHECK  {
        weight 1
            connect_timeout 3
            retry 3
            delay_before_retry 3
        }

}
}

测试

在这里插入图片描述
[root@server1 sbin]# service keepalived stop
查看虚拟ip是否漂移到server4上

在这里插入图片描述
[root@server1 sbin]# /etc/init.d/keepalived start
查看是否轮询

在这里插入图片描述
关掉server3的httpd服务

[root@foundation55 images]# curl 172.25.55.100
HELLO server2
[root@foundation55 images]# curl 172.25.55.100
HELLO server2

server2和serve3httpd服务都关闭
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_43328213/article/details/87214760