安装heartbeat部署虚拟IP并实现haproxy调度器高可用项目5

项目5:安装heartbeat部署虚拟IP并实现haproxy调度器高可用。主备haproxy都停止,通过heartbeat管理haproxy服务启停,vip漂移到哪台机器,那台机器对应的haproxy服务启动,haproxy服务跟随vip而动。(防止列脑最有效方法是:haproxy服务先都不要手动先启动,要用heartbeat的启停来带动要控制的haproxy服务启停)

机器1:(主节点)

eth0 :192.168.1.5     桥接、联网,配网关(和真机一样),配DNS1(和真机一样)

eth1:192.168.10.5     (心跳线) vmnet 2

[root@localhost 桌面]# ifconfig eth0 |head -2

eth0      Link encap:Ethernet  HWaddr 00:0C:29:05:B7:5D  

          inet addr:192.168.1.5  Bcast:192.168.1.255  Mask:255.255.255.0

[root@localhost 桌面]# ifconfig eth1 |head -2

eth1      Link encap:Ethernet  HWaddr 00:0C:29:05:B7:67  

          inet addr:192.168.10.5  Bcast:192.168.10.255  Mask:255.255.255.0

[root@localhost 桌面]# hostname data-1-1

[root@localhost 桌面]# sed -i 's#HOSTNAME=localhost.localdomain#HOSTNAME=data-1-1#g' /etc/sysconfig/network

[root@data-1-1 桌面]# uname -n              //机器名必须要以用uname -n后查看的为准

data-1-1

[root@data-1-1 桌面]# vim /etc/hosts

192.168.1.5 data-1-1

192.168.1.205 data-1-2

wq

[root@data-1-1 桌面]# ping data-1-2

PING data-1-2 (192.168.1.205) 56(84) bytes of data.

64 bytes from data-1-2 (192.168.1.205): icmp_seq=1 ttl=64 time=1.25 ms

64 bytes from data-1-2 (192.168.1.205): icmp_seq=2 ttl=64 time=0.988 ms

添加心跳路由:

[root@data-1-1 桌面]# /sbin/route add -host 192.168.10.205 dev eth1   //去对方的心跳线通过eth1出去

[root@data-1-1 桌面]# echo "/sbin/route add -host 192.168.10.205 dev eth1" >> /etc/rc.local

安装heartbeat的依赖包:epel-release-6-8.noarch.rpm

[root@data-1-1 桌面]# ls

epel-release-6-8.noarch.rpm

[root@data-1-1 桌面]# rpm -ivh epel-release-6-8.noarch.rpm 

warning: epel-release-6-8.noarch.rpm: Header V3 RSA/SHA256 Signature, key ID 0608b895: NOKEY

Preparing...                ########################################### [100%]

   1:epel-release           ########################################### [100%]

安装heartbeat

[root@data-1-1 桌面]# yum -y install heartbeat 或者yum -y install heartbeat* 此时用的是163网络yum源

[root@data-1-1 桌面]# ls /etc/ha.d/                 //heartbeat默认安装后地点

harc  rc.d  README.config  resource.d  shellfuncs

[root@data-1-1 桌面]# ls /etc/ha.d/resource.d/          //资源目录,里面都是脚本。

apache        Filesystem    IPaddr     LinuxSCSI  portblock  WAS

AudibleAlarm  hto-mapfuncs  IPaddr2    LVM        Raid1      WinPopup

db2           ICP           IPsrcaddr  MailTo     SendArp    Xinetd

Delay         ids           IPv6addr   OCF        ServeRAID

[root@data-1-1 桌面]# ls /usr/share/doc/heartbeat-3.0.4/         //默认模板配置文件位置

apphbd.cf  AUTHORS    COPYING       ha.cf        README

authkeys   ChangeLog  COPYING.LGPL  haresources

[root@data-1-1 桌面]# cd /usr/share/doc/heartbeat-3.0.4/

[root@data-1-1 heartbeat-3.0.4]# cp ha.cf haresources authkeys /etc/ha.d/  //cp配置、资源、认证文件

[root@data-1-1 heartbeat-3.0.4]# vim /etc/ha.d/ha.cf

