热门标签 | HotTags
当前位置:  开发笔记 > 运维 > 正文

数据同步平台CloudCanal的透明化、可视化运维之道

CloudCanal-万少查看原文前言CloudCanal是一款由ClouGence公司发行的集结构迁移、数据全量迁移校验订正、增量实时同步为一体的数据迁移同步平台。产品包含完整的

CloudCanal-万少 查看原文


前言

CloudCanal是一款由ClouGence公司发行的集结构迁移、数据全量迁移/校验/订正、增量实时同步为一体的数据迁移同步平台。产品包含完整的产品化能力,助力企业打破数据孤岛、完成数据互融互通,从而更好的使用数据。CloudCanal社区版为免费版本,我们会持续地对其维护,请大家放心下载使用。如有兴趣使用请参考文章底部相关资料。


数据同步产品的透明化、可视化运维

数据同步产品是企业的基础设施产品,其透明化、可视化程度与产品的运维、使用效率息息相关。


透明化

透明化指产品内部本身对于用户来说不完全是一个黑盒子,产品内部核心构件以产品化的形式向用户透明,使得用户可以介入内部构件的管理,提供更加精细化的产品控制。

对于数据同步这类基础设施产品,透明化会显得更为重要。数据同步产品由于用户的数据源、数据负载、数据处理需求、机器环境等差异,用户在实际使用、运维中往往需要有对产品更强的干预能力,从而更好的满足自身的场景需求。在数据同步领域,这类干预诉求主要体现在如下几个方面:



  • 源、目标核心组件透明化:用户能够对源端的读取器和对端的写入器有更加精细的控制。例如对于源端可以配置限流、批大小、解析线程数等。

  • 内部组件异常透明化:在私有部署的情况下,数据同步产品的数据源、机器等等都是用户添加的。场景本身的复杂性,不可避免的导致一些由于使用、配置不当而产生的异常。内部组件异常透明化,可以使得用户更加准确、及时的发现问题、解决问题。例如数据同步过程中,数据源突然下线,通过透明化的日志即可看到数据源Connection refused异常,这样,可以快速将问题原因锁定在数据源无法访问这点上。

  • 运行时信息透明化:丰富的运行时信息能够使得出现问题时,提供更多诊断信息,快速定为问题原因。


可视化运维

可视化运维主要体现在产品功能各个维度的可视化成熟度。更高的可视化程度,会带来更好的易用性和产品体验。


CloudCanal透明化、可视化运维


核心组件透明可视化

CloudCanal核心组件主要包含:



  • Console: 管控进程,负责产品化能力

  • Sidecar: 机器保姆进程,负责task和console之间信息转发以及task的可用性保障

  • Task: 具体迁移、同步任务的执行

其中针对Console组件,其内部还包含以下组件:



  • 异步任务工作流:数据同步任务的创建过程比较复杂,CloudCanal通过异步工作流来完成。

  • 状态机:状态机主要负责任务状态的切换,主要是结构迁移、全量、增量之间的阶段切换

在CloudCanal中,这些核心组件对用户都是透明的,用户可以通过可视化的界面对这些内部组件进行精细化的控制。

77c8709b-ce97-4bd6-8d5a-67edbe6483dd-image.png


SIDECAR

在机器管理页面可以对Sidecar组件进行控制和检查,包含:



  • 生命周期管理

  • 远程日志查看

  • 详细机器监控(点击圆盘可以进入详细)

500ab637-09d3-4901-91c8-c458c5fbf0dd-image.png


CONSOLE


异步任务工作流

数据同步产品中任务创建是个复杂的流程,往往设计多个子任务。CloudCanal的console内置的异步任务工作流会按顺序执行子任务。针对失败的子任务,我们可以看到具体失败的步骤,以及错误信息,便于运维同学定位问题。

249ab538-2ae8-47cc-8ad9-a073acc48e73-image.png

0c2aa508-5073-4898-a75c-42f6c15c0132-image.png


状态机

每个任务都有其关联的状态机,负责任务的阶段流转。状态的流转由条件触发器触发。

c76a7224-1034-4ce7-993b-2ae5005209e9-image.png

