异地双活的四个误区 - 旁观者 - 博客园

标签: | 发表时间:2019-03-09 06:56 | 作者:
出处:http://www.cnblogs.com

郑昀(老兵笔记) 20190305

阿里云华北二机房2019年3月3日凌晨服务中断长达三小时,我在微博上喊出了:工程师赶紧起床,切多活流量啊。


那么切多活有什么常见误区呢?

A,灾备(主备)还是双活?
多年前,大家往往做成了灾备机房,一主一备。结果是,真正灾难发生的时候,最高领导人下不了决心切机房,因为无法预料切换后果(灾难总是不期而遇,切过去就可能切不回来了)。
所以一定是多个数据中心同时运行着同样的应用,拥有同样的数据,任何一个客户的交易可以在分钟级全部路由到另一个中心并对外提供服务,不至于说灾难来临时才发现集群无法工作。

B,双活测试模拟正常流量切换就够了吗?
不是模拟在正常情况下的多活切换,那怎么测怎么有。
而是模拟灾难发生(突然发生)的时候,另外一个机房物理消失了,你该如何切换。
我们过去犯的两个错误是:
-用代码逻辑限制双活机房之间的数据库同步不能延时超过N分钟,超过了就阻止切换;
-限制双活机房的 otter 服务访问超时时间不得超过N分钟,超过了就阻止切换。
问题就在于,真正灾难发生的时候,机房已物理不可访问了,这时候就是要立刻地、全部地切换流量,人下达的命令就是最终裁决。拼着损失一分钟的交易和脏数据,也要把交易切到另一个机房。

C,所有业务都双活吗?
基于互联网公司常用的基本可用性保障原则,只是保障核心业务双活。
怎么定义核心业务?即不能容忍中断的服务。
用户注册,商户进件,这些都属于能容忍临时性中断的服务。
非核心业务应用都被标记为非多活业务,非多活数据库与多活数据库要严格区分开来。

D,切机房的时候直接切吗?
双活意味着两个机房都不需要维护一个能承载所有流量的集群,否则太费钱。
所以模拟切机房流量的时候,一定要测试与核心业务有关的所有应用自动扩容,扩容之后再切换流量。测试扩容的效率,分钟级扩容完毕。
所以你的应用最好都是部署在Docker容器集群上的,这样才能做到扩容分钟级。
而且大家一般是混合云部署,所以在不同的云平台上,你的应用部署底层基础最好都一模一样,方便你扩容和切换。

-EOF-
欢迎订阅老兵笔记:

 

相关 [双活 旁观者 博客] 推荐:

异地双活的四个误区 - 旁观者 - 博客园

- -
郑昀(老兵笔记) 20190305. 阿里云华北二机房2019年3月3日凌晨服务中断长达三小时,我在微博上喊出了:工程师赶紧起床,切多活流量啊. 多年前,大家往往做成了灾备机房,一主一备. 结果是,真正灾难发生的时候,最高领导人下不了决心切机房,因为无法预料切换后果(灾难总是不期而遇,切过去就可能切不回来了).

我当初是怎么管理技术团队的 - 旁观者 - 博客园

- -
关键词:管理技术人才、管理技术团队、技术传承、对题集/错题集、研发哲学. 窝窝技术团队大约两三百人左右,主要是五大块:研发、数据、无线、质量、运维. 2012年年初,一个大项目结束后,我召开了飞行研讨会,经过这次深刻反思,形成了几个影响深远的管理观点:. 管理者要向下提供工具,以形成干部的简单、易记忆、易执行的工作套路.

云纵持续交付环境管理进化历程 - 旁观者 - 博客园

- -
破天(李进庄)、冬草(宋玥辉) 创作于2018-9-10. 一个公司的运维能力强弱和你线上环境敲命令是有关的,. 你越是喜欢上线敲命令,你的运维能力就越弱,. 越是通过自动化来处理问题,你的运维能力就越强. 持续集成(Continuous Integration, CI)是一种软件开发实践,即团队开发成员经常集成他们的工作,通过每个成员每天至少集成一次,也就意味着每天可能会发生多次集成.