debugfile /var/log/ha-debug            //释放,调试日志存放位置

logfile /var/log/ha-log                //释放,日志存放位置

logfacility     local1                 //修改为local1,默认是local0

keepalive 2                            //释放,心跳间隔时间为2秒,默认2秒

deadtime 30                            //释放,备节点30s内没有收到主节点心跳信号后则立即接管主节点资源。

warntime 10                            //释放,10s内备节点没有收到主节点心跳信号时会往日志里写警告信息。

initdead 60                 //释放并修改,默认是120,首次运行后,需要等待60s判断对方节点死后才接管资源

mcast eth1 225.0.0.1 694 1 0  //释放,设置广播通信使用端口,694为默认端口,多播用心跳网卡最好,局域网不要冲突

auto_failback on                       //默认就开着,主节点恢复后是否切回。

node data-1-1                          //添加

node data-1-2                          //添加

crm no                                 //添加,是否开启集群资源管理。

wq

[root@data-1-1 heartbeat-3.0.4]# vim /etc/ha.d/authkeys 

auth 1                    //释放

1 sha1 HI!                //修改成1,模式是 2,HI是随便写的,也可写多一些,只要两边一样即可。

wq

[root@data-1-1 heartbeat-3.0.4]# chmod 600 /etc/ha.d/authkeys

[root@data-1-1 heartbeat-3.0.4]# vim /etc/ha.d/haresources 

data-1-1 IPaddr::192.168.1.6/24/eth0 haproxy //添加,在节点1的eth0网卡上绑定vip并控制服务启停

wq

[root@data-1-1 heartbeat-3.0.4]# /etc/init.d/heartbeat stop

[root@data-1-1 heartbeat-3.0.4]# chkconfig heartbeat off   //先不启heartbeat服务,防止带着服务启动裂脑。

安装haproxy:

[root@data-1-1 桌面]# vim /etc/sysctl.conf

net.ipv4.ip_forward = 1

wq

[root@data-1-1 桌面]# sysctl -p

[root@data-1-1 桌面]# yum -y install gcc gcc-c++

[root@data-1-1 桌面]# ls

epel-release-6-8.noarch.rpm  haproxy-1.4.24.tar.gz

[root@data-1-1 桌面]# tar -zxf haproxy-1.4.24.tar.gz 

[root@data-1-1 桌面]# ls

epel-release-6-8.noarch.rpm  haproxy-1.4.24  haproxy-1.4.24.tar.gz

[root@data-1-1 桌面]# cd haproxy-1.4.24

[root@data-1-1 haproxy-1.4.24]# ls

CHANGELOG  ebtree    LICENSE       Makefile.osx  src      TODO

contrib    examples  Makefile      README        SUBVERS  VERDATE

doc        include   Makefile.bsd  ROADMAP       tests    VERSION

[root@data-1-1 haproxy-1.4.24]# make TARGET=linux2628 ARCH=x86_64 //编译,target指定内核,架构选择

[root@data-1-1 haproxy-1.4.24]# make PREFIX=/usr/local/haproxy install

[root@data-1-1 haproxy-1.4.24]# ls /usr/local/haproxy/

doc  logs  sbin  share

[root@data-1-1 haproxy-1.4.24]# mkdir /usr/local/haproxy/conf /优化目录结构,也可不做,根据需要

[root@data-1-1 haproxy-1.4.24]# mkdir /usr/local/haproxy/var/run -p

[root@data-1-1 haproxy-1.4.24]# mkdir /usr/local/haproxy/var/chroot -p

[root@data-1-1 haproxy-1.4.24]# ls /usr/local/haproxy/

conf  doc  logs  sbin  share  var

安装后链接变量路径和cp配置文件和启动脚本:

[root@data-1-1 haproxy-1.4.24]# ln -s /usr/local/haproxy/sbin/haproxy /usr/sbin/

[root@data-1-1 haproxy-1.4.24]# mkdir /etc/haproxy

[root@data-1-1 haproxy-1.4.24]# cp /root/桌面/haproxy-1.4.24/examples/haproxy.cfg /etc/haproxy/

[root@data-1-1 haproxy-1.4.24]# cp /root/桌面/haproxy-1.4.24/examples/haproxy.init /etc/init.d/haproxy

