Linux Keepalived双机热备

Linux Keepalived双机热备,第1张

本文使用的是 VMware Workstation 15 Player ,创建两个虚拟机,分别命名为 CentOS 7 64位 M 和 CentOS 7 64位 B ,M表示"master"主服务器,B表示"backup"备用服务器。

网络连接选择 NAT模式 ,启动后使用 ip add 发现没有自动分配ip地址,是因为CentOS 7默认是不启动网卡的,解决方法如下:

打开配置文件,把 ONBOOT=no 这一项改为 ONBOOT=yes ,然后 :wq 保存退出,然后重启网络服务:

这时候再输入 ip add 会发现ip地址有了。

本文Master ip为 192.168.56.131 ,Bcakup ip为 192.168.56.132 。

虚拟ip(vip)定义为 192.168.56.188 。

安装gcc

进入nginx-1.6.2并执行configure文件

成功后会在/usr/local/nginx目录下看到 conf、html、logs、sbin 四个目录。

启动命令:

停止命令:

重启命令:

使用如下命令查看相关端口是否已启动Nginx

浏览器输入Master的ip地址: http://192.168.56.131 ,出现Nginx的欢迎页面即成功启用Nginx。

同理,Backup浏览器输入: http://192.168.56.132 ,同样出现Nginx的欢迎页面。

注意这个地方,html中最后一行 "Thank you for using nginx." 本文针对Master和Backup分别进行了修改便于热备时更好的区分服务是否切换成功,修改的文件在

如果启动成功,但进入不了欢迎页面,则可能需要关闭firewalld防火墙:

进入keepalived-1.2.18并执行configure文件

在 /etc/ 目录下创建keepalived文件夹

将keepalived配置文件复制到/etc/keepalived下

将keepalived脚本文件复制到/etc/相关目录下

创建keepalived软链接

设置开机启动

安装完毕。

进入/etc/keepalived/目录下打开keepalived.conf文件进行修改

在/etc/keepalived/目录下创建sh脚本文件

1、安装nano

2、使用nano创建nginx_check.sh脚本

3、打开nginx_check.sh并编辑如下内容

