有做过运维或熟悉HA的同学在吗?请教几个关于HA双机热备的问题

2013-11-14 10:42:52 +08:00
 Keyes
我们现在的项目需要实现HA双机热备功能,因为我基本上没碰过这些东西,现在实现上是有解决方案(HB+DRBD+GFS2),心跳、数据同步、虚拟IP迁移和我们业务应用的关联都已经做好。但是因为不清楚HA在环境中的具体工作规则,使用方法上一直定不下来,整理了几个使用上的问题向各位请教:

1、配置双机热备时,是先配置主机还是先配置备机?(或先激活主机还是先激活备机?)
2、双机的各种HA相关参数,是在主机上配置好同步到备机,还是两边都要手动填一样的参数才能激活HA?
3、双机都正常,拔掉HA线会产生什么后果?(如两台机器会相互争夺虚拟IP吗?)
4、双机都正常,备机可以使用吗?(使用包括:提供完整的业务服务)
5、备机上有提供强制从HA组中脱离的功能吗?
6、主机宕机,备机工作,然后宕机的主机拿回去返厂,厂商换了个新的设备回来,要怎样操作才能重新挂载回HA组中?

大概就是这些疑惑,虽然已经想到部分问题的解决方法,但是依然不能确定(防止出个奇葩操作方法搞得客户郁闷),如果各位有相关的经验,真心浪费几分钟指点楼主一番,先谢过了:)
9234 次点击
所在节点    Python
9 条回复
lixm
2013-11-14 10:58:35 +08:00
1、一般情况下,主备机的配置不分先后,除非你在生产环境直接配置,也不打算测试
2、开源软件实现的话,一般是没有同步功能的,而且主备机的配置会有微小的区别
3、心跳线断开会造成脑裂,也就是主备机都争抢VIP,这个是非常严重的后果
4、要看具体的业务场景,部分业务场景开源做到双A,例如负载均衡器
5、不太清楚你所说的脱离是指什么
6、恢复原主机的配置就可以了
Keyes
2013-11-14 11:08:02 +08:00
@lixm 非常感谢,追问一下哈
1、就是说两边随意顺序配置,配好把线连上?还是说先连好HA线,再随意顺序配置两台机器?
2、这个功能是我自己实现哈,所有HA相关的东西我都写了一个HA服务管理器来管住他们
3、明白了
4、比如说防火墙是什么样的?
5、就是直接把备机拿走了,备机的话直接拔线再上去关HA功能就行了吧?
6、你碰到的设备没有自动恢复配置和数据的功能吗?

再追问一个:
追1:设备的牌子能说下么……
halfbloodrock
2013-11-14 12:05:57 +08:00
1、配置双机热备时,是先配置主机还是先配置备机?(或先激活主机还是先激活备机?)

双机HA的配置是完全一样的。所有的HA软件都是这样,所以没有先后。


2、双机的各种HA相关参数,是在主机上配置好同步到备机,还是两边都要手动填一样的参数才能激活HA?

看第一个



3、双机都正常,拔掉HA线会产生什么后果?(如两台机器会相互争夺虚拟IP吗?)

双机HA是需要一个fence设备保证不出现脑裂问题,也就是主备互抢。不管什么情况,心跳断掉之后,active节点会被fence设备强制下线,备机成为active。

但是注意!不同的HA软件对“双节点HA”处理方式有区别。Redhat的HA必须要启用仲裁磁盘,因为他默认的仲裁机制有点不够合理。。。而VCS则不一定需要仲裁磁盘。


4、双机都正常,备机可以使用吗?(使用包括:提供完整的业务服务)

对于同一个应用,备机可用叫做Load balance。

但是可以在备机上提供其他应用。

我的工作中,经常会在一个4节点上的HA集群组里每个节点跑一个oracle,每个节点实例不一样,提高节点的利用率。



5、备机上有提供强制从HA组中脱离的功能吗?

不明白意思。

一般来说,如果需要某个节点脱离HA,VCS里可以做freeze操作,所有节点就脱离了集群,但是应用本身依然正常,此时不会产生任何的热迁移操作。

Redhat HA里有没有我忘记了。。。。。


6、主机宕机,备机工作,然后宕机的主机拿回去返厂,厂商换了个新的设备回来,要怎样操作才能重新挂载回HA组中?

安装HA软件,同步配置文件,配置好共享存储。一两句说不清,但是大致如此。
princeofwales
2013-11-14 12:12:52 +08:00
个人看法:
1、主备是相对的,任意一台当主都可以。一般习惯上认为第一台是主的,这只是主观意识
2、HA参数,是在HA软件里配置的,配置之前需要先连接主备机,两机共用一个参数配置,只需要填一次
3、拔HA线,你指的是心跳线?心跳断了,该是仲裁盘出场了,谁先抢到谁做主。双节点的Oracle RAC是个例外,根据master node判断
4、单纯的HA,热备机是不能支持业务的。至于主备双活,我们一般不称为HA,比如ORACLE ADG
5、备机可以支持关机的,热备就成为冷备了。若需要脱离,需要从HA软件里配置,删除备机节点即可
6、这种场景相当于将一台新机加入HA,对于不能停机的业务比较麻烦。本人建议,新机首先不要接公共存储,但路径要存在,比如用本地盘暂时代替,再按原路径装好软件,用存储代替那个临时的本地盘,然后再配置HA软件。高风险操作,注意配置新机的环境时,不要把存储上的数据覆盖掉了,不然……
Keyes
2013-11-14 13:44:49 +08:00
@halfbloodrock
@princeofwales

感谢耐心解释,楼上几位对我理解HA起到了很大的作用,让我确认了不少东西(包括之前摸黑战争自己瞎猜的一些错误想法)

我这边设备是没有用这些集群管理套件的,比如REDHAT那个和VCS,我只是用HB+DRBD做一个HA基本底层出来,然后在我应用层去管理这两个东西
halfbloodrock
2013-11-14 14:20:09 +08:00
@Keyes 只用heartbeat的话,注意下fence功能,好像heartbeat不包含fence功能。。。可能需要你自己实现了。
laneovcc
2013-11-16 20:58:52 +08:00
请研究http://www.linux-ha.org/wiki/Pacemaker
官网 http://clusterlabs.org/

双机一般都不能“热备”, 双机是给人工切换用的。 请使用3+以上机器

1、配置双机热备时,是先配置主机还是先配置备机?(或先激活主机还是先激活备机?)
其实不存在,只有哪台决策的问题, 这个默认会协调的

2、双机的各种HA相关参数,是在主机上配置好同步到备机,还是两边都要手动填一样的参数才能激活HA?
正常一点的HA软件都只会让你用一套配置

3、双机都正常,拔掉HA线会产生什么后果?(如两台机器会相互争夺虚拟IP吗?)
要看HA软件, 一般要设置一下,Pacemaker默认是当前Cluster的机器小于等于总机器的50%,该Cluster都不会提供服务

4、双机都正常,备机可以使用吗?(使用包括:提供完整的业务服务)
看你业务

5、备机上有提供强制从HA组中脱离的功能吗?
参加第3条

6、主机宕机,备机工作,然后宕机的主机拿回去返厂,厂商换了个新的设备回来,要怎样操作才能重新挂载回HA组中?
添加进Cluster就是了
panzhc
2013-11-17 10:18:01 +08:00
HB+DRBD+GFS2,楼主真的都试过这三样软件吗?
chengxuan
2014-02-09 02:49:09 +08:00
学习啦。。。好贴子!!

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/89216

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX