设计具有三个或更多实时数据中心的系统,以减少整体成本提高可用性以及实现灾难恢复。适用于任何考虑加入一个灾难恢复(冷备份)数据中心的超高速发展的公司。采用“多个实时数据中心”的配置,拆分你的数据,分散到这些数据中心,把事务负载也分散到这些数据中心。利用多余的容量来应对每年的高峰期。
对你的业务来说,数据中心出现故障是灾难性的打击。通常设计为三个或更多个数据中心,因为这样成本比只有两个数据中心低。在高峰期利用闲置的容量,而不是降低处理事务的速度。
要点:在实施灾难恢复时,利用三个或更多个实时数据中心的设计,可以降低灾难恢复的成本。在必要时,可以利用闲置容量满足高峰期的需求。
对于超高速发展的公司来说,数据中心的扩展已经成了最大的痛点之一。这是因为,计划和建造数据中心的时间较长,而且它也是在高速发展阶段我们最不愿意考虑的事情之一。但有时,最不愿意考虑的事情是对公司危害最大的事情。这个原则简单地介绍了“如何”以及“为什么要挤分数据中心以应对高速的发展。
首先,让我们看一些基础。为了实现故障隔离(有助于带来高可用性)和事务的增长,我们想分别用原则8和原则9介绍的Y轴和Z轴扩展方法对数据进行分片。为了实现高可用性和事务的增长,我们想用原则7介绍的X轴扩展方法复制(或克隆)数据和服务。最后,我们假设0,你可能有一个无状态系统或者能够根据自己的有状态需求进行设计,从而利用多个数据中心。正是数据和服务以及无状态系统的分片、复制、克隆形成了分区,从而使得我们能够把数据中心分布到多个不同地点的站点中去。
如果我们沿z轴切分数据(参阅原则9),那么可以把数据放在离请求该数据的用户较近的数据中心。如果要在切分数据时维持多租户性,可以选择离终端用户近的数据中心。如果“原子”或“粒度”元素是一个公司,那么可以把数据中心放在所服务的公司附近(如果是家大型公司,至少要选择距离该公司最大的办公区较近的位置)。
首先,让我们从三个数据中心入手,这时每个数据中心存放约33%的数据。我们将这三个数据集称之为为A数据集、B数据集和C数据集。每个数据中心的数据集都进行了备份并平分为两部分,而这两部分的副本则分别存在其他两个数据中心。假设采用Z轴拆分和X轴复制的方法复制数据,那么A数据中心的客户的50%的数据将存放在B数据中心,其另外50%的数据存放在C数据中心。任何一个数据中心出现故障,那么该数据中心50%的数据和相关事务都会被转移到其他两个数据中心。如果A数据中心出现故障,那么它509%的数据和相关事务会被转移到B数据中心,另外50%将被转移到C数据中心。如图3-2所示。结果是所有站点总计存储了20096的数据,但是每个站点只保存数据总量的66%,因为每个站点存放了100%的主数据集副本(占该站点数据总量的3%)和其他两个站点的50%的数据副本(总量占该站点数据量的33%,每个数据副本占数据量的165%)。
要了解这种配置为什么比两个数据中心好,需要进行一些计算。假设你至少需要两个数据中心,使业务能够在地理位置上孤立的灾难事件中存活。如果我们有两个数据中心,分别标记为A和B,那么你可能会用A数据中心进行1009%的操作,让B数据中心作为热备份。采用热冷(或积极被动)配置,那么两个数据中心都要具备10096的计算及网络资源,这包括10096的Web和应用服务器、10096的数据库服务器和10096的网络设备。两个数据中心的电力需求相似,网络连接相似。为了应对高峰期激增的需求,每个数据中心可能需要稍大于100%的容量才行。假设每个数据中心需要110%的容量。无论何时为一个数据中心增加服务器,都要为另一个数据中心购买等量的服务器。也许为了安全复制数据,你可能会采用专用线路连接两个数据中心。同时运行两个实时数据中心,那么在发生灾难时,在把所有处理转移到备用数据中心之前,只有50%6的事务会失败,但这种方法在预算和财务方面却没有什么优势。
但是,采用三个实时数据中心,成本就会下降。这是因为,在每个站点中,对于所有的非数据库系统,每个地方只需要150%的容量即可处理故障站点100%的交易。对于数据库,虽然仍然需要200%6的存储,但对于任何方法该成本都是必须的。电力和设备消耗也大约为单个站点的150%,不过我们需要的人员显然要多一些,可能操作三个数据中心需要的人员要比操作一个数据中心的人员多1.5倍。唯一增加的是网络设备,因为三个数据中心比两个数据中心需要的网络连接多两条。
采用这种配置的一大好处是,能够利用闲置容量创建测试(如负载测试和性能测试)区域,还能利用这些闲置资源应对激增的需求。这种激增的需求随时可能出现。我们可能要处理一些计划外的压力,也可能关系很好的个人或公司客户得到了难以置信的病毒式的发展。那么可以先用为灾难恢复准备的容量处理交易,与此同时再采购新的设备。
我们提到过,运转三个或更多个数据中心也有缺点。虽然我们确信三个站点都在实时工作,但是运转这三个站点还需要额外的一些复杂工作。不过即使运转两个采用冷热配置的数据中心,所需的复杂工作也不比前者需要的少。同步两个站点是很难的,尤其是运维人员几乎无法证明两个站点中的某一个是否真能在必要时运行。不间断地运转三个数据中心虽然会更难一些,但也不是非常难。
虽然其他成本降低了,但是网络传输成本的增长也非常快。在站点的全面连通图中,每个新站点N+1都需要N条额外的网络连接,其中N是之前站点的数目。网络连接成本控制得好的公司,通常都会跟网络传输供应商谈一个批量折扣,并且还可以脱离双方的角色来充当第三方网络传输供应商,从而减少成本。
最后,我们预见到了多个实时网站制作站点的模型会造成人员及其附加的成本增加。如果数据中心很大,我们会把员工分配到数据中心附近,而不是远程工作。即使没有现场工作人员,也需要不时地到现场去,与第二供应商一起工作,等等。附注栏“多个实时站点注意事项总结了实施多个实时站点的好处、缺点以及架构方面需要考虑的要素。
>>> 查看《横向扩展数据中心》更多相关资讯 <<<
本文地址:http://tcgq.cn/news/html/3461.html