版权声明:本文由王煜奕原创文章,转载请注明出处: 
文章原文链接: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

AWS事故总结,几招教你规避风险的更多相关文章

  1. 客户Oracle数据库在插入数据的时候报超出最大长度的错误(规避风险)

    背景: 项目使用oracle数据,在开发环境测试一些正常.项目部署到客户的服务器上后,系统在添加数据的时候报错.输出错误信息,发现是“超出最大长度”的异常. 但是按照数据库的设计,添加的数据应该在允许 ...

  2. PPT设计宝典!十招教你做出拿得出手的PPT

    据说上班用 excel 的比 word 的工资高,用 ppt 的比用 excel 的工资高.无论如何,在职场演讲汇报中,PPT 扮演着至关重要的角色. 在本文我们将用 10 个超级技巧来解决糟糕的演示 ...

  3. PPT设计宝典!十招教你做出拿手的PPT

    据说上班用 excel 的比 word 的工资高,用 ppt 的比用 excel 的工资高.无论如何,在职场演讲汇报中,PPT 扮演着至关重要的角色.  在本文我们将用 10 个超级技巧来解决糟糕的演 ...

  4. Other | 十招教你找到海量PPT模板

    转载自:https://www.douban.com/note/330962457/ 问:PPT模板是什么含义? 答: 先假定你们要的是这种网上到处泛滥成灾的主题PPT吧,下面请耐心看到最后,秋叶老师 ...

  5. 忘记MySQL密码怎么办?一招教你搞定!

    在安装完 MySQL 或者是在使用 MySQL 时,最尴尬的就是忘记密码了,墨菲定律也告诉我们,如果一件事有可能出错,那么它一定会出错.那如果我们不小心忘记了 MySQL 的密码,该如何处理呢?别着急 ...

  6. 11招教你做好 ERP 系统维护

    ERP 维护的具体工作内容主要包括以下几个方面: 例行和突发事件的处理 以管理和技术的手段,维护和发展 ERP 运行环境,如平衡技术先进性/实用风险.目标/成本而进行的IT基础结构(服务器.网络.PC ...

  7. 项目太多工作环境互相干扰?virtualenv 一招教你轻松解决。

    写在之前 在上一篇文章 安装的 Python 版本太多互相干扰?以后再也不用担心这个问题了. 中我给大家介绍了一个 Python 版本的管理工具「pyenv」,可以很容易的安装不同的 Python 版 ...

  8. 一招教你如何修复MySQL slave中继日志损坏问题

    [摘要]MySQL的Crash safe slave是指slave crash后,把slave重新拉起来可以继续从Master进行复制,不会出现复制错误也不会出现数据不一致. PS:华为云数据库特惠专 ...

  9. 一招教你轻松使用数据可视化BI软件创建旅游消费数据可视化大屏

    灯果数据可视化BI软件是新一代人工智能数据可视化大屏软件,内置丰富的大屏模板,可视化编辑操作,无需任何经验就可以创建属于你自己的大屏.大家可以在他们的官网下载软件.   本文以旅游消费数据可视化大屏为 ...

随机推荐

  1. SqlHelper分享

    using Model; using System; using System.Collections.Generic; using System.Configuration; using Syste ...

  2. Spring mvc前台后台传值

    前台向后台传值: ①同名参数传递:form表单中提交input,Controller方法入参中,直接以同名参数获取 ②不同名参数传递:from表单提交input,Controller方法入参中需要使用 ...

  3. 用css实现自定义虚线边框

    开发产品功能的时候ui往往会给出虚线边框的效果图,于是乎,我们往往第一时间想到的是用css里的border,可是border里一般就提供两种效果,dashed或者dotted,ui这时就不满意了,说虚 ...

  4. htop使用详解

    一.Htop的使用简介 大家可能对top监控软件比较熟悉,今天我为大家介绍另外一个监控软件Htop,姑且称之为top的增强版,相比top其有着很多自身的优势.如下: 两者相比起来,top比较繁琐 默认 ...

  5. Android 获取Activity当前view

    View cv = getWindow().getDecorView(); 来自为知笔记(Wiz)

  6. JSONObject、JSONArray、Map、JavaBean的相互转换

    1,JSONObject json对象,就是一个键对应一个值,使用的是大括号{ },如:{key:value} 2,JSONArray json数组,使用中括号[ ],只不过数组里面的项也是json键 ...

  7. MySQL技术内幕读书笔记(八)——事务

    事务的实现 ​ 事务隔离性由锁来实现.原子性.一致性.持久性通过数据库的redo log和undo log来完成.redo log称为重做日志,用来保证事务的原子性和持久性.undo log用来保证事 ...

  8. redis应用-sortedset实现排行榜(转载)

    package site.zy9.redisApp.test; import java.util.HashMap; import java.util.List; import java.util.Ma ...

  9. 详解Docker的网络模式

    我们在使用docker run创建Docker容器时,可以用--net选项指定容器的网络模式,Docker有以下4种网络模式: host模式:使用--net=host指定container模式:使用- ...

  10. Python3 字符串前面加u,r,b的含义

    u/U:表示unicode字符串 不是仅仅是针对中文, 可以针对任何的字符串,代表是对字符串进行unicode编码. 一般英文字符在使用各种编码下, 基本都可以正常解析, 所以一般不带u:但是中文, ...