文档首页> 数据湖探索 DLI> 快速入门> 创建增强型跨源连接访问RDS
更新时间:2024-05-22 GMT+08:00
分享

创建增强型跨源连接访问RDS

操作场景

本例以Spark SQL作业访问RDS数据库表为例,介绍DLI服务创建增强型跨源连接访问RDS的操作步骤。

操作流程

创建增强型跨源连接访问云数据库RDS,样例场景需要创建RDS MySQL实例,RDS数据库表,以及DLI增强型跨源连接,通过Spark SQL作业访问RDS数据库表。操作步骤如下:

步骤1:创建RDS MySQL实例

步骤2:创建RDS数据库表

步骤3:创建队列

步骤4:创建增强型跨源连接

步骤5:提交SQL作业

步骤1:创建RDS MySQL实例

本样例中,假设作业名称为“JobSample”,采用RDS服务作为数据源,创建RDS MySQL实例,具体操作请参见《云数据库MySQL快速入门》中的MySQL快速入门章节。
  1. 登录RDS管理控制台。
  2. 在管理控制台左上角选择区域和项目。
  3. 在“实例管理”页面,单击“购买数据库实例”。
  4. 在“服务选型”页面,选择计费模式,填写并选择实例相关信息后,单击“立即购买”。
    相关信息如下:
    • 计费模式:按需计费
    • 区域:租户当前所在区域,也可在页面左上角切换
    • 实例名称:默认
    • 数据库引擎:MySQL
    • 数据库版本:8.0
    • 实例类型:单机
    • 存储类型:SSD云盘
    • 可用区:默认
    • 时区:默认
    • 性能规格:默认
    • 存储空间:默认
    • 磁盘加密:不加密
    • 虚拟私有云:创建VPC和子网的操作指导请参考创建虚拟私有云和子网,如果需要在已有VPC上创建和使用新的子网,请参考为虚拟私有云创建新的子网
      • 创建的VPC与使用的RDS服务应在相同的区域。
      • 创建VPC和子网时,如无特殊需求,配置参数使用默认配置即可。
    • 数据库端口:创建主实例加只读实例时,只读实例和主实例数据端口保持一致。
    • 安全组:创建安全组的操作指导请参考创建安全组,为安全组添加规则的操作指导请参考添加安全组规则
    • 设置密码:现在设置
    • 管理员账号:root
    • 管理员密码: 密码应为8~32个字符。密码中需要包含大写字母、小写字母、数字或特殊字符中的三种,特殊字符包括“~ !@ # $ * % ^ - _ = + ( ) ? , & ”。
    • 确认密码:输入同样的密码
    • 参数模板:默认
    • 表名大小写: 不区分大小写
    • 企业项目:default
    • 标签:不设置
    • 购买时长:按需购买
    • 购买数量:1
    • 只读实例:暂不购买
  5. 单击“立即购买”,进入规格确认页面。
  6. 单击“提交”,完成购买RDS MySQL实例。
  7. 实例创建成功后,用户可以在“实例管理”页面对其进行查看和管理。

    创建实例过程中,状态显示为“创建中”,创建完成的实例状态显示为“正常”。您可以通过“任务中心”查看详细进度和结果。

步骤2:创建RDS数据库表

  1. 登录RDS管理控制台。
  2. 在管理控制台左上角选择区域和项目。
  3. 在“实例管理页面”,找到您已经创建的RDS实例,获取其内网地址。
    图1 内网地址
  4. 单击所创建RDS实例的“登录”,跳转至“数据管理服务-DAS”。输入相关账户信息,单击“测试连接”。显示连接成功后,单击“登录”,进入“实例登录”页面。
    图2 登录RDS
    图3 实例登录
  5. 登录RDS实例后,单击“新建数据库”,创建名称为“dli_demo”的数据库。
    图4 创建数据库
  6. 单击“SQL操作”>“SQL查询”,执行如下SQL创建测试用MySQL表。
    CREATE TABLE `dli_demo`.`tabletest` (
    	`id` VARCHAR(32) NOT NULL,
    	`name` VARCHAR(32) NOT NULL,
    	PRIMARY KEY (`id`)
    )	ENGINE = InnoDB
    	DEFAULT CHARACTER SET = utf8mb4;

步骤3:创建队列

运行DLI SQL跨源作业,不能使用系统已有的default队列,需要您创建SQL队列,例如创建名为“test”的队列。创建队列详细介绍请参考创建队列

  1. 登录DLI 管理控制台。
  2. 在DLI管理控制台总览页,单击右上角“购买队列”进入购买队列页面。
  3. 配置参数。
    • 计费模式:按需计费
    • 当前区域:默认区域
    • 项目:默认或按需选择
    • 队列:test
    • 队列类型:SQL队列。勾选“专属资源模式”。
    • AZ策略:单AZ
    • CPU架构:X86
    • 规格:16CUs
    • 企业项目:default
    • 描述:不填
    • 高级配置:自定义
    • 网段:配置的网段不能与RDS的子网网段冲突
    • 队列特性:基础型
    • 标签:不填
  4. 单击“立即购买”,确认配置。
  5. 配置确认无误,提交请求。

步骤4:创建增强型跨源连接