[root@data-1-1 haproxy-1.4.24]# chmod +x /etc/init.d/haproxy

[root@data-1-1 haproxy-1.4.24]# vim /etc/haproxy/haproxy.cfg   #原来内容可都删除,修改成如下内容:

global

        log 127.0.0.1:514   local0 warning

        log 127.0.0.1   local1 notice

        chroot /usr/local/haproxy/var/chroot

        pidfile /usr/local/haproxy/var/run/haproxy.pid

        maxconn 20480

        nbproc 8

        daemon

        group haproxy

        user haproxy

        spread-checks 3

defaults

        log     global

        mode    http

        option  httplog

        option  dontlognull

        retries 3

        redispatch

        maxconn 2000

        contimeout      5000

        clitimeout      50000

        srvtimeout      50000

listen  test

         bind 192.168.1.6:80

        mode http

        stats enable

        stats uri /admin?stats      //web界面的uri访问时格式http://调度IP或域名/admin?stats

        stats hide-version

        stats auth admin:123456

        balance roundrobin

        option forwardfor       //在web网站配置日志中能够看到客户端真实的IP,不好演示,做一个说明即可

        timeout server 15s

        timeout connect 15s

        option httpclose

        cookie  SERVERID rewrite

        server  web1 192.168.1.100:80 cookie A maxconn 2048 weight 1 check port 80 inter 2000 rise 2 fall 5

        server  web2 192.168.1.200:80 cookie B maxconn 4096 weight 1 check port 80 inter 2000 rise 2 fall 5

wq

[root@data-1-1 haproxy-1.4.24]# useradd -s /sbin/nologin haproxy -M

利用rsyslog配置haproxy记录日志功能: //当看/usr/local/haproxy/logs/haproxy.log可看haproxy日志,只做下说明

[root@data-1-1 haproxy-1.4.24]# echo "local0.* /usr/local/haproxy/logs/haproxy.log" >> /etc/rsyslog.conf

[root@data-1-1 haproxy-1.4.24]# tail -1 /etc/rsyslog.conf

local0.* /usr/local/haproxy/logs/haproxy.log   //因为haproxy.cfg中是local0,用这个设备写日志

[root@data-1-1 haproxy-1.4.24]# tail -1 /etc/sysconfig/rsyslog

SYSLOGD_OPTIONS="-c 5"   //6.0版以上不用动,5.8版应写为:SYSLOGD_OPTIONS="-c 2 -m 0 -r -x",兼容2版本

[root@data-1-1 haproxy-1.4.24]# /etc/init.d/rsyslog restart  //启动记录haproxy日志服务,6.4版启动无端口

[root@data-1-1 haproxy-1.4.24]# vim /etc/rsyslog.conf

$ModLoad imudp                          //注释取消

$UDPServerRun 514                       //注释取消

wq

root@data-1-1 haproxy-1.4.24]# /etc/init.d/rsyslog restart

[root@data-1-1 haproxy-1.4.24]# netstat -anptu |grep 514

udp        0      0 0.0.0.0:514                 0.0.0.0:*                               38637/rsyslogd      

udp        0      0 :::514                      :::*                                    38637/rsyslogd

[root@data-1-1 haproxy-1.4.24]# /etc/init.d/haproxy stop //此时有vip能启动服务,但先不启动,防止裂脑

[root@data-1-1 haproxy-1.4.24]# chkconfig haproxy off

当haproxy配置文件中没有绑定vip时,不能启动haproxy服务,解决方法如下:

[root@data-1-1 haproxy-1.4.24]# echo "net.ipv4.ip_nonlocal_bind=1" >> /etc/sysctl.conf

[root@data-1-1 haproxy-1.4.24]# sysctl -p

机器2:(备节点)

eth0 :192.168.1.205     桥接、联网,配网关(和真机一样),配DNS1(和真机一样)

eth1:192.168.10.205     (心跳线) vmnet 2

[root@localhost 桌面]# ifconfig eth0 |head -2

eth0      Link encap:Ethernet  HWaddr 00:0C:29:B0:12:FA  

          inet addr:192.168.1.205  Bcast:192.168.1.255  Mask:255.255.255.0

