文档章节

AWS事故总结,几招教你规避风险

偶素浅小浅
 偶素浅小浅
发布于 2017/03/07 14:33
字数 1514
阅读 3
收藏 0

版权声明:本文由王煜奕 原创文章,转载请注明出处: 
文章原文链接:https://www.qcloud.com/community/article/90687001488360802

来源:腾云阁 https://www.qcloud.com/community

 

美国时间 2 月 28 日,亚马逊AWS弗吉尼亚州数据中心出现单点存储区域故障,使得其云存储服务 S3 出现了较高的错误率,造成长达2小时的服务不可用。Netflix、Airbnb 、Slack、Spotify、雅虎网络邮箱等互联网服务受到明显影响。

亚马逊的本次『失误』也在警示业界所有云计算厂商,在云服务日益发展的今天,云存储的数据可靠性和服务可用性应该如何保障。当企业应对人为误操作、软件错误、病毒入侵等“软”性灾害和硬件故障、自然灾害等“硬”性灾害,应该如何实现稳定的容灾?如何实现高效的容灾?如何实现低成本的容灾?

腾讯云对象存储服务基于多年海量数据存储的经验,针对以上一系列问题,提供五个维度的解决方案:跨地域容灾,机房级别容灾,集群级别容灾,服务器级别容灾和磁盘级别容灾。

1.用户如何应对云厂商单点存储区域故障?

跨地域级别容灾:跨地域自动备份

目前腾讯云已经在华北大区,华南大区,华东大区,西南大区和东南亚大区提供了数据存储服务,并且提供『主备数据中心』的解决方案。


用户可以选择将主站的数据服务保留在某一区域,同时在上千公里之外保留备份数据,腾讯云将代替客户将主数据中心的数据在短时间内自动搬迁到备份数据中心,当发生运营商网络大规模瘫痪或者大面积灾难来临,用户可以将服务指向备份数据中心存储区域,应对异常问题。

2.作为云厂商,腾讯云如何避免单点故障问题?

机房级别容灾:可用区物理隔离

腾讯云目前在每个存储大区配备了多个可用区,每个可用区之内配备多个机房。每个可用区保证一定物理距离,当发生爆炸,洪水等恶劣的物理情况或者小规模运营商网络瘫痪,腾讯云将自动调度数据的写入和读取,暂停灾难受影响区域的机房使用,保留存量数据不改变。在灾难过程中新的数据写入和读取,将迁移到同城的其他机房或者临近城市的机房,整体存储大区的服务不中断。同时腾讯云拥有跨机房跨可用区的数据冗余备份能力。

集群级别容灾:不同集群互为主备

腾讯云在每一个机房中会配备多个集群,每个集群可以提供完整服务,用户的数据块被分布在不同集群的不同服务器中。如果某个特定集群失去服务能力,修复方式如同服务器异常。该集群整体暂停数据的写入和读取,保留异常现场,将数据写入迁移到同机房的其他集群中,集群内部开始自动修复逻辑模块或者存储模块。在修复过程中,用户可以从其他健康集群中持续获取数据,服务持续可用。

服务器级别容灾:条带化打散数据

第一、腾讯云利用『条带化』技术,将多备份的用户数据分解成多个数据块均匀放置在不同服务器之间。第二,集群的中央模块会定时巡检每个服务器的每块磁盘的健康程度。第三,一旦检测出单台服务器出现异常,会停止对整个集群的数据写入,将数据写入迁移到同机房的其他集群中,然后集群内部针对异常服务器启动坏盘修复,如果修复失败,7*24值班的运维人员将人工介入,更换坏盘。在修复过程中,用户可以从异常集群中健康的服务器中持续获取数据,服务持续可用。

磁盘级别容灾:多备份数据冗余

第一,对于保存在腾讯云存储服务中的每个数据块,腾讯云都实现了『RAID备份』,即一份数据会存在多个副本或者校验码。第二,腾讯云利用底层磁盘的接口将其每个磁盘且分为多个扇区。采取『心跳响应』管理的模式统一管理所有扇区。服务器的中央模块会如同如『巡逻员』一般,周期性的巡检每个扇区的状态,保证扇区的健康。第三、一旦检测出部分扇区发生异常,会对停止针对该扇区的写入和读取,然后利用冗余数据对原有的扇区进行修复。在这个修复过程中用户仍然可以读取冗余数据,服务持续可用。

