阿里云DTS踩坑经验分享系列|网络问题排查大法

本文涉及的产品
数据传输服务 DTS,数据同步 small 3个月
推荐场景:
数据库上云
数据传输服务 DTS,数据迁移 small 3个月
推荐场景:
MySQL数据库上云
数据管理 DMS,安全协同 3个实例 3个月
推荐场景:
学生管理系统数据库
简介: 在DTS的所有用户问题中,网络问题出现的概率居高不下,很大程度上是由于DTS的链路复杂性,从源数据库到DTS再从DTS到目的数据库,任意的一个部位发生网络不通、网络质量问题都有可能导致DTS任务的中断,或者延迟。本文希望以一种最简单的模型,简述DTS网络不通问题的排查方法,并给出一些简单的验证思路及手段,排查方向对了才能事半功倍。

阿里云DTS作为数据世界高速传输通道的建造者,每周为您分享一个避坑技巧,助力数据之旅更加快捷、便利、安全。


导读

在DTS的所有用户问题中,网络问题出现的概率居高不下,很大程度上是由于DTS的链路复杂性,从源数据库到DTS再从DTS到目的数据库,任意的一个部位发生网络不通、网络质量问题都有可能导致DTS任务的中断,或者延迟。

而在所有的网络不通问题中,“专线/VPN网关/智能网关” 或者 “CEN” 方式接入数据源的任务占比最多,一方面,以这2种接入方式接入的客户大多数是以VBR + 物理专线、VPN网关等方式连接了一个较远位置的网络环境,由于距离远加上网络链路可能具有不确定性因此网络质量并不能得到很好的保障;另一方面,由于这个目的网络环境可能是用户私网IDC、他云VPC等阿里云不可控的一个环境,其路由情况、数据库版本可能都并非是标准的,因此阿里云无法直接进行排查,必须依靠用户做跨网络域问题的排查,效率大打折扣

因此,本文希望以一种最简单的模型,简述DTS网络不通问题的排查方法,并给出一些简单的验证思路及手段,排查方向对了才能事半功倍。

网络不通问题概览

首先我们从TCP/IP的协议出发来定义一下 如何构造一个畅通的网络通道,不出现下方这种令人烦躁的报错。

配置任务时网络不通的报错图

定义开始

首先什么是TCP/IP协议?怎么确保TCP/IP协议是畅通的? 以下是我从百度百科找到的回答:

TCP/IP(Transmission Control Protocol/Internet Protocol)即传输控制协议/网间协议.......... TCP 有3次握手和4次挥手............

说这么多其实关联不到实际的业务场景,不如我们直接给出这样一个极简的模型,并给出更为极简的定义:

“当DTS的流量可以以1号剪头的方向正确到达用户数据库,并且用户数据库的回流量可以以2号箭头的方向正确到达DTS,则网络畅通”

image.png

极简DTS&数据库网络通信图

接着我们对上图做一些填充,便得到了较完整的一张通信拓扑图:在这张图中,DTS和用户数据库之间需要经过 基础网络组件、专有网络VPC、下云/上云通道(也就是通常意义的专线或者VPN)最终到达用户数据库。

image.png

完整DTS&数据库网络通信拓扑图

但是这里左侧DTS和基础网络组件对于用户来说都是不可见的,右侧3个组件(专有网络VPC、下云/上云通道、用户数据库)对于用户是可见的,因此我们重新定义下刚才提出的更为极简的定义:

“当DTS注入专有网络VPC的流量可以以1号箭头的方向正确到达用户数据库,并且用户数据库的回流量可以以2号箭头的方向正确到达专有网络VPC,则网络畅通。”

我们这里已经定义好了一个畅通网络的必要条件,但是没有提到一个参数:专有网络VPC 是哪个专有网络VPC?

答案揭晓,实际上就是在配置DTS任务时,用户选择的“已和源端数据库联通的VPC”。(目标同理)

此时,我们有必要再更新一下刚才更为极简的定义:

“当DTS注入用户配置任务时选择的专有网络VPC的流量可以以1号箭头的方向正确到达用户数据库,并且用户数据库的回流量可以以2号箭头的方向正确到达用户配置任务时选择的专有网络VPC,则网络畅通。”

最终,我们解答并定义了这个问题 如何构造一个畅通的网络通道。但如何确认呢?如何确定我们构造的网络就是满足畅通网络要求的?

下面我们就从2部分探讨一下排查与验证思路:

  • 排查下云流量部分
  • 排查上云流量部分

排查下云流量部分

祭出我们的极简模型图,并给出下云部分畅通网络的极简定义:

