方案四:部署在ECS中的数据源网络连通

本文以部署在阿里云ECS中的MySQL为例,为您介绍数据源如何与DataWorks进行网络连通。

适用场景

如果您的数据源满足以下条件,推荐使用本方案。

  • 数据源部署在阿里云ECS中。

方案说明

ECSDataWorks同主账号同地域

部署数据源的ECSDataWorks同主账号、同地域时,推荐使用VPC网络(内网)连接,将DataWorks工作空间的资源组与ECS实例部署在同一VPC下,即可实现网络互通。

ECSDataWorks不同主账号、同主账号不同地域

部署数据源的ECSDataWorks不同主账号同主账号、不同地域时,推荐使用VPC网络(内网)连接,使用网络连通工具(云企业网VPC对等连接)将DataWorks工作空间的资源组与ECS所在VPC打通,实现网络互通。

网络连通示意图

ECSDataWorks同主账号同地域

幻灯片5

ECSDataWorks同主账号不同地域

幻灯片6

ECSDataWorks不同主账号

幻灯片7

前提条件

计费说明

根据选择的网络连通工具不同,计费存在差异,详情请参见云企业网计费说明对等连接计费说明

说明

使用对等连接时,如果ECSDataWorks资源组位于不同账号,但地域相同,则不收取任何费用。

配置网络连通

说明

以下为数据源与DataWorks网络连通的通用配置流程,便于您快速掌握网络连通的核心逻辑。如需了解更多配置细节,本文也提供了具体的配置案例供您参考。

步骤一:获取基本信息

ECSDataWorks同主账号同地域

数据源侧
  • ECSVPC和交换机信息

    1. 前往云服务器管理控制台,在页面顶部切换至目标ECS所在地域。

    2. 在页面左侧单击实例与镜像 > 实例,找到已部署MySQL数据库的ECS实例,单击实例名称,进入实例详情页。

    3. 配置信息区域,获取专有网络(本示例命名为VPC 1)和交换机信息。

      image

DataWorks
  • 资源组绑定的VPC和交换机信息

    1. 前往DataWorks资源组列表页,找到目标资源组,单击右侧操作列的网络设置

    2. 在对应功能模块下查看绑定的专有网络交换机信息。

      例如,业务需要将部署在ECS中的MySQLDataWorks连通进行数据同步,则在数据调度 & 数据集成下查看对应的专有网络(本示例命名为VPC 2)和交换机信息。

      image

ECSDataWorks同主账号、不同地域

数据源侧
  • 地域信息:本文以杭州地域的ECS为例。

  • ECSVPC和信息

    1. 前往云服务器管理控制台,在页面顶部切换至目标ECS所在地域。

    2. 在页面左侧单击实例与镜像 > 实例,找到已部署MySQL数据库的ECS实例,单击实例名称,进入实例详情页。

    3. 配置信息区域,获取专有网络交换机信息。

      image

DataWorks
  • 地域信息:本文以上海地域的DataWorks空间和资源组为例。

  • 资源组绑定的VPC和交换机信息

    1. 前往DataWorks资源组列表页,找到目标资源组,单击右侧操作列的网络设置

    2. 在对应功能模块下查看绑定的专有网络交换机信息。

      例如,业务需要将RDS MySQLDataWorks连通进行数据同步,则在数据调度 & 数据集成下查看对应的专有网络交换机信息。

      image

ECSDataWorks不同主账号

数据源侧
  • 账号信息:本文以账号A为例

  • 地域信息:本文以杭州地域的ECS为例。

  • ECSVPC和交换机信息

    1. 前往云服务器管理控制台,在页面顶部切换至目标ECS所在地域。

    2. 在页面左侧单击实例与镜像 > 实例,找到已部署MySQL数据库的ECS实例,单击实例名称,进入实例详情页。

    3. 配置信息区域,获取专有网络交换机信息。

      image

DataWorks
  • 账号信息:本文以账号B为例

  • 地域信息:本文以上海地域的DataWorks空间和资源组为例。

  • 资源组绑定的VPC和交换机网段信息

    1. 前往DataWorks资源组列表页,找到目标资源组,单击右侧操作列的网络设置

    2. 在对应功能模块下查看绑定的专有网络交换机信息。

      例如,业务需要将RDS MySQLDataWorks连通进行数据同步,则在数据调度 & 数据集成下查看对应的专有网络交换机信息。

      image

步骤二:网络打通

ECSDataWorks同账号同地域

  • 如果VPC 1VPC 2相同,则表示ECSDataWorks资源组部署在同一VPC,网络默认已互通。

  • 如果VPC 1VPC 2不同,则需要在DataWorks资源组网络设置页面,单击新增绑定,将VPC 1绑定到资源组,使DataWorks资源组与ECS部署在同一VPC下。