(注意`符号,非'符号)

4、脚本授权

安装并配置完毕后,可以分别启动两台虚拟机上的Nginx和Keepalived进行热备的验证了。

启动Nginx:

启动Keepalived:

关闭Keepalived:

查看nginx进程:

查看keepalived进程:

分别启动Nginx和Keepalived后,Master输入 ip add 查看ip多了一个 192.168.56.188

打开浏览器输入ip地址: http://192.168.56.188 看到Nginx的欢迎页面

此时nginx131说明为主节点。

然后我们将Keepalived关闭

或kill掉Nginx进程,因为有nginx_check.sh脚本会检测如果没有Nginx进程运行也会自动将Keepalived关闭

会发现,节点由Master切换到了Backup:

热备成功。

Linux上的heartbeat双机热备服务架设

【一】 安装前环境设定

两台主机硬件环境(不必完全一致):

CPU: Xeon 3G *2 (EM64T)

MEM: 2G

NIC: Intel 1G *2

eth0: 对外IP

eth1: 对内IP(HA专用)

两台主机的eth1使用双机对联线直接连接。

分区方式:

Filesystem 容量 挂载点

/dev/sda2 9.7G /

/dev/sda6 45G /Datas

/dev/sda1 99M /boot

none2.0G /dev/shm

/dev/sda3 9.7G /opt

另外每台主机应预留500M的raw空间或者更多来作为共用空间被HA使用。

*** 作系统:

RedHat Enterprise 4 Update2 (2.6.9-22 EL)

预安装软件:

@ X Window System

@ GNOME Desktop Environment

@ KDE Desktop Environment

@ Editors

@ Engineering and Scientific

@ Graphical Internet

@ Text-based Internet

@ Authoring and Publishing

@ Server Configuration Tools

@ Development Tools

@ Kernel Development

@ X Software Development

@ GNOME Software Development

@ KDE Software Development

@ Administration Tools

@ System Tools

【二】安装前网络环境设定:

node1: 主机名:servers201 ( HA01 )

eth0: 192.168.10.201 //对外IP地址

eth1: 10.0.0.201 //HA心跳使用地址

node2: 主机名:servers202 ( HA02 )

eth0: 192.168.10.202 //对外IP地址

eth1: 10.0.0.202 //HA心跳使用地址

特别注意要检查以下几个文件:

/etc/hosts

/etc/host.conf

/etc/resolv.conf

/etc/sysconfig/network

/etc/sysconfig/network-scripts/ifcfg-eth0

/etc/sysconfig/network-scripts/ifcfg-eth1

/etc/nsswitch.conf

#vi /etc/hosts

node1的hosts内容如下:

127.0.0.1 localhost.localdomain localhost

192.168.10.201 servers201 HA01

10.0.0.201 HA01

10.0.0.202 HA02

192.168.10.202 server202

node2的hosts内容如下:

127.0.0.1 localhost.localdomain localhost

192.168.10.202 servers202 HA02

10.0.0.202 HA02

10.0.0.201 HA01

192.168.10.201 server201

#cat /etc/host.conf

order hosts,bind

#cat /etc/resolv.conf

nameserver 61.139.2.69 //DNS地址

#cat /etc/sysconfig/network

NETWORKING=yes

HOSTNAME=servers201 //主机名

GATEWAY="192.168.10.1" //网关

GATEWAY="eth0" //网关使用网卡

ONBOOT=YES //启动时加载

FORWARD_IPV4="yes" //只允许IPV4

#cat /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0

ONBOOT=yes

BOOTPROTO=static

IPADDR=192.168.10.201

NETMASK=255.255.255.0

GATEWAY=192.168.10.1

TYPE=Ethernet

IPV6INIT=no

#cat /etc/sysconfig/network-scripts/ifcfg-eth1

DEVICE=eth1

ONBOOT=yes

BOOTPROTO=none

IPADDR=10.0.0.201

NETMASK=255.255.255.0

TYPE=Ethernet

[node1] 与 [node2] 在上面的配置中,除了

/etc/hosts

/etc/sysconfig/network

/etc/sysconfig/network-scripts/ifcfg-eth0

/etc/sysconfig/network-scripts/ifcfg-eth1

要各自修改外,其他一致。

配置完成后,试试在各自主机上ping对方的主机名,应该可以ping通:

/root#ping HA02

PING HA02 (10.0.0.202) 56(84) bytes of data.

64 bytes from HA02 (10.0.0.202): icmp_seq=0 ttl=64 time=0.198 ms

64 bytes from HA02 (10.0.0.202): icmp_seq=1 ttl=64 time=0.266 ms

64 bytes from HA02 (10.0.0.202): icmp_seq=2 ttl=64 time=0.148 ms

--- HA02 ping statistics ---

3 packets transmitted, 3 received, 0% packet loss, time 2002ms

rtt min/avg/max/mdev = 0.148/0.204/0.266/0.048 ms, pipe 2

【三】安装HA 与HA依赖包

rpm -Uvh libnet-1.1.2.1-1.rh.el.um.1.i386.rpm //可以不装

rpm -Uvh heartbeat-pils-2.0.4-1.el4.i386.rpm

rpm -Uvh heartbeat-stonith-2.0.4-1.el4.i386.rpm

rpm -Uvh heartbeat-2.0.4-1.el4.i386.rpm

rpm -Uvh ipvsadm-1.24-5.i386.rpm

【四】 配置 HA的各配置文件

配置心跳的加密方式:authkeys

#vi /etc/ha.d/authkeys

如果使用双机对联线(双绞线),可以配置如下:

#vi /etc/hc.d/authkeys

auth 1

1 crc

存盘退出,然后

#chmod 600 authkeys

配置心跳的监控:haresources

#vi /etc/ha.d/haresources

各主机这部分应完全相同。

server201 IPaddr::192.168.10.200 ipvsadm httpd

指定 server201调用ipvsadm启动http服务,系统附加一个虚拟IP 192.168.10.200 给eth0:0

这里如果server201宕机后,server202可以自动启动http服务,并新分配IP 192.168.10.200给server202的eth0:0

配置心跳的配置文件:ha.cf

#vi /etc/ha.d/ha.cf

logfile /var/log/ha_log/ha-log.log ## ha的日志文件记录位置。如没有该目录,则需要手动添加

bcast eth1 ##使用eth1做心跳监测

keepalive 2 ##设定心跳(监测)时间时间为2秒

warntime 10

deadtime 30

initdead 120

hopfudge 1

udpport 694 ##使用udp端口694 进行心跳监测

auto_failback on

node server201 ##节点1,必须要与 uname -n 指令得到的结果一致。

node server202 ##节点2

ping 192.168.10.1 ##通过ping 网关来监测心跳是否正常。

respawn hacluster /usr/lib64/heartbeat/ipfail

apiauth ipfail gid=root uid=root

debugfile /Datas/logs/ha_log/ha-debug.log

设置ipvsadm的巡回监测

ipvsadm -A -t 192.168.10.200:80 -s rr

ipvsadm -a -t 192.168.10.200:80 -r 192.168.10.201:80 -m

ipvsadm -a -t 192.168.10.200:80 -r 192.168.10.202:80 -m

执行后进行监测:

#ipvsadm --list

如果返回结果与下相同,则设置正确。

IP Virtual Server version 1.2.0 (size=4096)

Prot LocalAddress:Port Scheduler Flags

->RemoteAddress:Port Forward Weight ActiveConn InActConn

TCP 192.168.10.200:http rr

->server202:http Local 1 0 0

->server201:http Masq 1 0 0

【五】 HA服务的启动、关闭以及测试

启动HA: service heartbeat start

关闭HAservice heartbeat stop

系统在启动时已经自动把heartbeat 加载了。

使用http服务测试 heartbeat

首先启动httpd服务

#service httpd start

编辑各自主机的测试用html文件,放到/var/www/html/目录下。

启动node1的heartbeat,并执行这个指令进行监控: heartbeat status

【六】 防火墙设置

heartbeat 默认使用udp 694端口进行心跳监测。如果系统有使用iptables 做防火墙,应记住把这个端口打开。

#vi /etc/sysconfig/iptables

加入以下内容

-A RH-Firewall-1-INPUT -p udp -m udp --dport 694 -d 10.0.0.201 -j ACCEPT

意思是udp 694端口对 对方的心跳网卡地址 10.0.0.201 开放。

#service iptables restart

重新加载iptables。

什么是双机热备

双机热备这一概念包括了广义与狭义两种意义。

从广义上讲,双机热备(双机容错)就是对于重要的服务,使用两台伺服器,互相备份,共同执行同一服务。当一台伺服器出现故障时,可以由另一台伺服器承担服务任务,从而在不需要人工干预的情况下,自动保证系统能持续提供服务

双机热备由备用的伺服器解决了在主伺服器故障时服务不中断的问题。但在实际应用中,可能会出现多台伺服器的情况,即伺服器丛集

双机热备一般情况下需要有共享的储存装置。但某些情况下也可以使用两 *** 立的伺服器

实现双机热备,需要通过专业的丛集软体或双机软体

从狭义上讲,双机热备特指基于active&盯47standby方式的伺服器热备。伺服器资料包括资料库资料同时往两台或多台伺服器写,或者使用一个共享的储存装置。在同一时间内只有一台伺服器执行。当其中执行着的一台伺服器出现故障无法启动时,另一台备份伺服器会通过双机软体的诊测(一般是通过心跳诊断)将standby机器启用,保证应用在短时间内完全恢复正常使用

回答完毕!

双机热备的工作原理

故障隔离,简单的讲,高可用(热备)就是一种利用故障点转移的方式来保障业务连续性。其业务的恢复不是在原伺服器,而是在备用伺服器。热备不具有修复故障伺服器的功能,而只是将故障隔离。 双机热备的切换一般分为手动切换和故障切换,即计划性切换(即人为切换)和非计划性切换(即故障切换)。需要大家注意的是并不是所有资源都具有可切换性,以PlusWell热备份软体为例他提供了:(1)本地资源监控,即不可切换的资源,(2)普通资源,即可以在主备机切换的资源。(3)快速资源,指的是快速切换的资源,一般情况下的双机切换时间为1-5分钟,而快速切换的时间为3-5秒种。使用者应根据自己的需求及业务特点来选择相关的切换服务,从价格成本上来说,切换的时间越短费用也越高。 Rose HANEC ExpressCluster微软MSCSSymantec VCSLegatoLifeKeeperEMC Autostart红帽RHCS REYUN HA-mirror资料映象软体REYUN HA 双机热备软体Moebius For SQL Server负载均衡丛集RoseHA/RoseMirrorHA双机热备软体REYUN Cluster丛集热备份软体Lander Cluster联鼎丛集软体DBTwin For SQL Server资料库丛集PlusWell 丛集软体EterneCluster丛集软体ServHA Cluster双机丛集软体ATang 丛集软体eubase丛集软体ENASCluster-DN/ENASMirrorHA双机热备软体ENASCluser/ENAS-MN多机丛集软体

什么是双机热备和丛集

双机热备这一概念包括了广义与狭义两种意义。

从广义上讲,双机热备(双机容错)就是对于重要的服务,使用两台伺服器,互相备份,共同执行同一服务。当一台伺服器出现故障时,可以由另一台伺服器承担服务任务,从而在不需要人工干预的情况下,自动保证系统能持续提供服务

双机热备由备用的伺服器解决了在主伺服器故障时服务不中断的问题。但在实际应用中,可能会出现多台伺服器的情况,即伺服器丛集

双机热备一般情况下需要有共享的储存装置。但某些情况下也可以使用两 *** 立的伺服器

实现双机热备,需要通过专业的丛集软体或双机软体

从狭义上讲,双机热备特指基于active/standby方式的伺服器热备。伺服器资料包括资料库资料同时往两台或多台伺服器写,或者使用一个共享的储存装置。在同一时间内只有一台伺服器执行。当其中执行着的一台伺服器出现故障无法启动时,另一台备份伺服器会通过双机软体的诊测(一般是通过心跳诊断)将standby机器启用,保证应用在短时间内完全恢复正常使用

双机热备和双机冷备有什么区别?

双机热备就是当一台伺服器挂掉后,自动切换到另一台使用,而冷备的话,需要人员手动去切换。

冗余和双机热备有什么区别?

冗余:指重复配置系统的一些部件,当系统发生故障时,冗余配置的部件介入并承担故障部件的工作,由此减少系统的故障时间。

双机热备:就是对于重要的服务,使用两台伺服器,互相备份,共同执行同一服务。当一台伺服器出现故障时,可以由另一台伺服器承担服务任务,从而在不需要人工干预的情况下,自动保证系统能持续提供服务。

从概念上看冗余的范围更大,可以包括整个系统或系统的一部分,而双机热备只对伺服器或cpu冗余。

在上位机伺服器方面就是一个概念了。

伺服器为什么要做双机热备?双机热备的好处?

对于伺服器管理员来说,伺服器出现故障可能是最严重的问题,因为伺服器故障的原因有很多,有可能是装置故障,有可能是作业系统故障,还有可能是软体故障,当礌务器出现故障时,要一一对故障进行排除,让伺服器正常执行,少则几十分钟,从则几十小时,这还不是挽回伺服器故障所带来的损失,这时,双机热备对伺服器就起著关键作用。 双机热备特指基于高可用系统中的两台伺服器的热备(或高可用),因两机高可用在国内使用较多,故得名双机热备,双机高可用按工作中的切换方式分为:主-备方式(Active-Standby方式)和双主机方式(Active-Active方式),主-备方式即指的是一台伺服器处于某种业务的启用状态(即Active状态),另一台伺服器处于该业务的备用状态(即Standby状态)。而双主机方式即指两种不同业务分别在两台伺服器上互为主备状态(即Active-Standby和Standby-Active状态)。 对于一些重要系统而言,使用者是很难忍受这样长时间的服务中断的。因此,就需要通过双机热备,来避免长时间的服务中断,保证系统长期、可靠的服务。 决定是否使用双机热备,正确的方法是要分析一下系统的重要性以及对服务中断的容忍程度,以此决定是否使用双机热备。即,你的使用者能容忍多长时间恢复服务,如果服务不能恢复会造成多大的影响。 在考虑双机热备时,需要注意,一般意义上的双机热备都会有一个切换过程,这个切换过程可能是一分钟左右。在切换过程中,服务是有可能短时间中断的。但是,当切换完成后,服务将正常恢复。因此,双机热备不是无缝、不中断的,但它能够保证在出现系统故障时,能够很快恢复正常的服务,业务不致受到影响。而如果没有双机热备,则一旦出现伺服器故障,可能会出现几个小时的服务中断,对业务的影响就可能会很严重。 另有一点需要强调,即伺服器的故障与交换机、储存装置的故障不同,其概念要高得多。原因在于伺服器是比交换机、储存装置复杂得多的装置,同时也是既包括硬体、也包括作业系统、应用软体系统的复杂系统。不仅装置故障可能引起服务中断,而且软体方面的问题也可能导致伺服器不能正常工作。 还就注意的是,虽然目前伺服器的的其它防护措施例如磁碟阵列(RAID)、资料备份可以很大程度上的保护使用者资料,但却不能代替双机热备的作用。

N+1热备和双机热备有什么区别? 5分

N+1热备,意思是两台备一台,三台备一台,五台也是备一台。

风雨兼程 学海同舟 有事说话 满意【采纳】

一些双机热备软体里面的HA是什么意思?比如ROSE HA.... 5分

High-Availability Linux Project 的意思,HA 的全称就是这个。 简单讲就是一个双机管理软体。 同样功能的有很多,但是经常用的 就没几个。 比如第三方的ROSE,VIRITAS等

双机热备软体有什么作用

NEC ExpressCluster® X 3.0 纯软热备方式简介

1 概述

资讯化建设的不断推进,各个企事业单位的活动越来越多的依赖于其关键的业务资讯系统,这些业务资讯系统对整个机构的运营和发展起著至关重要的作用,一旦发生宕机故障或应用停机,将给机构带来巨大的经济损失。

可见,对那些需要保障资讯保安和提供不间断的资讯服务的机构来说,业务系统的容错性和不间断性显得尤为重要。如何保障各种关键应用持续运营,达到永续经营的良性回圈,已成为当今企事业单位和IT领域急需解决的关键问题。

2 软体功能简介

荟萃NEC技术精华的EXPRESSCLUSTER是一款专业的高可用丛集软体产品(双机热备丛集软体),可为您提供Windows和Linux平台上完整的高可用性解决方案。当丛集中的某个节点由于软体或硬体原因发生故障时,集群系统可以把IP、客户业务等资源切换到其他健康的节点上,使整个系统能连续不间断的对外提供服务,从而为机构24x365的关键业务提供了可靠的保障,达到了系统99.999%的高可用性和可靠性。

NEC ExpressCluster® X 3.0 语言支援:中文、英文、日文。

NEC ExpressCluster® X 3.0 最大节点数:

支援2~32节点

NEC ExpressCluster® X 3.0 配置资讯备份:丛集配置资讯可以汇入、汇出。配置好NEC软体之后可以选择汇出配置档案储存,如果出现系统宕机,无需重新配置NEC软体,即可恢复丛集,可以通过汇入配置档案,快速建立双机系统;对于系统更改主机名,IP地址等相应的资讯,只需简单 *** 作就可以完成NEC软体系统的修改。

NEC ExpressCluster® X 3.0 报警功能:

不仅有event log输出、AlertView显示、还支援手机简讯、Email、旋转灯方式的通报功能。

NEC ExpressCluster® X 3.0 BS架构管理工具:

实现了Windows和Linux两个平台上的产品的管理介面的统一。完全遮蔽了平台差异性。

只要有浏览器和Java执行环境,任何一台机器都可以进行监控,维护和配置 *** 作。

可以在一个页面上同时显示多个丛集的状态, 无论是Windows丛集还是Linux丛集,一目了然。

NEC ExpressCluster® X 3.0 日志收集功能:

提供log自动收集工具,可在管理控制台自动收集所有丛集伺服器的日志资讯,并且可供收集的log种类丰富,除了EC本身的内部日志以外,还可收集系统日志、登录档资讯、系统诊断报告等等

NEC ExpressCluster® X 3.0 故障监视功能:

可以对主机的网络卡、本地磁碟、储存、应用程式、程序、服务、作业系统、伺服器自我监视等。当主机发生任何故障后,NEC ExpressCluster® X 3.0将自动、快速的把主伺服器上的所有资源切换到备伺服器上,确保应用程式持续可用性,保证公司业务的持续执行。

NEC ExpressCluster® X 3.0 的丛集结构:

共享磁碟型、资料映象型、共享磁碟映象型、虚拟平台丛集、无磁碟型、共享和映象共存型、NAS型。

NEC ExpressCluster® X 3.0 的执行方式支援:

Active/Standby 、Active/Active、N+......


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/8495727.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-17
下一篇 2023-04-17

发表评论

登录后才能评论

评论列表(0条)

保存