DTS注入用户配置任务时选择的专有网络VPC的流量可以以1号箭头的方向正确到达用户数据库

image.png

极简模型图

那么在确认下云流量正确到达前,总得知道流量长的什么样子,否则分析无从谈起。

我们这里直接给出一个报文的模型:源IP我们称为云服务IP,是各种100.104开头的网段,目的IP就是用户的数据库IP,DTS注入用户VPC的流量会以这种形式在用户网络内流转,并随着用户的各种交换机路由表一路流动到用户数据库。

image.png

下云流量报文模型


那么这个源IP的网段如何确认呢?

可参考DTS的白名单网段进行确认,云服务IP网段在各region都是不一样的,数量也不一样

https://help.aliyun.com/zh/dts/user-guide/add-the-cidr-blocks-of-dts-servers-to-the-security-settings-of-on-premises-databases

如果配置都正确要如何确认下云通道是畅通的呢?

可以使用tcpdump的抓包命令,在用户数据库上,进行抓包查看

sudo tcpdump net 100.104

如果你能在shell的回显,看到图示的来自100.104网段报文信息在不断更新的话,就说明数据库机器收到了来自云上云服务网段的流量。

排查上云流量部分

再次祭出我们的极简模型图,并给出上云部分畅通网络的极简定义:

用户数据库的回流量可以以2号箭头的方向正确到达用户配置任务时选择的专有网络VPC

image.png

极简模型图

书接上文,我们的下云流量有了,那么紧接着数据库会向云上做回包,这个回包的目的IP就是 下云流量的源IP,因此我们给出上云流量的报文模型

image.png

上云流量报文模型


接着就需要确认报文有没有回到云上了,那么可以执行如下这个命令:

MTR 100.104.X.X

但MTR哪个地址呢?

想确认这个100.104.X.X的地址具体是什么,可以采用刚才的方法 sudo tcpdump net 100.104,查看来源IP是什么

确认100.104 IP是什么的方法

做完MTR后可通过路径点得知由数据库发出的报文是否回到了阿里云上,由于手里没有现成的专线测试环境因此就不给大家演示了。

大多数上云不通的情况是报文根本没出非阿里云环境,还在这个网络域内徘徊,多半是由于一些路由配置问题导致回程的路由没有指向VBR的云下互联地址,或者指向云下的VPN网关。当然具体是什么情况就需要用户的网工进行排查了。


总结

本篇主要从DTS角度提出了一个 “畅通网络”的极简版定义,并且讨论了一套最简单的网络不通排查思路,是定性的分析,主要是回答:“有没有下云”和“有没有上云” 这2个问题,可以起到售后介入前用户自行排查的作用。但是针对更为复杂的场景,需要定量分析的,本篇没有涉及。比如还有其他更极端的情况,报文已经确认上云了,但是没有回到用户填写的那个VPC;报文已经下云了,但是用户数据库没有接到;这就属于更为复杂的网络问题,需要借助更综合的知识分析,也不在本篇的讨论范围内。

网络问题综合性较强,牵扯部门多,覆盖范围广,因此排查周期长、难度大。从我们的心得而言,如果是运行中链路遇见网络问题,那么尽量从变更入手,很可能是变更引发的问题;如果是配置中链路遇见网络问题,多半是用户的网络规划中缺失了 云服务IP网段 这个方面的规划。


快来关注

  1. 数据传输服务(Data Transmission Service,简称DTS)支持关系型数据库、NoSQL、大数据(OLAP)等数据源,集数据迁移、订阅、实时同步、校验功能于一体,能够解决公共云、混合云场景下,远距离、秒级异步数据传输难题。其底层基础设施采用阿里双11异地多活架构,为数千下游应用提供实时数据流,已在线上稳定运行7年之久,是一款沉淀了丰富实践经验的可靠产品。点击了解更多DTS相关信息
  2. 欢迎加入钉群讨论交流:


#DTS避坑指南”