[root@localhost 桌面]# ifconfig eth1 |head -2

eth1      Link encap:Ethernet  HWaddr 00:0C:29:B0:12:04  

          inet addr:192.168.10.205  Bcast:192.168.10.255  Mask:255.255.255.0

[root@localhost 桌面]# hostname data-1-2

[root@localhost 桌面]# sed -i 's#HOSTNAME=localhost.localdomain#HOSTNAME=data-1-2#g' /etc/sysconfig/network

[root@data-1-2 桌面]# uname -n              //机器名必须要以用uname -n后查看的为准

data-1-2

[root@data-1-2 桌面]# vim /etc/hosts

192.168.1.5 data-1-1

192.168.1.205 data-1-2

wq

[root@data-1-2 桌面]# ping data-1-1

PING data-1-1 (192.168.1.5) 56(84) bytes of data.

64 bytes from data-1-1 (192.168.1.5): icmp_seq=1 ttl=64 time=0.535 ms

64 bytes from data-1-1 (192.168.1.5): icmp_seq=2 ttl=64 time=0.462 ms

添加心跳路由:

[root@data-1-2 桌面]# /sbin/route add -host 192.168.10.5 dev eth1 //去对方的心跳线通过eth1出去

[root@data-1-2 桌面]# echo "/sbin/route add -host 192.168.10.5 dev eth1" >> /etc/rc.local

安装heartbeat的依赖包:epel-release-6-8.noarch.rpm

[root@data-1-2 桌面]# ls

epel-release-6-8.noarch.rpm

[root@data-1-2 桌面]# rpm -ivh epel-release-6-8.noarch.rpm 

warning: epel-release-6-8.noarch.rpm: Header V3 RSA/SHA256 Signature, key ID 0608b895: NOKEY

Preparing...                ########################################### [100%]

   1:epel-release           ########################################### [100%]

安装heartbeat

[root@data-1-2 桌面]# yum -y install heartbeat //或者yum -y install heartbeat* 此时用的是163网络yum源

[root@data-1-2 桌面]# ls /etc/ha.d/                  //heartbeat默认安装后地点

harc  rc.d  README.config  resource.d  shellfuncs   

[root@data-1-2 桌面]# ls /etc/ha.d/resource.d/       //资源目录,里面都是脚本。

apache        Filesystem    IPaddr     LinuxSCSI  portblock  WAS

AudibleAlarm  hto-mapfuncs  IPaddr2    LVM        Raid1      WinPopup

db2           ICP           IPsrcaddr  MailTo     SendArp    Xinetd

Delay         ids           IPv6addr   OCF        ServeRAID

[root@data-1-2 桌面]# ls /usr/share/doc/heartbeat-3.0.4/       //默认模板配置文件

apphbd.cf  AUTHORS    COPYING       ha.cf        README

authkeys   ChangeLog  COPYING.LGPL  haresources

[root@data-1-2 桌面]# cd /usr/share/doc/heartbeat-3.0.4/

[root@data-1-2 heartbeat-3.0.4]# cp ha.cf haresources authkeys /etc/ha.d/

[root@data-1-2 heartbeat-3.0.4]# vim /etc/ha.d/ha.cf 

debugfile /var/log/ha-debug            //释放,调试日志存放位置

logfile /var/log/ha-log                //释放,日志存放位置

logfacility     local1                 //修改为local1,默认是local0

keepalive 2                            //释放,心跳间隔时间为2秒,默认2秒

deadtime 30                            //释放,备节点30s内没有收到主节点心跳信号后则立即接管主节点资源。

warntime 10                            //释放,10s内备节点没有收到主节点心跳信号时会往日志里写警告信息。

initdead 60                 //释放并修改,默认是120,首次运行后,需要等待60s判断对方节点死后才接管资源

mcast eth1 225.0.0.1 694 1 0  //释放,设置广播通信使用端口,694为默认端口,多播用心跳网卡最好,局域网不要冲突

auto_failback on                       //默认就开着,主节点恢复后是否切回。

node data-1-1                          //添加

node data-1-2                          //添加

crm no                                 //添加,是否开启集群资源管理。

wq