数据持久和服务可用是云服务厂商的生命线,只有完备的预案才能获得用户信赖。腾讯云对象存储服务向客户承诺99.999999999%的数据可靠性和99.95%的服务可用性。基于这五个维度的数据容灾解决方案,腾讯云数据存储已经向GIF快手,芒果TV,CNTV等多家厂商提供可靠稳定的服务。

此外腾讯云即将推出离线存储服务,让用户以领先行业的极低成本享受到灾备数据的保护。

更多产品详情,请登陆腾讯云官网www.qcloud.com/product/cos

本文转载自:

偶素浅小浅
粉丝 8
博文 202
码字总数 0
作品 0
信阳
私信 提问
2016年4月6日第十课_课后习题解答

第18章、风险管理 1、风险管理包括哪六个过程?(记) 答:1)、风险管理规划; 2)、风险识别; 3)、定性风险分析; 4)、定量风险分析; 5)、应对计划编制; 6)、风险监控; 2、什么是应...

中国苦行僧
2016/04/09
0
0
2016年4月6日作业

第十八章、风险管理 1、风险管理包括哪六个过程?(记) 1) 风险管理规划。 2) 风险识别。 3) 定性风险分析。 4) 定量风险分析。 5) 应对计划编制。 6) 风险监管。 2、什么是应急计划?请举例...

afanny
2016/04/09
0
0
Facebook程序员是如何背锅的?

前言:本文来自微信公众号“MrPeak杂货铺”,作者是一位在硅谷Facebook工作的程序员,他的文章描述了硅谷的生活,文化的差异,很有意思,推荐给大家。 上半年绩效考核终于接近尾声,我也有机...

程序师
2018/09/14
0
0
程序员应不应该背锅? - 知乎

上半年绩效考核终于接近尾声,我也有机会静下心来回顾过去半年的经历。 来 FB 工作虽然已半年多,但我骨子里依然是从毕业起就耳濡目染的那一套价值体系,任何在 FB 所经历的公司文化或者工程...

MrPeak杂货铺
今天
0
0
科技安全没有保障,无人驾驶汽车怎能开上路?

科技是第一生产力,但科技安全不容忽视。 今年的 315 晚会上,智能硬件安全问题成为了全场焦点。包括大疆无人机在内的 6 类智能硬件均被依次拿上台进行“批斗”。 在晚会现场,节目组做了一个...

行者武松
2018/03/06
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Eureka应用注册与集群数据同步源码解析

在之前的EurekaClient自动装配及启动流程解析一文中我们提到过,在构造DiscoveryClient类时,会把自身注册到服务端,本文就来分析一下这个注册流程 客户端发起注册 boolean register() t...

Java学习录
11分钟前
3
0
Java描述设计模式(15):责任链模式

本文源码:GitHub·点这里 || GitEE·点这里 一、生活场景描述 1、请假审批流程 公司常见的请假审批流程:请假天数 当 day<=3 天,项目经理审批当 3<day<=5 天,部门经理审批当 day>5 天...

知了一笑
22分钟前
3
0
总结:数组与链表

1、内存申请:数组在内存上是连续的空间;链表,内存地址上可以是不连续的。 2、查询速度:数组可以随机访问,链表必须顺序访问,即从首个元素开始遍历,逐个查找,所以数组查询很快。 3、写入...

浮躁的码农
30分钟前
3
0
HashMap源码分析

read

V丶zxw
48分钟前
5
0
Python字符串或JSON字符串转字典dict、列表list

有3种方法 1、使用ast模块 >>> import ast>>> s = '["test",1]'>>> ast.literal_eval(s)['test',1]>>> s = '{"test":1}'>>> ast.literal_eval(s){'test': 1} 2、eval函数,这个......

编程老陆
今天
7
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部