金融云存储灾备之两地三中心

概述

在金融行业 ,特别是银行业,对数据的安全性要求特别高,对业务的连续性也是一样。传统的单数据中心模式和同城双中心的高可用模式也不能满足其需求,于是就诞生了最新的一种超高可用架构 - 两地三中心

两地三中心,两地是指同城、异地,三中心是指生产中心、同城容灾中心、异地容灾中心。充分结合了同城的距离优势和异地的灾备优势,提供了超高可用的服务架构,模式如下图:
multisite arch

友商

提供服务的友商有: 阿里云,腾讯云,百度云

产品功能

  1. 前端负载均衡
  2. 同城双活
  3. 同城数据中心实时同步
  4. 异地数据中心异步复制
  5. VPN专线
  6. 物理机独享

友商实现

金融云方面,友商提供了很多解决方案,一般都采用独立的机房集群,与公有云物理隔离,且满足一行三会金融监管要求。

阿里云

金融云解决方案

为新金融行业提供量身定制的云计算服务,具备低成本、高弹性、高可用、安全合规的特性。帮助金融客户实现从传统IT向云计算的转型,为客户提供完整的“云.端.数”的能力。

链接:https://www.aliyun.com/solution/finance

金融云专属产品

  1. 云服务器ECS - 专属物理集群,高级安全服务,高质量IO保障,高品质客户服务

    • 更高规格SLA保障,可用性为99.95%,可靠性达到99.9999%
    • IO性能保障,采用更可靠宽裕的资源分配机制
    • 对外端口检测,默认不开放互联网访问端口
    • 图形化安全组配置工具,方便用户操作,提升安全级别
  2. 云数据库RDS - 专属物理集群,异地灾备服务,高级备份和回滚服务

    • 更高规格SLA保障,可用性99.97%,可靠性达99.999999%
    • 数据更加安全,支持SQL Server 2008R2和MySQL5.5、5.6,使用强同步模式确保数据安全性
    • 主备双中心和异地灾备,同城双中心,异地单向数据复制功能
    • 高级备份和回滚策略,默认备份时间为30天,支持自定义数据备份时间

银行架构部署图

aliyun bank arch

==数据库== 实现主备数据同步,==数据传输== 实现文件同步

链接: https://www.aliyun.com/solution/finance/bank.html

使用产品

  1. 云服务器
  2. 负载均衡
  3. 云数据库
  4. 对象存储
  5. 云监控
  6. 数据传输

金融云数据库

MySQL 金融版 是一款具有金融级强一致性,高可靠性,能跨机房部署的增强型MySQL数据库集群,是阿里云关系型数据库的升级版本,面向对数据一致性、高可用、高安全性有强烈要求的高端企业用户。
链接:https://www.aliyun.com/product/mysqlenterprise

数据传输服务

数据传输(Data Transmission)是阿里云提供的一种支持RDBMS(关系型数据库)、NoSQL、OLAP等多种数据源之间数据交互的数据服务。它提供了数据迁移、实时数据订阅及数据实时同步等多种数据传输能力。通过数据传输可实现不停服数据迁移、数据异地灾备、跨境数据同步、缓存更新策略等多种业务应用场景,助您构建安全、可扩展、高可用的数据架构。
链接:https://www.aliyun.com/product/dts

数据传输服务的描述里只写了数据库,没写支持文件同步,比较奇怪

腾讯云

金融云解决方案

全系列云计算产品,为您实施高可用的业务容灾架构,随心打造。

链接:https://www.qcloud.com/solution/finance

金融云专属产品

  1. 专用宿主机 - 支持独享宿主机资源,灵活自主规划,避免资源竞争
  2. 金融大数据 - 独享大数据分析平台,提供精准个性化用户分析报告
  3. 金融数据库 - 兼容Mysql,数据强一致、异地自动同步、万级QPS高性能、自动扩容、灵活智能恢复
  4. 金融安全 - 专享攻击防护能力以及协同防御方案,保障金融业务安全

银行架构部署图

qcloud bank arch

链接:https://www.qcloud.com/solution/solutionSubpage/finance-bank

基于云的同城业务双活,两地三中心

在腾讯云上构建的IT应用系统,可以利用腾讯云多地的合规机房和分布式云数据库TDSQL方便的建立同城业务双活、两地三中心的高可用架构应用。
两地三中心灾备部署架构如下图所示。TDSQL云数据库提供金融级的容灾架构支持两地三中心部署结构(异地节点直线距离一般大于100km),数据库的所有组件全部实现跨机房、跨地域部署。
在同城的生产中心和灾备中心之间,TDSQL实现数据实时同步;生产中心与异地灾备中心之间实现异步数据复制。

