V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
Keyes
V2EX  ›  Python

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

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

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

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

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

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

    我这边设备是没有用这些集群管理套件的,比如REDHAT那个和VCS,我只是用HB+DRBD做一个HA基本底层出来,然后在我应用层去管理这两个东西
    halfbloodrock
        6
    halfbloodrock  
       2013-11-14 14:20:09 +08:00   ❤️ 1
    @Keyes 只用heartbeat的话,注意下fence功能,好像heartbeat不包含fence功能。。。可能需要你自己实现了。
    laneovcc
        7
    laneovcc  
       2013-11-16 20:58:52 +08:00   ❤️ 1
    请研究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
        8
    panzhc  
       2013-11-17 10:18:01 +08:00
    HB+DRBD+GFS2,楼主真的都试过这三样软件吗?
    chengxuan
        9
    chengxuan  
       2014-02-09 02:49:09 +08:00
    学习啦。。。好贴子!!
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1700 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 16:47 · PVG 00:47 · LAX 09:47 · JFK 12:47
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.