[root@data-1-1 heartbeat-3.0.4]# vim /etc/ha.d/authkeys 

auth 1                    //释放

1 sha1 HI!                //修改成1,默认是2,HI是随便写的,也可写多一些,只要两边一样即可。

wq

[root@data-1-1 heartbeat-3.0.4]# chmod 600 /etc/ha.d/authkeys

[root@data-1-1 heartbeat-3.0.4]# vim /etc/ha.d/haresources 

data-1-1 IPaddr::192.168.1.6/24/eth0 haproxy 添加,在节点1的eth0网卡上绑定vip,当节点1挂了才起vip和服务

wq

[root@data-1-2 heartbeat-3.0.4]# /etc/init.d/heartbeat stop   

[root@data-1-2 heartbeat-3.0.4]# chkconfig heartbeat off        //此时先不启动heartbeat,防止裂脑

安装haproxy:

[root@data-1-2 桌面]# vim /etc/sysctl.conf     #路由转发,可开可不开,养成好习惯

net.ipv4.ip_forward = 1

wq

[root@data-1-2 桌面]# sysctl -p

root@data-1-2 桌面]# yum -y install gcc gcc-c++

[root@data-1-2 桌面]# ls

epel-release-6-8.noarch.rpm  haproxy-1.4.24.tar.gz

[root@data-1-2 桌面]# tar -zxf haproxy-1.4.24.tar.gz 

[root@data-1-2 桌面]# ls

epel-release-6-8.noarch.rpm  haproxy-1.4.24  haproxy-1.4.24.tar.gz

[root@data-1-2 桌面]# cd haproxy-1.4.24

[root@data-1-2 haproxy-1.4.24]# ls

CHANGELOG  ebtree    LICENSE       Makefile.osx  src      TODO

contrib    examples  Makefile      README        SUBVERS  VERDATE

doc        include   Makefile.bsd  ROADMAP       tests    VERSION

[root@data-1-2 haproxy-1.4.24]# make TARGET=linux2628 ARCH=x86_64

[root@data-1-2 haproxy-1.4.24]# make PREFIX=/usr/local/haproxy install

[root@data-1-2 haproxy-1.4.24]# ls /usr/local/haproxy/

doc  sbin  share

[root@data-1-2 haproxy-1.4.24]# mkdir /usr/local/haproxy/logs  //优化目录结构,也可不做,根据需要

[root@data-1-2 haproxy-1.4.24]# mkdir /usr/local/haproxy/conf

[root@data-1-2 haproxy-1.4.24]# mkdir /usr/local/haproxy/var/run -p

[root@data-1-2 haproxy-1.4.24]# mkdir /usr/local/haproxy/var/chroot -p

[root@data-1-2 haproxy-1.4.24]# ls /usr/local/haproxy/

conf  doc  logs  sbin  share  var

安装后链接变量路径和cp配置文件和启动脚本

[root@data-1-2 haproxy-1.4.24]# ln -s /usr/local/haproxy/sbin/haproxy /usr/sbin/

[root@data-1-2 haproxy-1.4.24]# mkdir /etc/haproxy

[root@data-1-2 haproxy-1.4.24]# cp /root/桌面/haproxy-1.4.24/examples/haproxy.cfg /etc/haproxy/

[root@data-1-2 haproxy-1.4.24]# cp /root/桌面/haproxy-1.4.24/examples/haproxy.init /etc/init.d/haproxy

[root@data-1-2 haproxy-1.4.24]# chmod +x /etc/init.d/haproxy

[root@data-1-2 haproxy-1.4.24]# vim /etc/haproxy/haproxy.cfg  #原来内容都可删除,修改成如下内容

global

        log 127.0.0.1:514   local0 warning

        log 127.0.0.1   local1 notice

        chroot /usr/local/haproxy/var/chroot

        pidfile /usr/local/haproxy/var/run/haproxy.pid

        maxconn 20480

        nbproc 8

        daemon

        group haproxy

        user haproxy

        spread-checks 3

defaults

        log     global

        mode    http

        option  httplog

        option  dontlognull

        retries 3

        redispatch

        maxconn 2000

        contimeout      5000

        clitimeout      50000

        srvtimeout      50000