qcloud bank arch

通过上述架构可以以较低的成本实现同城双活,数据异地自动备份,不依赖IOE架构,以低于商业数据库1/2的成本实现99.99999%的超高可靠性。在实际应用中,以腾讯计费为例,TDSQL云数据库承载的账户量超过100亿,每日请求超10亿,99.95%的请求在5ms以内响应。连续两年多的运营零中断、零数据误差。

可以推断是通过 ==分布式云数据库TDSQL== 实现的灾备

云数据库 MariaDB

云数据库 MariaDB (又名 TDSQL) 是基于 MariaDB 内核高度兼容 MySQL 的关系数据库,同时具有商用数据库的高安全性、可用性和开源数据库的低成本,主要应用于企业级服务场景;您只需付出商用数据库的 1/10 费用,即可拥有商用数据库的安全性、数据一致性和可靠性。

产品特性 介绍
数据强一致性 默认配置强同步复制
更高安全 全面的安全防护
更高可用性 提供高于99.99%的可用性,透明的故障转移
更高性能 基于PCI-E SSD、强大IO性能
与 MySQL 兼容 高度兼容 MySQL5.5、5.6

链接:https://www.qcloud.com/product/tdsql

使用产品

  1. 金融服务器/专用宿主机
  2. 金融数据库
  3. 金融大数据
  4. 负载均衡
  5. 私有网络
  6. 对象存储
  7. 云安全
  8. 云监控

百度云

金融云解决方案

百度金融云解决方案为银行、证券、保险及互联网金融行业提供安全可靠的IT基础设施、大数据分析、人工智能及百度生态支持等整体方案,为金融机构的效率提升及业务创新提供技术支撑

链接:https://cloud.baidu.com/solution/finance.html

金融云专属产品

  1. 专属资源池 - 独享的计算存储资源池
  2. 安全体系
  3. VPN/专线 + VPC
  4. 大数据分析 - 提供完整的大数据分析服务
  5. 人工智能 - 人脸识别/文字识别
  6. 容灾体系 - 同城多可用区及异地云机房,构建两地三中心容灾体系

银行架构部署图

baidu bank arch

可以看出图中画的只是 ==数据库== 的同步

使用产品

  1. 应用服务器
  2. 数据库
  3. 负载均衡
  4. 云安全
  5. 云监控
  6. 大数据分析服务
  7. 人工智能服务

总结

对比国内几家大的公有云厂商的金融云服务方案,可以得出两地三中心的数据灾备是其核心,其业务有可以拆分为:

  1. 同城数据中心数据实时同步
  2. 异地数据中心数据异步复制

同城数据实时同步

同城数据中心之间一般都要求数据实时同步,RPO为0,RTO为秒级。

上文提到的几种数据同步有:

  1. 数据库实时同步

    几家的解决方案里,都提到了分布式数据库,实现同城两个数据中心的数据强一致性,这个可以通过部署分布式数据库的实例分别在两个数据中心,然后配置分布式数据库实时同步即可。

    所以这里的关键为:实现跨数据中心的,实时同步分布式数据库

  2. 主备文件同步

    阿里云架构图里体现了通过数据传输服务实现文件同步,这个不是实时的。

  3. 对象存储同步

    腾讯云架构图里体现了对象存储的数据同步,通过分析,这个也不是实时的。

异地数据异步复制

异地数据中心之间一般只要求数据异步复制即可,RPO为秒或分钟级,RTO为分钟级。

上文提到的几种数据异步复制有:

  1. 数据库异步复制

    这个可以通过配置数据库的主从关系异步复制即可。

  2. 文件异步复制

    阿里云架构图里的文件异步复制是通过数据传输服务实现的。

  3. 对象存储异步复制

    腾讯云架构图里体现了对象存储的异步复制,应该为内部实现。

自研需求

分布式数据库

要求
跨数据中心 + 实时同步

自研
参考阿里云和腾讯云,基于MySQL/MariaDB上,配置开发跨数据中心配置的数据库
难度:★★★★☆

文件同步

要求
同城秒级,异地分钟级延迟

建议
rsync + inotify实现

分析
文件同步的rsync + inotify方案,应用较多,比较成熟,难道不大。
难度:★★☆☆☆

对象存储同步

要求
同城秒级,异地分钟级延迟

自研
Ceph Radosgw 支持跨区域的同步
难度:★★★☆☆

支持原创