1bcd864d-e258-4852-8554-6e77e85d5d33-image.png


TASK


任务详情

任务列表页提供了任务的列表信息和基本的生命周期控制能力以及进度查看。

b4074502-1fef-4766-9f57-efd51c190adb-image.png

任务详情页面提供了任务完整的详情信息,包括:



  • 生命周期控制

  • 订阅关系查看(库表映射)

  • 源端、目标端数据源详细信息

  • 各阶段同步细节

  • 任务白屏化日志

  • 关联的绑定机器信息

  • 同步进度、位点细节

ebb86082-0762-4422-a3ec-495478784de6-image.png


任务内核参数

除任务详情的透明可视化之外,任务内核参数是CloudCanal对于任务精细化控制的重要能力。任务详情中的参数修改支持对任务内核进行更加精细化的控制,以目标端参数配置为例,我们可以控制例如:



  • 异常跳过策略

  • 并行度

  • 约束冲突时的处理策略

  • 对端RPS限流

  • 大小写策略

a4a6faf9-a22d-4beb-93ad-4fdd7ef4805c-image.png


内部组件异常透明化

CloudCanal的管控会搜集所有的异常日志,并且可视化的在控制台展示。核心组件的日志均会分类展示,便于用户快速查看日志和定位问题。CloudCanal会完整毫无遗漏的搜集所有运行时的异常,这也使得一些在日志中隐秘的、偶发的问题直接暴露出来。这些信息都会指导CloudCanal后续的研发,确保产品步步为营、高质量地去迭代升级。

35624362-3f62-44c7-876d-f86ed4462087-image.png


运行时信息透明化

CloudCanal的运行时信息透明化主要体现在如下两个维度:



  • 监控

  • 日志


监控

CloudCanal在控制台上即可查看所有组件的监控信息。每个核心组件的监控下按照不同维度会细分多张图表,让用户对核心组件有着完全的掌控。例如增量源端的监控,我们监控会细致到内存队列的阻塞时间、每秒flush事务数等指标。

e2007421-f77a-4d10-bfb4-864d57a481cb-image.png


日志

在CloudCanal平台上提供了核心组件的白屏化日志,并且对日志均按照功能进行了划分。


机器日志

在机器管理处,查看机器日志,我们可以查看机器的完整日志、慢通信日志、异常日志等信息。

926c78c3-f4ed-4dda-928b-82b1821be16c-image.png


任务日志

在任务详情页,用户则可以查看实时的任务日志,确认任务实时运行状态或者确认问题。

ee4d43f5-b759-425d-bf57-fcd521d3e4c8-image.png

32a70f49-45a4-4a4c-b70e-8d6e50ab412c-image.png


总结

作为面向技术、运维人员的一款数据基础设施产品,在设计之初考虑产品层面的透明化、可视化运维是尤其重要的。这使得产品在后续功能变得越来越复杂和强大时,产品本身依然能够提供高质量的可运维性,同时也确保产品本身能够更好的迭代和发展。


相关资料

CloudCanal社区版免费下载与安装教程:https://www.askcug.com/topic/75

5分钟搞定 MySQL 到 ClickHouse 实时数据同步-CloudCanal 实战:https://www.askcug.com/topic/76

5分钟搞定 MySQL 到 ElasticSearch 迁移同步-CloudCanal实战:https://www.askcug.com/topic/97

5分钟搞定 MySQL 到 TiDB 的数据同步 - CloudCanal实战:https://www.askcug.com/topic/106


社区快讯



  • 我们创建 CloudCanal 微信粉丝群啦,在里面,你可以得到最新版本发布信息和资源链接,你能看到其他用户一手评测、使用情况,你更能得到热情的问题解答,当然你还可以给我们提需求和问题。快快加入吧。

    • 添加我们小助手微信suhuayue001邀请您进群,接头语(“CloudCanal yyds”)