目录
打赏
0
3
3
0
396
分享
相关文章
网络安全视角:从地域到账号的阿里云日志审计实践
日志审计的必要性在于其能够帮助企业和组织落实法律要求,打破信息孤岛和应对安全威胁。选择 SLS 下日志审计应用,一方面是选择国家网络安全专用认证的日志分析产品,另一方面可以快速帮助大型公司统一管理多组地域、多个账号的日志数据。除了在日志服务中存储、查看和分析日志外,还可通过报表分析和告警配置,主动发现潜在的安全威胁,增强云上资产安全。
152 15
阿里云基础设施网络2024年创新总结
本文将盘点阿里云基础设施网络团队2024年在AI时代可预期网络的技术突破、学术成果、开源生态共建与重要会议技术布道等,与业界同仁一同探讨和展望AI时代的网络技术发展热点和趋势。
阿里云基础设施网络2024年创新总结
网络分析与监控:阿里云拨测方案解密
阿里云网络拨测业务提供了全球、多种协议、多种网络态势的用户网络性能和用户体验监控场景的全面可观测方案。该文章从拨测场景下,介绍了用户如何快速的构建一套全球用户视角的服务可用性大盘,为客户的业务保驾护航。
238 42
NSDI'24 | 阿里云飞天洛神云网络论文解读——《Poseidon》揭秘新型超高性能云网络控制器
NSDI‘24于4月16-18日在美国加州圣塔克拉拉市举办,汇聚全球网络系统领域的专家。阿里云飞天洛神云网络的两篇论文入选,标志着其创新能力获广泛认可。其中,《Poseidon: A Consolidated Virtual Network Controller that Manages Millions of Tenants via Config Tree》介绍了波塞冬平台,该平台通过统一控制器架构、高性能配置计算引擎等技术,实现了对超大规模租户和设备的高效管理,显著提升了云网络性能与弹性。实验结果显示,波塞冬在启用EIP时的完成时间比Top 5厂商分别快1.8至55倍和2.6至4.8倍。
136 14
NSDI'24 | 阿里云飞天洛神云网络论文解读——《LuoShen》揭秘新型融合网关 洛神云网关
NSDI‘24于4月16-18日在美国圣塔克拉拉市举办,阿里云飞天洛神云网络首次中稿NSDI,两篇论文入选。其中《LuoShen: A Hyper-Converged Programmable Gateway for Multi-Tenant Multi-Service Edge Clouds》提出超融合网关LuoShen,基于Tofino、FPGA和CPU的新型硬件形态,将公有云VPC设施部署到边缘机柜中,实现小型化、低成本和高性能。该方案使成本降低75%,空间占用减少87%,并提供1.2Tbps吞吐量,展示了强大的技术竞争力。
云原生应用网关进阶:阿里云网络ALB Ingress 全能增强
在过去半年,ALB Ingress Controller推出了多项高级特性,包括支持AScript自定义脚本、慢启动、连接优雅中断等功能,增强了产品的灵活性和用户体验。此外,还推出了ingress2Albconfig工具,方便用户从Nginx Ingress迁移到ALB Ingress,以及通过Webhook服务实现更智能的配置校验,减少错误配置带来的影响。在容灾部署方面,支持了多集群网关,提高了系统的高可用性和容灾能力。这些改进旨在为用户提供更强大、更安全的云原生网关解决方案。
593 19
阿里云先知安全沙龙(武汉站) - 网络空间安全中的红蓝对抗实践
网络空间安全中的红蓝对抗场景通过模拟真实的攻防演练,帮助国家关键基础设施单位提升安全水平。具体案例包括快递单位、航空公司、一线城市及智能汽车品牌等,在演练中发现潜在攻击路径,有效识别和防范风险,确保系统稳定运行。演练涵盖情报收集、无差别攻击、针对性打击、稳固据点、横向渗透和控制目标等关键步骤,全面提升防护能力。
阿里云 SelectDB 携手 DTS ,一键实现 TP 数据实时入仓
DTS 作为阿里云核心的数据交互引擎,以其高效的实时数据流处理能力和广泛的数据源兼容性,为用户构建了一个安全可靠、可扩展、高可用的数据架构桥梁。阿里云数据库 SelectDB 通过与 DTS 联合,为用户提供了简单、实时、极速且低成本的事务数据分析方案。用户可以通过 DTS 数据传输服务,一键将自建 MySQL / RDS MySQL / PolarDB for MySQL 数据库,迁移或同步至阿里云数据库 SelectDB 的实例中,帮助企业在短时间内完成数据迁移或同步,并即时获得深度洞察。
阿里云 SelectDB 携手 DTS ,一键实现 TP 数据实时入仓
在数据传输服务(DTS)中,要查看每个小时源端产生了多少条数据
【2月更文挑战第32天】在数据传输服务(DTS)中,要查看每个小时源端产生了多少条数据
93 6
阿里云DTS踩坑经验分享系列|使用VPC数据通道解决网络冲突问题
阿里云DTS作为数据世界高速传输通道的建造者,每周为您分享一个避坑技巧,助力数据之旅更加快捷、便利、安全。本文介绍如何使用VPC数据通道解决网络冲突问题。
172 0
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等