IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> 构建基于Kafka中转的混合云在线数据同步-CloudCanal实战 -> 正文阅读

[大数据]构建基于Kafka中转的混合云在线数据同步-CloudCanal实战

本文介绍了如何实现mysql 同步数据到Kafka实现混合云在线数据同步

junyu-cloudcanal

简介

本文主要介绍如何使用 CloudCanal 快速构建安全的混合云在线数据生态,完全使用 CloudCanal SAAS 能力达成。

此方案具有以下几个特点

  • 采用 Kafka 做数据中转
  • 双边数据库都不开公网端口
  • 互联网数据经过 SSL 加密
  • 数据出口经过用户名、密码验证,并设置 ip 白名单加强安全管控

例子中的云数据库、云消息产品、自建数据库等都可以替换成自己当前环境的自建资源或各种云资源。

技术点

混合云数据生态主要的难点在于 网络安全 ,部分用户因为传输同步数据较多,也比较在意流量资源损耗。

基于 CloudCanal 实现的方案,更加关注 网络安全 层面的问题,做到敏感资源 网络单向隔离链接鉴权传输加密

下图简要示例了下 互联网模式专线模式 数据上下云。 截屏2021-08-04 下午7.48.27.png

举个"栗子"

本文案例主要演示 互联网模式 的跨云数据迁移和同步,具体场景是如何进行数据上云(自建机房数据库-> 阿里云云数据库),并且长期维持混合云数据体系。当然,相同的方案也可以反过来使用,只是在数据源选择外网内网有所区别。

安装 CloudCanal

准备 Kafka

  • 在阿里云 Kafka 购买页

    购买相应的 Kafka , 验证能力可先购买按量实例

    购买kafka_new.png

    • 注意选择 公网/VPC实例,并且选择稍大的公网流量
  • 部署实例请选择 2.x.x 版本,最大消息大小 建议调整稍大些(比如 4MB) 部署kafka.png

  • 进入实例,创建 Consumer Group,并记下名称 创建consumer_group.png

子账号授权并添加数据源

  • 按照 阿里云子账号准备 文档,创建或者授权子账号,并记住子账号 AK 和 SK , 请授予基本的数据库访问权限 AliyunRDSFullAccess,AliyunKafkaFullAccess
  • 分别添加云下自建数据库阿里云 RDS for MySQL阿里云 Kafka 添加数据源.png
    • 添加阿里云资源时,请在第二步选择自动添加迁移机器白名单
    • Kafka 用户名密码可以在 阿里云 Kafka 实例详情页最底下安全配置处找到
    • TLS 文件请从 阿里云Kafka根证书下载

开始造数据

  • 源端数据库为云下自建数据库,IUD 20:60:20, 12 KB/条数据, 每个表 24 并发, 每个事务 2~4 条变更, RPS 1000 左右。 造数据.png

使用 CloudCanal 创建云下数据同步任务

  • 选择数据源,并选择合适的选项

    创建云下任务_1.png

    • 1 处请选择云下或自建集群
    • 2 ,3 源端自建数据库选择内网,对端 Kafka 选择公网
    • 4 处可以选择兼容 开源 Canal 消息格式,或自带的 CloudCanal 消息格式
  • 选择数据同步,并勾选初始化数据 创建云下任务_2.png

  • 选择表,此处不要修改对端 topic,按照默认规则生成即可。 创建云下任务_3.png

  • 选择列,可以裁剪掉一部分列不进行迁移同步 创建云下任务_4.png

  • 创建确认

    创建云下任务_5.png

  • 任务正常流转运行中

    云下任务运行中.png

使用 CloudCanal 创建云上迁移同步任务

  • 选择数据源,并选择合适的选项

    创建云上任务_1.png

    • 1 请选择 ECS 上客户端所在集群
    • 2,3 都选择内网分别访问 Kafka 和 RDS for MySQL
    • 4 填写之前在 Aliyun Kafka 控制台创建的 Consumer Group
    • 5 选择和云下任务一致的消息格式
  • 中间略过表、列选择,一路点击下一步即可

  • 创建确认

    创建云上任务_5.png

  • 两者任务正常运行中

    任务正常运行.png

  • 云上消费任务创建因为是在云下任务运行之后,所以需要将云上消费任务位点回溯到云下任务创建之前,以涵盖全部数据。

    重置云上任务位点_1.png

    重置云上任务位点_2.png

校验下数据

此次案例为了校验数据,我们偷个懒,直接打开 RDS for MySQL 公网链接,用云下 CloudCanal 集群链接过来直接做一个数据校验 (生产环境禁止!!!!)

  • 为了让校验结果更加清晰,停止造数据

  • 申请 RDS for MySQL 公网地址,并修改 CloudCanal 数据源管理页面对应实例的公网地址 RDS开公网.png

  • 创建校验任务

    创建数据校验任务_1.png

    • 1 选择云下或本地集群
    • 2 ,3 源端自建 MySQL 选择内网访问,目标端 RDS for MySQL 选择外网访问
  • 选择任务类型为数据校验

    创建数据校验任务_2.png

  • 中间略过表、列选择,一路点击即可

  • 创建确认

    创建数据校验任务_5.png

  • 任务运行完毕,结果正确

    创建数据校验任务_6.png

总结

本文简要介绍如何使用 CloudCanal SAAS 能力快速构建一条安全、跨互联网数据迁移同步方案。

此方案有以下特点:

  • 双边数据库都不开公网端口
  • 互联网数据经过 SSL 加密
  • 数据出口经过用户名、密码验证,并设置 ip 白名单加强安全管控

如果小伙伴们觉得这篇分享还不错,请转发、点赞、试用(SAAS下载社区版)吧。 加入CloudCanal粉丝群掌握一手消息和获取更多福利,请添加我们小助手微信:suhuayue001

CloudCanal-免费好用的企业级数据同步工具,欢迎品鉴。 了解更多产品可以查看官方网站http://www.clougence.com CloudCanal社区https://www.askcug.com/

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2021-08-07 12:09:17  更:2021-08-07 12:11:14 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/17 15:59:13-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码