ECSDataWorks同主账号、不同地域

说明

如果在配置网络打通过程中遇到问题,请提交工单联系对应云产品技术支持处理。

ECSDataWorks不同主账号

说明

如果在配置网络打通过程中遇到问题,请提交工单联系对应云产品技术支持处理。

步骤三:DataWorks资源组添加路由

同主账号不同地域、不同主账号场景下,还需要在DataWorks资源组中添加路由,指向ECS所在交换机网段。

  1. 前往DataWorks资源组列表页,找到目标资源组,单击右侧操作列的网络设置

  2. 在对应功能模块下找到已绑定的VPC,单击右侧操作列的自定义路由

  3. 单击新增路由,连接方式选择为指定网段目的网段配置为ECS的交换机网段。

步骤四:(可选)数据库开启远程访问

部分数据库需要在配置文件中开启远程访问,以允许指定用户从外部通过IP和端口访问。不同数据库配置方式不同,请查看其对应的官方文档。

例如:4. MySQL数据库开启远程访问

步骤五:ECS安全组配置

阿里云ECS通过安全组配置来实现防火墙能力,您需要在ECS的安全组中开放数据库端口给DataWorks资源组所在VPC,从而允许DataWorks资源组访问ECS中部署的服务。

  1. 前往云服务器管理控制台,在页面顶部切换至目标ECS所在地域。

  2. 在页面左侧单击实例与镜像 > 实例,找到已部署MySQL数据库的ECS实例,单击实例名称,进入实例详情页。

  3. 在顶部切换至安全组页签,单击安全组名称,进入安全组详情页。

  4. 访问规则区域,单击增加规则,配置如下关键参数(未说明参数保持默认即可)。

    • 访问来源:填写DataWorks资源组绑定的交换机网段。

    • 端口:选择ECS中部署的数据库的对应端口,例如MySQL需开放3306端口。

验证网络连通性

  1. 登录DataWorks控制台,切换至目标地域后,单击左侧导航栏的数据集成 > 数据集成,在下拉框中选择对应工作空间后单击进入数据集成

  2. 在左侧导航栏单击数据源,然后在数据源列表单击新增数据源,根据实际情况选择数据源并配置相关连接参数。

  3. 在底部资源组列表中,选择已与数据源打通网络的资源组,单击测试连通性image

    说明

    如果测试连通性结果为无法通过,可使用连通性诊断工具自助解决。如仍无法连通资源组与数据源,请提交工单处理。

配置案例

假设MySQL数据库部署在账号A位于华东1(杭州)的ECS实例中,在账号B的华东2(上海)地域开通了DataWorks,配置网络连通的操作如下。

1. 基本信息

参数

数据源(部署MySQL数据库的ECS实例)

DataWorks资源组

账号

账号A

账号B

地域

华东1(杭州)

华东2(上海)

VPC

  • ECS的主私网IP:192.168.6.172

  • VPC名称:Account_A_hangzhou_VPC

  • VPC网段:192.168.0.0/16

  • 交换机网段:192.168.6.0/24

ECS基本信息页:

image

  • VPC名称:Account_B_shanghai_VPC

  • VPC网段:172.16.0.0/12

  • 交换机网段:172.16.66.0/24

资源组网络设置页:

image

2. 网络打通

本案例以VPC对等连接为例,配置ECSDataWorks网络连通。

说明

如果在配置网络打通过程中遇到问题,请提交工单联系对应云产品技术支持处理。

  1. 登录账号A,访问VPC对等连接控制台,在页面顶部切换地域至华东1(杭州),然后单击创建对等连接,配置相关参数。

    以下为本案例所需配置的关键参数,未说明参数保持默认即可。

    参数

    配置说明及示例

    对等连接名称

    自定义名称,本案例配置为Account_A to Account_B

    发起端VPC实例

    账号AECS所在的VPC,本案例选择Account_A_hangzhou_VPC

    接收端账号类型

    本案例选择跨账号

    接收端主账号UID

    填写账号B的主账号UID。

    接收端地域类型

    本案例选择跨地域

    接收端地域

    账号BDataWorks空间及资源组所在地域,选择华东2(上海)

    接收端VPC实例

    手动填写账号BDataWorks资源组所在VPC(Account_B_shanghai_VPC)的VPC ID。

  2. 单击确定,完成对等连接配置并自动进入对等连接基本信息页,此时,对等连接状态对端接收中

  3. 登录账号B,访问VPC对等连接控制台,在页面顶部切换地域至华东2(上海),即可看到一条与账号A中相同的对等连接记录,单击操作列的接收。接收后,对等连接状态将变更为已激活

  4. 单击接收端VPC实例下的配置路由条目。在配置路由条目对话框中,自定义路由条目名称,并将目标网段配置为发起端(ECS)的VPC网段,本案例配置为192.168.0.0/16

    image

  5. 登录账号A,访问VPC对等连接控制台,在页面顶部切换地域至华东1(杭州),找到已创建的对等连接。

  6. 单击发起端VPC实例下的配置路由条目。在配置路由条目对话框中,自定义路由条目名称,并将目标网段配置为接收端(DataWorks资源组)的VPC网段,本案例配置为172.16.0.0/12

    image

