heartbeat+nginx

本文详细介绍了在CentOS 6.5环境下,如何配置Heartbeat实现高可用集群,包括系统环境设置、IP和主机名配置、心跳线设置、软件包安装、Nginx的安装与缓存配置。通过Heartbeat监控和资源接管,确保在主节点故障时,服务能自动切换到备用节点,维持Nginx服务的连续性。
摘要由CSDN通过智能技术生成

第二章  Heartbeat原理

 

 

高可用原理:两台机器AB,正常是A提供服务,B闲置,当A宕机或服务宕掉,切换到B继续提供服务,使用心跳进行通信和选举

 

heartbeat原理:心跳检测和资源接管两个部分。集群中的主机互相发送报文,告诉对方自己当前的状态,如果在一定时间内未收到对方报文,认定对发死亡

 

心跳线的作用(内网IP):互相发送报文AB两台虚拟机上都装nginxheartbeatAB两台虚拟机都把heartbeat起来,但不启动nginx

     

     这时主节点上的nginx会自动启动,并获得VIP

      

     正常情况下是A提供服务,VIPA上,如果A上的nginx出现故障停止工作,VIP会漂移到B上,B上的nginx也会自动启动,以此达到高可用效果

 

          第三章  安装前准备

1.业务设计

1.系统:俩台centos 6.5【参考文档一vmware安装centos6.5

2.IP、主机名和心跳线IP设置

业务IP:192.168.1.244   主机名node1    内网心跳线IP192.168.8.244

业务IP:192.168.1.245   主机名node2    内网心跳线IP192.168.8.245

3.虚拟vip

Vip192.168.1.240     访问IP

4.安装软件包

libnetfilter_conntrack-devel-0.0.100-2.el6.x86_64.rpm

libnfnetlink-devel-1.0.0-1.el6.x86_64.rpm

libxml2-static-2.7.6-14.el6.x86_64.rpm

rpm -ivh epel-release-6-8.noarch.rpm

libnet-1.2-rc3.tar.gz

heartbeat-2.0.6.tar.gz

ngx_cache_purge-2.3.tar.gz

nginx-1.9.7.tar.gz

 

2.安装前准备

1.关闭防火墙

# service iptables stop

#chkconfig iptables off

改完后确认

# service iptables status

Iptables: 未运行防火墙

 

2.关闭selinux

 

修改/etc/selinux/config 文件,将SELINUX=enforcing改为SELINUX=disabled或SELINUX=permissive

# vi /etc/selinux/config

……

SELINUX=disabled

……

 

 

3.时间同步 

在两台主机中分别查看时间是否同步

[root@localhost ~]# date

如果同步,则无需修改,否则要进行同步,具体步骤如下:

若是联网的状态,执行以下命令:      

ntpdate time.nist.gov

若是内网的状态,执行下列操作:

A、在ip192.168.1.244中执行命令

vi /etc/ntp.conf

restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap  //允许192.168.1.0的网段同步

/etc/init.d/ntpd restart

 

B、在ip192.168.1.245中执行命令

vi /etc/ntp.conf

192.168.1.244

/etc/init.d/ntpd restart

 

C、同步主时间服务器时间,执行命令

ntpdate 192.168.1.244                               

 

4.互相添加对方主机名解析

主节点   IP:192.168.1.244   主机名node1    内网心跳线IP192.168.8.244

 

添加主机名node1

[root@localhost ~]# vi /etc/sysconfig/network

NETWORKING=yes

#HOSTNAME=localhost.localdomain

HOSTNAME=node1

:wq 保存退出

查看添加之后的结果

 

 

 

解析备节点主机名(注意备节点IP和主机名)

[root@localhost ~]# vi /etc/hosts

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4

::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

192.168.1.245   node2

:wq 保存退出

查看添加结果

 

 

 

添加内网心跳线

 

[root@localhost ~]# cd /etc/sysconfig/network-scripts/

[root@localhost network-scripts]# cp ifcfg-eth0 ifcfg-eth0:0

[root@localhost network-scripts]# vi ifcfg-eth0:0

DEVICE=eth0:0                               网卡eth0:0

#HWADDR=00:0c:29:4f:02:ee                   #

TYPE=Ethernet

#UUID=7995f1d7-8789-43f1-b17e-c0441dfea01b   #

NM_CONTROLLED=yes

BOOTPROTO=static                            static

IPV6INIT=no

USERCTL=no

IPADDR=192.168.8.244                      心跳线

NETMASK=255.255.255.0

:wq 保存退出

 

重启网卡

[root@node1 network-scripts]# service network restart

[root@node1 network-scripts]# ifconfig

 

 

备节点    IP:192.168.1.245   主机名node2    内网心跳线IP192.168.8.245

 

添加主机名node2

[root@localhost ~]# vi /etc/sysconfig/network

NETWORKING=yes

#HOSTNAME=localhost.localdomain

HOSTNAME=node2

:wq

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值