创建增强型跨源连接具体操作请参考创建增强型跨源连接

  • 增强型跨源仅支持包年包月队列和按需专属队列。
  • 绑定跨源的DLI队列网段和数据源网段不能重合。
  • 系统default队列不支持创建跨源连接。
  • 访问跨源表需要使用已经创建跨源连接的队列。
  1. 在DLI管理控制台左侧导航栏中,单击“资源管理 > 队列管理”,可以在队列列表中看到您所创建的SQL队列test。
  2. 单击“全局配置”>“服务授权”,选中“VPC Administrator”,单击“更新委托权限”,赋予DLI操作用户VPC资源的权限,用于创建VPC的“对等连接”。
    图5 更新委托权限
  3. 在DLI管理控制台左侧导航栏中,选择“跨源管理”。
  4. 选择“增强型跨源”页签,单击左上角的“创建”按钮。配置参数:
    • 连接名称:dlirds
    • 弹性资源池:test

      如果创建增强型跨源连接时,不确定所绑定的队列,可先不绑定,等待跨源连接创建成功后,在对应跨源连接的“操作”列中,通过“更多 > 绑定队列”操作进行绑定,具体请参考绑定队列

    • 虚拟私有云:选择MySQL 实例所在的VPC

      在RDS控制台“实例管理”页面,单击对应实例名称,查看“连接信息”>“虚拟私有云”,即可获取对应信息。

    • 子网:选择MySQL 实例所在的子网
    • 主机信息:可选参数,访问MRS的HBase集群时需要配置Zookeeper实例的主机名与对应的IP地址。

      在RDS控制台“实例管理”页面,单击对应实例名称,查看“连接信息”>“子网”,即可获取对应信息。

    • 标签:使用标签标识云资源。包括“标签键”和“标签值”。
  5. 单击“确定”,完成创建增强型跨源连接。
  6. 在“增强型跨源”页签,单击创建的连接名称:dlirds,查看对等连接ID及连接状态,连接状态为“已激活”表示连接成功。
  7. 测试队列与RDS实例连通性。
    1. 单击“队列管理”,选择您所绑定的队列,单击“操作”列中的“更多”>“测试地址连通性”。
      图6 检测地址连通性
    2. 输入RDS MySQL实例内网地址,进行网络连通性测试。

      在RDS控制台“实例管理”页面,单击对应实例名称,查看“连接信息”>“内网地址”,即可获取对应信息。

      测试结果显示可达,则DLI队列与MySQL实例的网络已经联通。

      图7 测试结果

      如果测试结果不可达,需要修改实例所在VPC的安全组规则。具体操作参考如下:

      • DLI管理控制台,单击“资源管理 > 队列管理”,选择绑定的队列,点开队列左边的箭头,查看队列详情,获取队列的网段信息。
      • 在RDS控制台“实例管理”页面,单击对应实例名称,查看“连接信息”>“数据库端口”,获取RDS数据库实例端口。
      • 单击“连接信息”>“安全组”对应的安全组名称,跳转到RDS实例安全组管理界面。单击“入方向规则 > 添加规则”,协议选择“TCP”,端口选择RDS数据库实例端口,源地址填写DLI队列的网段。单击“确定”完成配置。
        图8 安全组规则
      • 完成配置后,重新进行网络连通性测试。

步骤5:提交SQL作业

此示例中以SQL作业为例说明如何跨源访问RDS表。通过Spark批作业跨源访问RDS的样例代码,请参考《数据湖探索开发指南》>使用Spark作业跨源访问数据源>访问RDS

提交SQL作业具体步骤请参考创建并提交Spark SQL作业

  1. 在DLI管理控制台的左侧导航栏中,单击“SQL编辑器”,进入SQL作业编辑器页面。
  2. 在“SQL编辑器”页面右侧的编辑窗口中,输入如下SQL语句创建数据库db1,单击“执行”。
    create database db1;
  3. 在编辑窗口中,选择队列“test”和数据库“db1”。输入如下SQL语句创建表,向RDS表插入数据,以及查询数据,单击“执行”。
    根据界面显示的执行结果查询RDS表数据信息,整个操作完成。
    CREATE TABLE IF NOT EXISTS rds_test USING JDBC OPTIONS (
      'url' = 'jdbc:mysql://{{ip}}:{{port}}',  //RDS内网地址及端口
      'driver' = 'com.mysql.jdbc.Driver',
      'dbtable' = 'dli_demo.tabletest', //在RDS创建的库名及表名
      'pwd_auth_name'="xxxxx" // DLI侧创建的Password类型的跨源认证名称。使用跨源认证则无需在作业中配置账号和密码。
    )
    
    insert into rds_test VALUES ('123','abc');
    
    
    SELECT * from rds_test;
    

后续指引

完成增强型跨源连接访问RDS快速入门操作后,如果您想了解更多关于跨源连接的相关操作,建议您参考以下指引阅读。

分类

文档

说明

界面操作

跨源连接和跨源分析

提供跨源连接、分析相关的功能介绍和操作指导。

开发指南

跨源访问其他数据源

提供跨源访问CSS、DWS、HBase、OpenTSDB、RDS、Redis、Mongo等样例代码和开发指导。

增强型跨源API参考

提供增强型跨源相关API接口指导。

经典型跨源连接API参考

提供经典型跨源相关API接口指导。

分享:

    相关文档

    相关产品