本文以部署在阿里云ECS中的MySQL为例,为您介绍数据源如何与DataWorks进行网络连通。
适用场景
如果您的数据源满足以下条件,推荐使用本方案。
数据源部署在阿里云ECS中。
方案说明
ECS与DataWorks同主账号同地域
部署数据源的ECS与DataWorks同主账号、同地域时,推荐使用VPC网络(内网)连接,将DataWorks工作空间的资源组与ECS实例部署在同一VPC下,即可实现网络互通。
ECS与DataWorks不同主账号、同主账号不同地域
部署数据源的ECS与DataWorks不同主账号或同主账号、不同地域时,推荐使用VPC网络(内网)连接,使用网络连通工具(云企业网、VPC对等连接)将DataWorks工作空间的资源组与ECS所在VPC打通,实现网络互通。
前提条件
计费说明
根据选择的网络连通工具不同,计费存在差异,详情请参见云企业网计费说明或对等连接计费说明。
使用对等连接时,如果ECS与DataWorks资源组位于不同账号,但地域相同,则不收取任何费用。
配置网络连通
以下为数据源与DataWorks网络连通的通用配置流程,便于您快速掌握网络连通的核心逻辑。如需了解更多配置细节,本文也提供了具体的配置案例供您参考。
步骤一:获取基本信息
ECS与DataWorks同主账号同地域
数据源侧
ECS的VPC和交换机信息:
前往云服务器管理控制台,在页面顶部切换至目标ECS所在地域。
在页面左侧单击
,找到已部署MySQL数据库的ECS实例,单击实例名称,进入实例详情页。在配置信息区域,获取专有网络(本示例命名为
VPC 1
)和交换机信息。
DataWorks侧
资源组绑定的VPC和交换机信息:
前往DataWorks资源组列表页,找到目标资源组,单击右侧操作列的网络设置。
在对应功能模块下查看绑定的专有网络和交换机信息。
例如,业务需要将部署在ECS中的MySQL与DataWorks连通进行数据同步,则在数据调度 & 数据集成下查看对应的专有网络(本示例命名为
VPC 2
)和交换机信息。
ECS与DataWorks同主账号、不同地域
数据源侧
地域信息:本文以杭州地域的ECS为例。
ECS的VPC和信息:
前往云服务器管理控制台,在页面顶部切换至目标ECS所在地域。
在页面左侧单击
,找到已部署MySQL数据库的ECS实例,单击实例名称,进入实例详情页。在配置信息区域,获取专有网络和交换机信息。
DataWorks侧
地域信息:本文以上海地域的DataWorks空间和资源组为例。
资源组绑定的VPC和交换机信息:
前往DataWorks资源组列表页,找到目标资源组,单击右侧操作列的网络设置。
在对应功能模块下查看绑定的专有网络和交换机信息。
例如,业务需要将RDS MySQL与DataWorks连通进行数据同步,则在数据调度 & 数据集成下查看对应的专有网络和交换机信息。
ECS与DataWorks不同主账号
数据源侧
账号信息:本文以账号A为例。
地域信息:本文以杭州地域的ECS为例。
ECS的VPC和交换机信息:
前往云服务器管理控制台,在页面顶部切换至目标ECS所在地域。
在页面左侧单击
,找到已部署MySQL数据库的ECS实例,单击实例名称,进入实例详情页。在配置信息区域,获取专有网络和交换机信息。
DataWorks侧
账号信息:本文以账号B为例。
地域信息:本文以上海地域的DataWorks空间和资源组为例。
资源组绑定的VPC和交换机网段信息:
前往DataWorks资源组列表页,找到目标资源组,单击右侧操作列的网络设置。
在对应功能模块下查看绑定的专有网络和交换机信息。
例如,业务需要将RDS MySQL与DataWorks连通进行数据同步,则在数据调度 & 数据集成下查看对应的专有网络和交换机信息。
步骤二:网络打通
ECS与DataWorks同账号同地域
如果
VPC 1
与VPC 2
相同,则表示ECS与DataWorks资源组部署在同一VPC,网络默认已互通。如果
VPC 1
与VPC 2
不同,则需要在DataWorks资源组网络设置页面,单击新增绑定,将VPC 1
绑定到资源组,使DataWorks资源组与ECS部署在同一VPC下。
ECS与DataWorks同主账号、不同地域
云企业网:适用于企业复杂网络环境,多VPC间网络互通,具体配置,请参见跨地域VPC互通。
VPC对等连接:适用于VPC两两间网络互通,具体配置,请参见使用VPC对等连接实现VPC私网互通。
如果在配置网络打通过程中遇到问题,请提交工单联系对应云产品技术支持处理。
ECS与DataWorks不同主账号
云企业网:适用于企业复杂网络环境,多VPC间网络互通,具体配置,请参见跨账号VPC互通。
VPC对等连接:适用于VPC两两间网络互通,具体配置,请参见使用VPC对等连接实现VPC私网互通。
如果在配置网络打通过程中遇到问题,请提交工单联系对应云产品技术支持处理。
步骤三:DataWorks资源组添加路由
同主账号不同地域、不同主账号场景下,还需要在DataWorks资源组中添加路由,指向ECS所在交换机网段。
前往DataWorks资源组列表页,找到目标资源组,单击右侧操作列的网络设置。
在对应功能模块下找到已绑定的VPC,单击右侧操作列的自定义路由。
单击新增路由,连接方式选择为指定网段,目的网段配置为ECS的交换机网段。
步骤四:(可选)数据库开启远程访问
部分数据库需要在配置文件中开启远程访问,以允许指定用户从外部通过IP和端口访问。不同数据库配置方式不同,请查看其对应的官方文档。
步骤五:ECS安全组配置
阿里云ECS通过安全组配置来实现防火墙能力,您需要在ECS的安全组中开放数据库端口给DataWorks资源组所在VPC,从而允许DataWorks资源组访问ECS中部署的服务。
前往云服务器管理控制台,在页面顶部切换至目标ECS所在地域。
在页面左侧单击
,找到已部署MySQL数据库的ECS实例,单击实例名称,进入实例详情页。在顶部切换至安全组页签,单击安全组名称,进入安全组详情页。
在访问规则区域,单击增加规则,配置如下关键参数(未说明参数保持默认即可)。
访问来源:填写DataWorks资源组绑定的交换机网段。
端口:选择ECS中部署的数据库的对应端口,例如MySQL需开放
3306
端口。
验证网络连通性
登录DataWorks控制台,切换至目标地域后,单击左侧导航栏的 ,在下拉框中选择对应工作空间后单击进入数据集成。
在左侧导航栏单击数据源,然后在数据源列表单击新增数据源,根据实际情况选择数据源并配置相关连接参数。
在底部资源组列表中,选择已与数据源打通网络的资源组,单击测试连通性。
说明如果测试连通性结果为无法通过,可使用连通性诊断工具自助解决。如仍无法连通资源组与数据源,请提交工单处理。
配置案例
假设MySQL数据库部署在账号A位于华东1(杭州)的ECS实例中,在账号B的华东2(上海)地域开通了DataWorks,配置网络连通的操作如下。
1. 基本信息
参数 | 数据源(部署MySQL数据库的ECS实例) | DataWorks资源组 |
账号 | 账号A | 账号B |
地域 | 华东1(杭州) | 华东2(上海) |
VPC |
ECS基本信息页: |
资源组网络设置页: |
2. 网络打通
本案例以VPC对等连接为例,配置ECS与DataWorks网络连通。
如果在配置网络打通过程中遇到问题,请提交工单联系对应云产品技术支持处理。
登录账号A,访问VPC对等连接控制台,在页面顶部切换地域至华东1(杭州),然后单击创建对等连接,配置相关参数。
以下为本案例所需配置的关键参数,未说明参数保持默认即可。
参数
配置说明及示例
对等连接名称
自定义名称,本案例配置为
Account_A to Account_B
。发起端VPC实例
账号A中ECS所在的VPC,本案例选择
Account_A_hangzhou_VPC
。接收端账号类型
本案例选择
跨账号
。接收端主账号UID
填写账号B的主账号UID。
接收端地域类型
本案例选择
跨地域
。接收端地域
账号B中DataWorks空间及资源组所在地域,选择
华东2(上海)
。接收端VPC实例
手动填写账号B中DataWorks资源组所在VPC(
Account_B_shanghai_VPC
)的VPC ID。单击确定,完成对等连接配置并自动进入对等连接基本信息页,此时,对等连接状态为对端接收中。
登录账号B,访问VPC对等连接控制台,在页面顶部切换地域至华东2(上海),即可看到一条与账号A中相同的对等连接记录,单击操作列的接收。接收后,对等连接状态将变更为已激活。
单击接收端VPC实例下的配置路由条目。在配置路由条目对话框中,自定义路由条目名称,并将目标网段配置为发起端(ECS)的VPC网段,本案例配置为
192.168.0.0/16
。登录账号A,访问VPC对等连接控制台,在页面顶部切换地域至华东1(杭州),找到已创建的对等连接。
单击发起端VPC实例下的配置路由条目。在配置路由条目对话框中,自定义路由条目名称,并将目标网段配置为接收端(DataWorks资源组)的VPC网段,本案例配置为
172.16.0.0/12
。
3. DataWorks资源组添加路由
登录账号B,前往DataWorks资源组列表页,找到目标资源组,单击右侧操作列的网络设置。
在对应功能模块下找到已绑定的VPC,单击右侧操作列的自定义路由。
单击新增路由,连接方式选择为指定网段,目的网段配置为ECS的交换机网段(本案例为
192.168.6.0/24
)。
4. MySQL数据库开启远程访问
连接部署MySQL数据库的ECS,为数据库开启远程访问。
以下命令仅适用于部署在Linux环境中的MySQL 8.0数据库,其他操作系统及MySQL版本请自行适配。
查找
my.cnf
配置文件位置(默认安装时一般位于/etc/my.cnf
)。find / -name my.cnf
使用
vim /etc/my.cnf
命令编辑配置文件(请根据上一步实际查询结果替换my.cnf
路径)。在配置文件最后,按
i
键在[mysqld]
下添加如下配置:bind-address=0.0.0.0
按
Esc
,然后输入:wq!
保存并退出。执行
systemctl restart mysqld
命令重启服务。创建一个用户,用于在DataWorks侧配置数据源时,使用此用户远程连接MySQL数据库。
使用
mysql -u root -p
命令,通过管理员登录数据库。创建用户并设置密码。
-- "dataworks_user"为用户名,您可以自定义。 -- "%"表示可以从任意IP访问,您也可以设置为指定IP进行精细控制。 -- "StrongPassword123!"为用户密码,您可以自定义。 CREATE USER 'dataworks_user'@'%' IDENTIFIED BY 'StrongPassword123!';
授予用户数据库权限。
-- 以下命令执行任意一个即可。 -- 授予用户所有权限(谨慎使用)。 GRANT ALL PRIVILEGES ON *.* TO 'dataworks_user'@'%' WITH GRANT OPTION; -- 授予用户指定数据库(如mydatabase)权限。 GRANT ALL PRIVILEGES ON mydatabase.* TO 'dataworks_user'@'%' WITH GRANT OPTION;
执行
FLUSH PRIVILEGES;
命令刷新权限后退出数据库(exit
)。验证远程连接。
mysql -u dataworks_user -h <ECS的主私网IP地址> -p
5. ECS安全组配置
登录账号A,前往云服务器管理控制台,在页面顶部切换至华东1(杭州)。
在页面左侧单击
,找到已部署MySQL数据库的ECS实例,单击实例名称,进入实例详情页。在顶部切换至安全组页签,单击安全组名称,进入安全组详情页。
在访问规则区域,单击增加规则,配置如下关键参数(未说明参数保持默认即可)。
访问来源:填写DataWorks资源组的交换机网段(本案例为
172.16.66.0/24
)。端口:选择ECS中部署的数据库的对应端口(本案例为
3306
)。
6. 测试连通性
登录账号B。
登录DataWorks控制台,切换至目标地域后,单击左侧导航栏的 ,在下拉框中选择对应工作空间后单击进入数据集成。
在左侧导航栏单击数据源,进入数据源列表页,然后单击新增数据源。
选择MySQL类型数据源,配置数据源的相关信息。
配置模式选择连接串模式。
主机地址ID填写ECS实例的私网IP地址(本案例为
192.168.6.172
)。端口号配置为
3306
。数据库名称配置为已有的数据库名。
用户名和密码配置为4. MySQL数据库开启远程访问步骤中创建好的
dataworks_user
用户和密码。
在连接配置处,单击工作空间已绑定资源组后的测试连通性,查看结果是否为可连通。
说明如果测试连通性结果为无法通过,可使用连通性诊断工具自助解决。如仍无法连通资源组与数据源,请提交工单处理。
相关文档
网络连通的常见问题,请参见资源组操作及网络连通。