3. DataWorks资源组添加路由

  1. 登录账号B,前往DataWorks资源组列表页,找到目标资源组,单击右侧操作列的网络设置

  2. 在对应功能模块下找到已绑定的VPC,单击右侧操作列的自定义路由

  3. 单击新增路由,连接方式选择为指定网段目的网段配置为ECS的交换机网段(本案例为192.168.6.0/24)。

4. MySQL数据库开启远程访问

连接部署MySQL数据库的ECS,为数据库开启远程访问。

说明

以下命令仅适用于部署在Linux环境中的MySQL 8.0数据库,其他操作系统及MySQL版本请自行适配。

  1. 查找my.cnf配置文件位置(默认安装时一般位于/etc/my.cnf)。

    find / -name my.cnf
  2. 使用vim /etc/my.cnf命令编辑配置文件(请根据上一步实际查询结果替换my.cnf路径)。

  3. 在配置文件最后,按i键在[mysqld]下添加如下配置:

    bind-address=0.0.0.0
  4. Esc,然后输入:wq!保存并退出。

  5. 执行systemctl restart mysqld命令重启服务。

  6. 创建一个用户,用于在DataWorks侧配置数据源时,使用此用户远程连接MySQL数据库。

    1. 使用mysql -u root -p命令,通过管理员登录数据库。

    2. 创建用户并设置密码。

      -- "dataworks_user"为用户名,您可以自定义。
      -- "%"表示可以从任意IP访问,您也可以设置为指定IP进行精细控制。
      -- "StrongPassword123!"为用户密码,您可以自定义。
      CREATE USER 'dataworks_user'@'%' IDENTIFIED BY 'StrongPassword123!';
    3. 授予用户数据库权限。

      -- 以下命令执行任意一个即可。
      
      -- 授予用户所有权限(谨慎使用)。
      GRANT ALL PRIVILEGES ON *.* TO 'dataworks_user'@'%' WITH GRANT OPTION;
      
      -- 授予用户指定数据库(如mydatabase)权限。
      GRANT ALL PRIVILEGES ON mydatabase.* TO 'dataworks_user'@'%' WITH GRANT OPTION;
    4. 执行FLUSH PRIVILEGES;命令刷新权限后退出数据库(exit)。

    5. 验证远程连接。

      mysql -u dataworks_user -h <ECS的主私网IP地址> -p

5. ECS安全组配置

  1. 登录账号A,前往云服务器管理控制台,在页面顶部切换至华东1(杭州)

  2. 在页面左侧单击实例与镜像 > 实例,找到已部署MySQL数据库的ECS实例,单击实例名称,进入实例详情页。

  3. 在顶部切换至安全组页签,单击安全组名称,进入安全组详情页。

  4. 访问规则区域,单击增加规则,配置如下关键参数(未说明参数保持默认即可)。

    • 访问来源:填写DataWorks资源组的交换机网段(本案例为172.16.66.0/24)。

    • 端口:选择ECS中部署的数据库的对应端口(本案例为3306)。

6. 测试连通性

  1. 登录账号B

  2. 登录DataWorks控制台,切换至目标地域后,单击左侧导航栏的数据集成 > 数据集成,在下拉框中选择对应工作空间后单击进入数据集成

  3. 在左侧导航栏单击数据源,进入数据源列表页,然后单击新增数据源

  4. 选择MySQL类型数据源,配置数据源的相关信息。

    • 配置模式选择连接串模式

    • 主机地址ID填写ECS实例的私网IP地址(本案例为192.168.6.172)。

    • 端口号配置为3306

    • 数据库名称配置为已有的数据库名。

    • 用户名密码配置为4. MySQL数据库开启远程访问步骤中创建好的dataworks_user用户和密码。

  5. 连接配置处,单击工作空间已绑定资源组后的测试连通性,查看结果是否为可连通

    image

    说明

    如果测试连通性结果为无法通过,可使用连通性诊断工具自助解决。如仍无法连通资源组与数据源,请提交工单处理。

相关文档

网络连通的常见问题,请参见资源组操作及网络连通