多云与混合云场景下的数据同步方案之Kafka

多云与混合云场景下的数据同步方案之Kafka

作者: IT明哥 2021-10-11 07:01:33

云计算

混合云

Kafka 现阶段,企业信息系统部署架构 (DA: Deploy architecture)的一大变化是,越来越多的企业在不断将越来越多的应用部署到云上,即业务系统上云的趋势愈演愈烈。

站在用户的角度思考问题,与客户深入沟通,找到武定网站设计与武定网站推广的解决方案,凭借多年的经验,让设计与互联网技术结合,创造个性化、用户体验好的作品,建站类型包括:成都网站设计、成都网站制作、外贸网站建设、企业官网、英文网站、手机端网站、网站推广、域名注册、虚拟空间、企业邮箱。业务覆盖武定地区。

[[427949]]

本文转载自微信公众号「明哥的IT随笔」,作者IT明哥。转载本文请联系明哥的IT随笔公众号。

1 企业业务系统部署架构的变化趋势-多云与混合云

现阶段,企业信息系统部署架构 (DA: Deploy architecture)的一大变化是,越来越多的企业在不断将越来越多的应用部署到云上,即业务系统上云的趋势愈演愈烈。

不过企业业务系统上云不是一蹴而就的,也不是单向的一帆风顺的。 这里涉及到新开发的业务系统的主动上云(由于是采用云原生技术栈新开发的业务系统,其上云相对顺畅些),也包括历史遗留系统的迁移上云(单个遗留系统的改造迁移和上云,视乎复杂程度,往往需要一年多甚至更长的时间周期),有时也会有从云端部署回退到私有云或数据中心的情形(上云后不顺畅不适应,也有会退的场景)。

企业所有业务系统的上云,其最终目标,出于各种考量(有业务系统高可用的考量,也有不被云厂商绑定即 vendor-lockin的考量,也有生态系统合作伙伴即经济因素等多种考量),部署架构不会是单一的某个公有云,而是多个公有云和私有云甚至本地数据中心的混合部署形态。

从技术视角看大数据行业的发展趋势

2 多云与混合云部署架构下的难题-数据同步

如上文所说,企业的多个业务系统,长期来看,会是多云与混合云加本地数据中心的混合部署架构;同时由于多个业务系统之间并不是相互隔离的,而是需要协作交互数据的(当然一般不会是直接的 rpc/http 调用),这就涉及到一个难题:多云与混合云部署架构下的数据同步。

如果企业没有公司层面的统一的规划,由各个部门各个项目独自设计与实施的部署方案,其架构会如下图所示:

multi and hybrid cloud deploy architecture

3 多云与混合云部署架构下的数据同步方案 - KAFKA

熟悉 KAFKA 的小伙伴都知道,KAFKA 是 LinkedIn 在 201 0左右为解决企业内部繁杂多向的数据交互而推出的数据总线/中央数据管道解决方案,它简化了 LinkedIn 的数据交互架构:

kafka-in-LinkedIn

在 LinkedIn 将 KAFKA 开源之后,由于其高吞吐低延迟的特性(顺序写和顺序读,ZeroCopy, 端到端的压缩,基于 partition的横向扩展),以及不断进化获得的其它特性(基于多副本的高可用容错机制,EOS 有且仅有一次的语义,生产者幂等性,对ACID事务的支持,分层存储的架构 tiered storage),还有不断丰富扩大的生态系统 (kafka connect, kafka schema registry, 以及高层抽象 kafka stream, ksqlDB),在大数据更加注重数据时效性的今天(实时预警,实时风控,实时数仓等各种场景),在微服务更加注重松耦合的今天(微服务相互之间不再直接相互调用,而是通过同步数据来同步状态),(站在了对的风口上,其地位水涨船高),几乎所有的企业都或多或少在其业务系统中用到了 KAFKA (或其同类竞品如 pulsa)。

既然 KAFKA 可以在企业内部作为数据总线/中央数据管道的解决方案,那么在新时代的多云与混合云部署架构下,其能否起到数据同步的作用呢?

答案是肯定的。

此时其架构如下如所示:

data sync in multi and hybrid cloud - kafka

该架构的要点如下:

  • 本地数据中心部署一个 KAFKA 集群;
  • 云端部署一个 Kafka 集群中;(如果是多云,则每个云部署一个 KAFKA 集群);
  • 本地数据中心的所有应用,其数据都汇总到本地数据中心的 Kafka 集群中;(可以使用 kafka java/scala api 直接写 kafka,也可以使用各种 cdc 工具采集 rdbms 中的 binlog/redolog 进而写到 kafka, 可用的 cdc 工具包括 canal/maxwell/ogg/debezium等,kafka connect生态的各个 connector插件也可以使用 );
  • 使用 kafka 的数据同步工具 MirrorMaker, 在数据中心与各个云端的 kafka 集群间,同步数据;
  • 各个云端的应用,访问其对应的 kafka 集群获取数据;

该架构的优点如下:

  • 多个大厂生产系统验证了可行的多数据中心架构;
  • 持续性的低延迟的数据同步方案;(在高速网络带宽下,延迟可达几百毫秒);
  • 集中式的管理和监控,支持集成多种安全和治理方案;
  • 节约成本;
  • 可以使用 KAFKA 背后的商业公司 Confluent 提供的 Confluent platform,该产品可以在数据中心/私有云/公有云部署,其架构图如下所示:图片

4 知识总结

  • 企业IT基础设施的一大趋势是,上云的趋势愈演愈烈;
  • 企业业务系统上云不是一蹴而就的,也不是单向的一帆风顺的;
  • 未来的企业业务系统的部署架构,不会是单一的某个公有云,而是多个公有云和私有云甚至本地数据中心的混合部署形态;
  • 企业业务系统在多云与混合云部署架构下有个难题,即数据同步;
  • 可以使用 KAFKA 作为多云与混合云部署架构下数据同步的解决方案;
  • 使用 KAFKA 作为多云与混合云部署架构下数据同步的解决方案时,本地数据中心与云端的各个云中都会部署一个 KAFKA 集群;
  • 使用 KAFKA 作为多云与混合云部署架构下数据同步的解决方案时,可以使用 kafka 的数据同步工具 MirrorMaker, 在数据中心与各个云端的 kafka 集群间同步数据;

Ps: 笔者了解到,已经有一些第三方公司,基于该方案推出了其封装版的商业产品,来解决多数据中心间的数据同步。(商机呀小伙伴们,这是块长期的大蛋糕)。

相关资料下载:链接:https://pan.baidu.com/s/1FNAkwXbxQBn0tPINKPXVCg 提取码:kafk

文章标题:多云与混合云场景下的数据同步方案之Kafka
链接分享:http://www.shufengxianlan.com/qtweb/news27/172277.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联