那些年我们一起犯过的错 - 旁观者 - 博客园

- -
阶段性小结: 错误是我们的财富. 对于事故处理,我们遵从航天二十字诀: 定位准确、机理清楚、可以复现、措施有效、举一反三. “丰田生产体系”与航空航天的这个原则是相通的,如果对待错误的态度是开诚布公的,那么整套系统就能从中学习,能取得进步. 我们坚持每错必查、错了又错就整改、每错必写,用身体力行告诉每一个新员工直面错误、公开技术细节、分享给所有人,长此以往,每一次事故都会变为我们的财富.

呵旁观者文 (梁启超)

- 云透 - 非常日报
天下最可厌、可憎、可鄙之人,莫过于旁观者. 旁观者,如立于东岸,观西岸之火灾,而望其红光以为乐;如立于此船,观彼船之沈溺,而睹其凫浴以为欢. 若是者,谓之阴险也不可,谓之狠毒也不可,此种人无以名之,名之曰无血性. 嗟乎,血性者,人类之所以生,世界之所以立也;无血性,则是无人类、无世界也. 故旁观者,人类之蟊贼,世界之仇敌也.

异地多活(异地双活)实践经验 - CSDN博客

- -
异地多活(异地双活)是最近业界讨论比较多的话题,特别是前一阵子支付宝机房光纤故障和携程网数据库丢失之后,更加唤起了技术人员们对异地容灾的考虑. 而异地多活比异地容灾更高一级,因为异地容灾仅仅是一个冷备的概念,而异地多活却是指有两个或者多个可以同时对外服务的节点,任意一个点挂了,也可以迅速切换到其他节点对外服务,节点之间的数据做到准实时同步.

配置双活网络切换技术 - ericnie - 博客园

- -
因配置多数据中心的时候遇到如何进行生产以及备份的切换,阅读此文受益匪浅,转载保留. 应用级灾备要求提供冗余的网络线路和设备. 正常情况下,客户端通过生产中心的业务网络访问生产中心的应用服务器;在发生灾难时,通过网络切换,客户端能够访问到灾备中心的备用服务器. 目前,网络切换技术主要有以下三种:. 生产中心和灾备中心主备应用服务器的IP地址空间相同,客户端通过唯一的IP地址访问应用服务器.

oracle ogg goldengate 双活复制避免循环复制参数_ITPUB博客

- -
我简单的简绍一下goldengate的一些实用的、常用的参数. 一、双向复制避免数据循环复制的参数. 首先说明一下循环复制,官网上的描述:. 意译:主端对数据的修改,被应用到了备端. 但是备端在执行这个主端传递过来的数据改变时,又被备端的extract 进程.       扑获到,并且又反给主端. 然后主端又给备端,这样形成了循环复制,会一直循环下去.

技术总监是干什么的? - 旁观者

- - 博客园_旁观者-郑昀
郑昀 创建于2013/12/16. 最后更新于2014/2/24. 本文遵循 Creative Commons 姓名标示-非商业性使用-禁止演绎 许可协议. 转载时请注明“转载自知乎”或者给出转载文章的 原始链接. 庄表伟曾撰文 谈及研发管理 的三个提升,由于研发、质量保障、运维三者连接紧密、不分家,所以下面郑昀将其扩展了一下:要『从一个整体来考虑企业的研发管理,应该注重建立一个良性的循环:.

MySQL 双活同步复制的四种方案_咸鱼的梦想专栏-CSDN博客_mysql双机同步复制

- -
对于数据实时同步,其核心是需要基于日志来实现,是可以实现准实时的数据同步,基于日志实现不会要求数据库本身在设计和实现中带来任何额外的约束. 基于MySQL原生复制主主同步方案  . 这是常见的方案,一般来说,中小型规模的时候,采用这种架构是最省事的. 两个节点可以采用简单的双主模式,并且使用专线连接,在master_A节点发生故障后,应用连接快速切换到master_B节点,反之也亦然.