listen  test

         bind 192.168.1.6:80

        mode http

        stats enable

        stats uri /admin?stats      //web界面的uri访问时格式http://调度IP或域名/admin?stats

        stats hide-version

        stats auth admin:123456

        balance roundrobin

        option forwardfor       //在web网站配置日志中能够看到客户端真实的IP,不好演示,做一个说明即可

        timeout server 15s

        timeout connect 15s

        option httpclose

        cookie  SERVERID rewrite

        server  web1 192.168.1.100:80 cookie A maxconn 2048 weight 1 check port 80 inter 2000 rise 2 fall 5

        server  web2 192.168.1.200:80 cookie B maxconn 4096 weight 1 check port 80 inter 2000 rise 2 fall 5

wq

[root@data-1-2 haproxy-1.4.24]# useradd -s /sbin/nologin haproxy -M

利用rsyslog配置haproxy记录日志功能: //当看/usr/local/haproxy/logs/haproxy.log可看haproxy日志,只做下说明

[root@data-1-2 haproxy-1.4.24]# echo "local0.* /usr/local/haproxy/logs/haproxy.log" >> /etc/rsyslog.conf

[root@data-1-2 haproxy-1.4.24]# tail -1 /etc/rsyslog.conf

local0.* /usr/local/haproxy/logs/haproxy.log       //因为haproxy.cfg中是local0,用这个设备写日志

[root@data-1-2 haproxy-1.4.24]# tail -1 /etc/sysconfig/rsyslog //这个不用动

SYSLOGD_OPTIONS="-c 5" //6.0版以上不用动,5.8版应写为:SYSLOGD_OPTIONS="-c 2 -m 0 -r -x",兼容2版本

[root@data-1-2 haproxy-1.4.24]# /etc/init.d/rsyslog restart  //启动记录haproxy日志服务,6.4版启动无端口

[root@data-1-2 haproxy-1.4.24]# vim /etc/rsyslog.conf

$ModLoad imudp                          //注释取消

$UDPServerRun 514                       //注释取消

wq

[root@data-1-2 haproxy-1.4.24]# /etc/init.d/rsyslog restart

[root@data-1-2 haproxy-1.4.24]# netstat -anptu |grep 514

udp        0      0 0.0.0.0:514                 0.0.0.0:*                               38747/rsyslogd      

udp        0      0 :::514                      :::*                                    38747/rsyslogd  

[root@data-1-2 haproxy-1.4.24]# /etc/init.d/haproxy start  启动失败,因为这端没有vip,不绑定vip启动不了

[root@data-1-2 haproxy-1.4.24]# echo "net.ipv4.ip_nonlocal_bind=1" >> /etc/sysctl.conf //解决方法

[root@data-1-2 haproxy-1.4.24]# sysctl -p

[root@data-1-2 haproxy-1.4.24]# /etc/init.d/haproxy stop    //此时能启动成功,但先不启动,防止裂脑

[root@data-1-2 haproxy-1.4.24]# chkconfig  haproxy off

后端两台web服务器(192.168.1.100)桥接、联网,配网关(和真机一样),配DNS(和真机一样)

[root@localhost 桌面]# yum -y install httpd  //不一定非用网络yum源

[root@localhost 桌面]# /etc/init.d/httpd start

[root@localhost 桌面]# echo test_web1 > /var/www/html/index.html

后端两台web服务器(192.168.1.200)桥接、联网,配网关(和真机一样),配DNS(和真机一样)

[root@localhost 桌面]# yum -y install httpd //不一定非用网络yum源

[root@localhost 桌面]# /etc/init.d/httpd start

[root@localhost 桌面]# echo test_web2 > /var/www/html/index.html

此时:主节点机器1和备节点2上:调度服务停止,heartbeat停止,现在把主备节点的heatbeat服务都启动,会自动管理vip和haproxy服务。

主节点机器1上:  //主节点启动heartbeat服务后,vip和haproxy服务同时拥有

[root@data-1-1 haproxy-1.4.24]# /etc/init.d/heartbeat start

[root@data-1-1 haproxy-1.4.24]# ip addr |grep 192.168.1.6

    inet 192.168.1.6/24 brd 192.168.1.255 scope global secondary eth0

