对两台服务器做了双机热备份,设置了一个虚拟IP对外连接。如何设置?
两台服务器的配置可以不一样。
双机热备就是个最小的集群。你说的互为热备应该是在双机的基础上加了个负载均衡,俩服务器都工作,都跑同样的应用,来处理一个数据,这样服务器的压力比较小,寿命长,在一台宕机的情况下另一台正常工作。
这种是负载均衡。虚拟IP是通过双机软件来虚拟的,对外连接是通过交换机连接的。比如服务器现在至少都是双千兆网卡,如果两台做双机,总共4个千兆网口,那么这四个网口其中两个会被用来接心跳线,其实就是个网线,用来互相发测试数据用。剩下的两个网口会被接到交换机上,通过软件,再通过交换机来虚拟成一个IP。
服务器,也称伺服器,是提供计算服务的设备。由于服务器需要响应服务请求,并进行处理,因此一般来说服务器应具备承担服务并且保障服务的能力。
服务器的构成包括处理器、硬盘、内存、系统总线等,和通用的计算机架构类似,但是由于需要提供高可靠的服务,因此在处理能力、稳定性、可靠性、安全性、可扩展性、可管理性等方面要求较高。
hrsp HRSP原理 需要注意的是,Cluster里的每个成员路由器仍然是标准的路由器, 客户端仍然可以将成员路由器配置成其默认网关。 在Cisco路由器中,最多可以配置256个HSRP组, 因为HSRP能够使用的MAC地址类似于:00000c07ac。 HRSP每隔3秒发送hello包,包括group ID,HSRP group和优先级(默认为100)。 路由器彼此之间依据优先级,确定优先级最高的路由器是活动路由器。 如果优先级相同,在IP地址高的成为活动路由器。 在HRSP组中,只允许同时存在一个活动路由器,其他路由器都处于备用状态, 备用路由器不转发数据包。 如果备用路由器持续不断地收到活动路由器发来的hello包, 则其会一直处于备用状态。 一旦备用路由器在规定的时间内(Hold Time,默认10秒)没有收到hello包,, 则认为活动路由器失效, 优先级最高的备用路由器就接替活动路由器的角色,开始转发数据包。 4)HRSP preempt技术 HRSP技术能够保证优先级高的路由器失效恢复后总能处于活动状态。 活动路由器失效后,优先级最高的备用路由器处于活动状态, 如果没有使用preempt技术, 则当活动路由器恢复后,只能处于备用状态, 先前的备用服务器代替其角色处于活动状态,直到下一次选举发生。 5)HRSP track技术 如果所监测的端口出现故障,则也可以进行路由器的切换。 如果主路由器上有多条线路被跟踪, 则当一条线路出现故障时,就会切换到备份路由器上,即使其他都线路正常工作, 直到主路由器该线路正常工作,才能重新切换回来。 该功能在实际应用中完全可以由线路备份功能实现。 路由器之间通过广播HSRP优先级选出当前的主动路由器:先比优先级,再比ip,大的选上。 两设备靠hello消息相互响应,3s一次,hold time 10s一次;当HSRP检测不到主动路由器的hello消息时(一个hold time), 将认为主动路由器有故障,这时HSRP会选择优先级最高的备用路由器变为主动路由器, 同时将按HSRP优先级在配置了HSRP的路由器中再选择一台路由器作为新的备用路由器。 配置了HSRP协议的路由器交换以下三种多点广播消息: Hello──hello消息通知其他路由器,发送路由器的HSRP优先级和状态信息,HSRP 路由器默认为每3秒钟发送一个hello消息; Coup──当一个备用路由器变为一个主动路由器时发送一个coup消息; Resign──当主动路由器要宕机或者当有优先级更高的路由器发送hello消息时,主动路由器发送一个resign消息。 在任一时刻,配置了HSRP协议的路由器处于由以下六种状态: Inithsrp──的初始状态,网关接口刚up时的状态; Learn──等待hello消息,从而学习虚拟ip的状态; Listen──监听hello,并持续一个holdtime时间; Speak──处于发言状态的hsrp router定期发送hello,并积极参与active和standby的选举,如果都没有选上,保持这个状态; Standby──为下一任active的候选者,并定期发送hello消息; Active──路由器对发送给hsrp组的虚拟mac地址和ip地址的数据包进行转发,并自己定期发送hello消息。 如果多台路由器存在一个虚拟路由器中,一个是active,一个是standby,其他的既不是active,也不是standby,而状态处于speak。 注:优先级默认为100; HELLO消息是基于UDP的信息包,目的地址是224002,协议号是1892 如果在一个选举好的虚拟路由器内又加了一台优先级高的设备,只有在配置了抢占后才会成为Active,稳定优先。 hsrp虚拟mac地址:00000c07ac2f,其中:00000c是代表厂商cisco,07ac代表hsrp协议,2f代表hsrp组号。 HRSP配置1 可在vlan或三层接口配置hsrp 做hsrp要关闭ip重定向:no ip redirects Vlan hsrp配置: switch1 interface vlan2 ip address 192169102 2552552550 standby 1 priority 105 preempt standby 1 ip 192169101 switch2 interface vlan2 ip address 192169103 2552552550 standby 1 ip 192169101 注:1为group id,需一致; Standby 1 preemt //设置抢占 Standby 1 track int fa 0/1 //设置追踪,如0/1口 down,优先级默认降10 standby timers hello值 hold值 //时间以active路由器的为准。 #sh standby (brief) #debug standby events / packet 另:对象追踪工具,能查到远端是否断开的情况,此功能未配置成功。 HSRP的配置2 (一)路由器A的配置: (1)进入接口配置模式:Interface fasternet 0/1 (2)配置接口的IP地址:ip address 1721610l 2552552550 (3)关闭重定向功能:no ip redirects (4)加入备份组172和指定虚拟IP地址:standby 172 ip 1721610254 (5)进入接口配置模式:Interface fasternet 0/2 (6)配置接口的IP地址:ip address 1010101 2552552550 (7)关闭重定向功能:no ip redirects (8)加入备份组10和指定虚拟IP地址:standby 10 ip 101010254 路由器B的配置: (1)进入接口配置状态:Interface fasternet 0/1 (2)配置接口的IP地址:ip address 17216102 2552552550 (3)关闭重定向功能:no ip redirects (4)加入备份组172和指定虚拟IP地址:standby 172 ip 1721610254 (5)进入接口配置状态:Interface fastethernet 0/2 (6)配置接口的IP地址:ip address 1010102 2552552550 (7)关闭重定向功能:no ip redirects (8)加入备份组10和指定虚拟IP地址:standby 10 ip 101010254 (二)配置HRSP的优先级: 路由器A的配置: (1)进入接口配置模式:Interface fasternet 0/1 (2)配置优先级:standby 172 ip priority 120 (3)进入接口配置模式:Interface fasternet 0/2 (4)配置优先级:standby 10 ip priority 110 路由器B的配置: (1)进入接口配置模式:Interface fasternet 0/1 (2)配置优先级:standby 172 ip priority 110 (3)进入接口配置模式:Interface fasternet 0/2 (4)配置优先级:standby 10 ip priority 120 测试:show standby (三)配置HRSP占先权: 路由器A的配置: (1)进入接口配置模式:Interface fasternet 0/1 (2)配置占先权:standby 172 ip preempt 路由器B的配置: (1)进入接口配置模式:Interface fasternet 0/2 (2)配置占先权:standby 10 ip preempt 测试:show standby (四)配置HRSP的端口跟踪: 路由器A的配置: (1)进入接口配置模式:Interface fasternet 0/1 (2)配置端口跟踪:standby 172 track interface fasternet 0/2 50 路由器B的配置: (1)进入接口配置模式:Interface fasternet 0/2 (2)配置端口跟踪:standby 10 track interface fasternet 0/1 50 测试:show standby
Keepalived软件起初是专为LVS负载均衡软件设计的,用来管理并监控LVS集群系统中各个服务节点的状态,后来又加入了可以实现高可用的VRRP功能。因此,Keepalived除了能够管理LVS软件外,还可以作为其他服务(例如:Nginx、Haproxy、MySQL等)的高可用解决方案软件。
Keepalived采用是模块化设计,不同模块实现不同的功能。
keepalived主要有三个模块,分别是core、check和vrrp。
core :是keepalived的核心,负责主进程的启动和维护,全局配置文件的加载解析等
check : 负责healthchecker(健康检查),包括了各种健康检查方式,以及对应的配置的解析包括LVS的配置解析;可基于脚本检查对IPVS后端服务器健康状况进行检查
vrrp :VRRPD子进程,VRRPD子进程就是来实现VRRP协议的
keepalived 配置文件:
Keepalived 配置文件为:keepalivedconf;
主要有三个配置区域,分别是:全局配置(Global Configuration)、VRRPD配置、LVS配置
全局配置又包括两个子配置: 全局定义(global definition) 静态IP地址/路由配置(static
ipaddress/routes)
Keepalived服务VRRP的工作原理:
Keepalived高可用对之间是通过 VRRP进行通信的, VRRP是通过竞选机制来确定主备的,主的优先级高于备,因此,工作时主会优先获得所有的资源,备节点处于等待状态,当主宕机的时候,备节点就会接管主节点的资源,然后顶替主节点对外提供服务
在Keepalived服务对之间,只有作为主的服务器会一直发送 VRRP广播包,告诉备它还活着,此时备不会抢占主,当主不可用时,即备监听不到主发送的广播包时,就会启动相关服务接管资源,保证业务的连续性接管速度最快
出现脑裂的原因:
高可用服务器对之间心跳线链路发生故障,导致无法正常通信。
因心跳线坏了(包括断了,老化)。
因网卡及相关驱动坏了,ip配置及冲突问题(网卡直连)
因心跳线间连接的设备故障(网卡及交换机)
因仲裁的机器出问题(采用仲裁的方案)
高可用服务器上开启了 iptables防火墙阻挡了心跳消息传输。
高可用服务器上心跳网卡地址等信息配置不正确,导致发送心跳失败
其他服务配置不当等原因,如心跳方式不同,心跳广插冲突、软件Bug等。
如何解决脑裂:
① 同时使用串行电缆和以太网电缆连接,同时用两条心跳线路,这样一条线路坏了,另一个还是好的,依然能传送心跳消息。
② 当检测到裂脑时强行关闭一个心跳节点(这个功能需特殊设备支持,如Stonith、feyce)。相当于备节点接收不到心跳消患,通过单独的线路发送关机命令关闭主节点的电源。
③ 做好对裂脑的监控报警(如邮件及手机短信等或值班)在问题发生时人为第一时间介入仲裁,降低损失。管理员可以通过手机回复对应数字或简单的字符串操作返回给服务器让服务器根据指令自动处理相应故障这样解决故障的时间更短。
一、实验环境
操作系统:CentOS72 Minial
###################
serverA:
eno16777736 1921681104
eno33554984 1921681105
##########################
serverB:
eno16777736 1921681109
eno33554984 1921681106
###########################
vip01:1921681111
vip02:1921681112
二、设置防火墙
/usr/bin/firewall-cmd --direct
--permanent --add-rule ipv4 filter INPUT 0 --in-interface eth0 --destination ${组播地址} --protocol vrrp -jACCEPT
/usr/bin/firewall-cmd --reload
三、软件安装
在serverA和serverB上
# rpm -ivh --force libnl3-3228-4el7x86_64rpm
# rpm -ivh --forcelm_sensors-libs-340-420160601gitf9185e5el7x86_64rpm
# rpm -ivh --force net-snmp-agent-libs-572-32el7x86_64rpm
# rpm -ivh --force net-snmp-libs-572-32el7x86_64rpm
# rpm -ivh --force ipset-libs-638-3el7_6x86_64rpm
# rpm -ivh --force keepalived-135-6el7x86_64rpm
四、配置keepalived
如果不使用 VRRP Sync Groups 如果keepalived 主机有两个网段,每个网段开启一个VRRP 实例,如果对外的网段出现问题,VRRPD认为自己仍然认为健康,因此 Master和Backup 相互切换,从而导致服务不能正常使用,同时高可用集群也不能正常运行,Sync group 就是为了解决该问题,可以把两个实例放进同一个Sync Group 中!
serverA
# vim /etc/keepalived/keepalivedconf
######################################
! Configuration File for keepalived
global_defs {
router_id LVS_DEVEL
}
vrrp_sync_group VG1 {
group {
VI_1
VI_2
}
}
vrrp_instance VI_1 {
state BACKUP
interface eno16777736
virtual_router_id 51
priority 100
nopreempt
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
track_interface {
eno16777736
eno33554984
}
virtual_ipaddress {
1921681111
}
}
vrrp_instance VI_2 {
state BACKUP
interface eno33554984
virtual_router_id 52
priority 100
nopreempt
advert_int 1
authentication {
auth_type PASS
auth_pass 2222
}
track_interface {
eno16777736
eno33554984
}
virtual_ipaddress {
1921681112
}
}
serverB
# vim /etc/keepalived/keepalivedconf
######################################
! Configuration File for keepalived
global_defs {
router_id LVS_DEVEL
}
vrrp_sync_group VG1 {
group {
VI_1
VI_2
}
}
vrrp_instance VI_1 {
state BACKUP
interface eno16777736
virtual_router_id 51
priority 90
nopreempt
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
track_interface {
eno16777736
eno33554984
}
virtual_ipaddress {
1921681111
}
}
vrrp_instance VI_2 {
state BACKUP
interface eno33554984
virtual_router_id 52
priority 90
nopreempt
advert_int 1
authentication {
auth_type PASS
auth_pass 2222
}
track_interface {
eno16777736
eno33554984
}
virtual_ipaddress {
1921681112
}
}
五、测试
在serverA 和 serverB上
# systemclt start keepalived
在serverA
服务器同步。心跳线主要是用于做双机热备的时候,联系阵列柜之间的两台服务器网卡间的跳线。起到服务器同步的作用。心跳线是用于连接A、B两台服务器间的网线。在这两台服务器A、B中,A为工作机,B为备份机,通过一根心跳线来连接。
故障现象
公司有两台关键的服务器,一个是主服务器,一个是备用服务器。中间通过心跳线连接,在某台主机一次重启后,网络设置没有任何改动,而心跳功能却不能实现了,两台机器不能同时心跳线互通。
诊断过程
这次事可闹大了,这可是公司关键业务的服务器,连老总都惊动了,他可不管你怎么处理,他只关心机器能否正常运转,现在已经是凌晨2点半了,留给我只有几个小时的时间了在明天早上上班前可一定要搞定,否则后果……
赶快抓紧时间,一步一步来,首先这次重启只是因为改动了几个配置文件, 要生效就必须要重启系统。不过幸好有备份、先不管三七二十一。恢复配置文件再重启。故障依旧两台机器都可正常运行,心跳线却依然有问题。再查看每台机器心跳线连接的网卡状态及配置 ,状态都是没有问题 ,网卡灯也是亮的。难道是网线没插好。或是有问题。重新用一根确认,网线是好的,可是两个服务器之间还是不通。奇怪,这是什么原因,排除物理问题,那肯定是设置问题。
没办法,只好将两台机器网卡状态一项一项的比较。这是怎么回事,突然我发现两个网卡的速率及状态不一样,一个是100Mb/s全双工,而另一个则是 10Mb/s半双工。比来比去只有这一项不同。难道是这个原因,不管了,死马当活马医了,把两台机器的网卡状态统一设置为10口Mb/s全双工RESET一下。我再Ping,问题解决了。再重新设置配置文件,这次强制网卡状态为100Mb/。全双工,重新启动机器 ,服务器工作一切正常。看看老总紧缩的眉头舒展开,我在想这个月的奖金是不是会……
排除心得
本次故障的原因其实非常简单,但表现出来的现象则稍微复杂一些。该服务器使用的是一个10/100 Mb/s的自适应以太网卡,设计速度为100Mb/s。机器重启后,网卡自动选择状态。由于两边网卡的工作状态不一致,导致网络不通。
现在网卡常见的有 10Mb/SI 00Mb/s和 10/100 Mb/s自适应网卡、当两个相同固定速车的网卡连接时一般不会产生什么大问题 可当使用10/100Mb/S的自适应以太网卡,有时会产生一些莫名的问题,建议大家在使用这类网卡时最好设置一个初始的速率,且最好两边速率相同。建议不要使用自适应,速率设置的问题常常会导致网络时通时不通。
另外还有一个全双工和半双工模式选择和是否匹配的问题。全双工模式发送者和接受者可以在连接线路上同时发送数据,发送的方向相反。发送和接受同时进行,需要两对电缆,这种连接被认为是点到点的连接,并且几乎是无冲突的。全双工的建立需要网卡有全双工的能力。半双工模式,在发送者和接受者之间同一时间只能沿同一个方向传输数据,存在着竞争和冲突。两种不同的传输模式在设置时需要注意,一定要相一致,否则由于模式不匹配往往会造成网络不通等问题。
何为心跳线
两台主机A、B ;其中A为工作机,B为备份机。它们之间通过一根心跳线采连接,这也称为“心跳检测”。心跳线主要利用一条RS 233检测链路来完成,采用Ping方式检测验证系统宕机检测的准确性。
安装在主机上的高可用软件通过心跳线来实时监测对方的运行状态。一旦正在工作的主机A 因为各种硬件故障,如电源失效、主要部件失效或者启动盘失效等导致系统发生故障,主机B 可以立即投入工作。这样可以在最大限度上保证网络地正常运行。
US OK--> IBM X3500怎么现实双机热备!_ var IKFromImport=false; | | G("log_in")src=" http://passportbaiducom/login&tpl=ik&u"+escape(locationhref); 知道 | function ask(fn) (function()Feon(window,"resize",A);A();setTimeout(A,100)})(); if(!g_f_js) if (typeof(cf_h)=="function") var IknowPageModify=false;var UnloadConfirm=}};UnloadConfirmclear=function()};UnloadConfirmset();if(!G)return A}}function ctlSubmit(A)}function lockButton(A),3000)}function cReply(A)if(A=="no")}function fixReply(A)function showcpro(A)function ga(B,A)}}elset=hid}if(t==a||p==a||r==a)windowopen(G(a)href,"_blank")}}function ss(A)function cs()var query=(function()Donsubmit=function()documentformsftopappendChild(E(queryisChanged()));return true}}function A()return B!=documentformsftopwordvalue}return})();function statFunc(A)function voteAnswer(A)function formSubmit(B,A),B),A||"deal")}; var url = escape(locationhref); IknowLogParams["page"]="ikqb"; >
已解决
IBM X3500怎么现实双机热备! 悬赏分:0 - 提问时间2008-7-14 13:222台IBM X3500装WIN 2003企业版,SQL 2005
是一个医院的用户。
用户要求,当一个服务器出现问题,另一个服务器马上起来提供服
0条评论