推荐阅读
  • 深入解析Serverless架构模式
    本文将详细介绍Serverless架构模式的核心概念、工作原理及其优势。通过对比传统架构,探讨Serverless如何简化应用开发与运维流程,并介绍当前主流的Serverless平台。 ... [详细]
  • 本文详细介绍了如何在 Android 中使用值动画(ValueAnimator)来动态调整 ImageView 的高度,并探讨了相关的关键属性和方法,包括图片填充后的高度、原始图片高度、动画变化因子以及布局重置等。 ... [详细]
  • Explore how Matterverse is redefining the metaverse experience, creating immersive and meaningful virtual environments that foster genuine connections and economic opportunities. ... [详细]
  • 基于KVM的SRIOV直通配置及性能测试
    SRIOV介绍、VF直通配置,以及包转发率性能测试小慢哥的原创文章,欢迎转载目录?1.SRIOV介绍?2.环境说明?3.开启SRIOV?4.生成VF?5.VF ... [详细]
  • 深入探讨智能布线管理系统的电子配线架应用
    本文详细介绍了电子配线架智能布线系统的核心优势,包括实时监测网络连接、提高操作准确性、图形化显示连接架构、自动识别网络拓扑、增强安全性等功能。该系统不仅提升了网络管理的效率和准确性,还为资产管理、报告生成以及与其他智能系统的集成提供了强大的支持。 ... [详细]
  • HBase运维工具全解析
    本文深入探讨了HBase常用的运维工具,详细介绍了每种工具的功能、使用场景及操作示例。对于HBase的开发人员和运维工程师来说,这些工具是日常管理和故障排查的重要手段。 ... [详细]
  • 本文探讨了如何在日常工作中通过优化效率和深入研究核心技术,将技术和知识转化为实际收益。文章结合个人经验,分享了提高工作效率、掌握高价值技能以及选择合适工作环境的方法,帮助读者更好地实现技术变现。 ... [详细]
  • 解决U盘安装系统后无法重启的问题
    本文详细探讨了运维新手常遇到的U盘安装系统后无法正常重启的问题,提供了从问题分析到具体解决方案的完整步骤。通过理解Boot Loader的工作原理和正确配置启动项,帮助用户顺利解决问题。 ... [详细]
  • 科研单位信息系统中的DevOps实践与优化
    本文探讨了某科研单位通过引入云原生平台实现DevOps开发和运维一体化,显著提升了项目交付效率和产品质量。详细介绍了如何在实际项目中应用DevOps理念,解决了传统开发模式下的诸多痛点。 ... [详细]
  • 本文详细介绍如何通过修改配置文件来隐藏Apache、Nginx和PHP的版本号,从而增强网站的安全性。我们将提供具体的配置步骤,并解释这些设置的重要性。 ... [详细]
  • Kubernetes 持久化存储与数据卷详解
    本文深入探讨 Kubernetes 中持久化存储的使用场景、PV/PVC/StorageClass 的基本操作及其实现原理,旨在帮助读者理解如何高效管理容器化应用的数据持久化需求。 ... [详细]
  • 福克斯新闻数据库配置失误导致1300万条敏感记录泄露
    由于数据库配置错误,福克斯新闻暴露了一个58GB的未受保护数据库,其中包含约1300万条网络内容管理记录。任何互联网用户都可以访问这些数据,引发了严重的安全风险。 ... [详细]
  • 全面解析运维监控:白盒与黑盒监控及四大黄金指标
    本文深入探讨了白盒和黑盒监控的概念,以及它们在系统监控中的应用。通过详细分析基础监控和业务监控的不同采集方法,结合四个黄金指标的解读,帮助读者更好地理解和实施有效的监控策略。 ... [详细]
  • 通常情况下,修改my.cnf配置文件后需要重启MySQL服务才能使新参数生效。然而,通过特定命令可以在不重启服务的情况下实现配置的即时更新。本文将详细介绍如何在线调整MySQL配置,并验证其有效性。 ... [详细]
  • 本文探讨了现代分布式架构的多样性,包括高并发、多活数据中心、容器化、微服务、高可用性和弹性架构等,并介绍了与这些架构相关的重要管理技术,如DevOps、应用监控和自动化运维。文章还深入分析了分布式系统的核心概念、主要用途及类型,同时对比了单体应用与分布式服务化的优缺点。 ... [详细]
author-avatar
西岑村内徐老爷
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有