[root@data-1-1 haproxy-1.4.24]# /etc/init.d/haproxy status

haproxy (pid  42075 42076 42077 42078 42079 42080 42081 42082) 正在运行...

备节点机器2上:  //主节点正常,备节点,vip和haproxy服务都不接管。

[root@data-1-2 haproxy-1.4.24]# /etc/init.d/heartbeat start

[root@data-1-2 haproxy-1.4.24]# ip addr |grep 192.168.1.6

为空

[root@data-1-2 haproxy-1.4.24]# /etc/init.d/haproxy status

haproxy 已停

客户端192.168.1.8上://主节点正常时,客户通过主节点调度器,访问web服务

[root@localhost 桌面]# vim /etc/hosts

192.168.1.6 www.qiang.com

wq

[root@localhost 桌面]# curl www.qiang.com

test_web1

[root@localhost 桌面]# curl www.qiang.com

test_web2

[root@localhost 桌面]# curl www.qiang.com

test_web1

[root@localhost 桌面]# curl www.qiang.com

test_web2

[root@localhost 桌面]# curl www.qiang.com

test_web1

[root@localhost 桌面]# curl www.qiang.com

test_web2

[root@localhost 桌面]# curl www.qiang.com

test_web1

[root@localhost 桌面]# curl www.qiang.com

test_web2

主节点机器1上:  //主节点heartbeat服务宕机后,vip和haproxy服务同时失去

[root@data-1-1 haproxy-1.4.24]# /etc/init.d/heartbeat stop

[root@data-1-1 haproxy-1.4.24]# ip addr |grep 192.168.1.6

[root@data-1-1 haproxy-1.4.24]# /etc/init.d/haproxy status

haproxy 已停

备节点机器2上:  //主节点宕机,备节点,vip和haproxy服务都接管过来。

[root@data-1-2 haproxy-1.4.24]# ip addr |grep 192.168.1.6

    inet 192.168.1.6/24 brd 192.168.1.255 scope global secondary eth0

[root@data-1-2 haproxy-1.4.24]# /etc/init.d/haproxy status

haproxy (pid  41873 41874 41875 41876 41877 41878 41879 41880) 正在运行...

客户端192.168.1.8上://主节点宕机时,客户通过备节点调度器,访问web服务

[root@localhost 桌面]# curl www.qiang.com

test_web1

[root@localhost 桌面]# curl www.qiang.com

test_web2

[root@localhost 桌面]# curl www.qiang.com

test_web1

[root@localhost 桌面]# curl www.qiang.com

test_web1

[root@localhost 桌面]# curl www.qiang.com

test_web2

[root@localhost 桌面]# curl www.qiang.com

test_web1

[root@localhost 桌面]# curl www.qiang.com

test_web2

主节点机器1上:  //主节点heartbeat服务恢复后,vip和haproxy服务同时接收回来

[root@data-1-1 haproxy-1.4.24]# /etc/init.d/heartbeat start

[root@data-1-1 haproxy-1.4.24]# ip addr |grep 192.168.1.6

    inet 192.168.1.6/24 brd 192.168.1.255 scope global secondary eth0

[root@data-1-1 haproxy-1.4.24]# /etc/init.d/haproxy status

haproxy (pid  42800 42801 42802 42803 42804 42805 42806 42807) 正在运行...

备节点机器2上:  //主节点恢复,备节点,vip和haproxy服务都释放。

[root@data-1-2 haproxy-1.4.24]# ip addr |grep 192.168.1.6

[root@data-1-2 haproxy-1.4.24]# /etc/init.d/haproxy status

haproxy 已停

客户端192.168.1.8上://主节点恢复时,客户通过主节点调度器,访问web服务

[root@localhost 桌面]# curl www.qiang.com

test_web1

[root@localhost 桌面]# curl www.qiang.com

test_web2

[root@localhost 桌面]# curl www.qiang.com

test_web2

[root@localhost 桌面]# curl www.qiang.com

test_web1

[root@localhost 桌面]# curl www.qiang.com

test_web1

[root@localhost 桌面]# curl www.qiang.com

test_web2                                     

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

运维实战课程

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值