最近更新时间:2023.10.20 10:08:39
首次发布时间:2022.09.01 09:56:20
本场景介绍如何通过数据库传输服务 DTS 创建公网自建 PostgreSQL 数据订阅任务。
已自主搭建 PostgreSQL 数据库,且此数据库可通过公网访问。
如果通过火山引擎 ECS 自建 Kafka 的方式消费数据,则需要在 ECS 上完成自建 Kafka 的部署。如果通过消息队列 Kafka 版消费数据,则需要提前创建 Kafka 实例和 Topic。详细信息,请参见创建 Kafka 实例和创建 Topic。
当通过消息队列 RocketMQ 版消费数据时,需提前创建 RocketMQ 实例和密钥。详细信息,请参见创建 RocketMQ 实例和创建密钥。
在通过云原生消息引擎消费数据时,需提前准备以下环境:
白名单与访问权限:
如果需要通过火山引擎 ECS 自建 Kafka 的方式订阅数据,您需要添加 DTS 服务器的 IP 地址(100.64.0.0/10)到 ECS 的安全组规则中。
如果源库部署在火山引擎 ECS 中,且源库开启了访问限制,您需要在 ECS 的安全组规则中添加 DTS 服务器的 IP 地址。
网络连通性:创建数据订阅任务之前,请确认源库和消费端的网络连通性与服务可用性。
您还可以根据预检查项中的说明,来检查源库和目标库中各迁移对象做相应准备。更多详情,请参见预检查项(PostgreSQL)。
限制类 | 说明 |
---|---|
源数据库限制 | 数据库版本:当前支持 10、11 和 12 版本的 PostgreSQL 实例。 |
消费端限制 |
|
其他限制 |
操作类型 | SQL 操作语句 |
---|---|
DML | INSERT、UPDATE、DELETE |
DDL | CREATE TABLE、ALTER TABLE、DROP TABLE、TRUNCATE TABLE、CREAT INDEX、DROP INDEX、CREATE SEQUENCE、ALTER SEQUENCE、DROP SEQUENCE、DROP RULE |
登录 DTS 控制台。
在顶部菜单栏,选择项目和地域。
在左侧导航栏,单击数据订阅。
在数据订阅列表页面,单击创建订阅。
在配置源库页面,配置以下参数信息。
配置数据订阅任务名称和链路规格,如下表所示。
参数 | 说明 |
---|---|
任务名称 | (可选)自定义订阅任务名称。命名规则如下:
|
链路规格 | 按需选择订阅任务的链路规格,当前支持 Compact 和 Standard。 说明 成功创建任务后,不支持修改任务的链路规格。关于链路规格的详细信息,请参见产品规格。 |
配置数据订阅基本配置信息,如下表所示。
参数 | 说明 |
---|---|
实例类型 | 选择 PostgreSQL。 |
接入方式 | 选择公网自建 PostgreSQL。 说明 在订阅公网自建 PostgreSQL 实例时,您需要提前在源端的白名单或安全组策略中,添加 DTS IP 段的访问权限。单击查看 DTS IP 段查看和复制 IP 段。 |
主机地址 | 输入源自建实例的主机地址。 |
端口 | 输入源自建实例的端口号。 |
数据库名称 | 输入源自建实例的数据库名称。 |
数据库账号 | 输入源自建实例的数据库账号信息。 |
数据库密码 | 输入源自建实例的数据库账号密码。 |
单击测试连接,验证是否可以成功连接的实例。
当测试连接失败时,根据失败提示信息修改相关配置后,再次单击测试连接,验证是否可以成功连接源库。具体提示信息如下:
连接认证失败,请检查网络是否正常:当出现该报错提示时,请确认网络的连通性。
数据订阅投递信息
根据实际情况,按需选择数据订阅投递类型:
内置中间件
订阅数据投递设置为订阅内置中间件时,需填写以下配置。
参数 | 描述 |
---|---|
私有网络 | 从下拉列表中选择目标私有网络。 |
子网 | 从下拉列表中选择目标私有网络内的子网。 说明 目标私有网络内的子网至少要包含 1 个可用 IP。 |
自有中间件
订阅数据投递设置为客户自有中间件时,需填写以下配置。
说明
在订阅火山引擎 ECS 自建 Kafka时,您需要提前在源端的白名单或安全组策略中,添加 DTS IP 段的访问权限。单击查看 DTS IP 段查看和复制 IP 段。
接入方式 | 参数 | 说明 |
---|---|---|
火山引擎 ECS 自建 Kafka | Broker | 输入所有 Broker 的 IP 地址及端口号,格式为 |
Topic | 输入目标 Topic 信息。 | |
私有网络 | 从下拉列表中选择目标 VPC。 | |
Kafka 用户 | 输入 Kafka 用户名。 说明 仅支持 SASL 认证且认证机制为 PLAIN,此处应指定为 PLAIN 机制的用户名。 | |
密码 | 输入 Kafka 用户密码。 | |
消息队列 Kafka 版 | Kafka 实例 | 从下拉列表中选择目标实例。 |
Topic | 从下拉列表中选择目标 Topic 信息。 | |
Kafka 用户 | 输入 Kafka 用户名。 说明 仅支持 SASL 认证且认证机制为 PLAIN,此处应指定为 PLAIN 机制的用户名。 | |
密码 | 输入 Kafka 用户密码。 | |
消息队列 RocketMQ 版 | RocketMQ 实例 | 从下拉列表中选择目标实例。 |
Topic | 从下拉列表中选择目标 Topic 信息。 | |
AccessKey ID | 输入密钥的 AccessKey ID。关于密钥的详细信息,请参见管理密钥。 | |
AccessKey Secret | 输入密钥的 AccessKey Secret。 | |
云原生消息引擎 | BMQ 实例 | 从下拉列表中选择目标实例。 |
Topic | 从下拉列表中选择目标 Topic 信息。 | |
BMQ 用户 | 输入云原生消息引擎 BMQ 用户名。 | |
数据库密码 | 输入云原生消息引擎 BMQ 用户密码。 |
单击测试连接,验证是否可以成功连接实例。
当订阅数据投递选择的是客户自有中间件时,配置相关参数信息后,然后单击测试连接。
说明
当测试连接失败时,根据失败提示信息修改相关配置后,再次测试是否可以成功连接实例。具体提示信息如下:
连接认证失败,请检查用户名和密码是否正确
连接认证失败,无法正常创建连接,请联系客服:当出现该报错提示时,请提交工单联系技术人员。
无效的 IP 地址:当出现该报错提示时,请确认 IP 地址的正确性。
连接认证失败,请检查网络是否正常:当您将消息订阅到火山引擎 ECS 自建 Kafka 时,才会出现该报错提示。当出现该报错提示时,请确认网络的连通性。
参数 | 说明 |
---|---|
项目 | (可选)从下拉列表中选择该任务所属项目,默认在 default(默认项目) 下。您也可以单击创建新项目,创建新的项目。详细操作,请参见新建项目。 |
标签 | (可选)单击添加标签,设置标签键和标签值,为实例添加标签。标签的键值对规则如下:
说明
|
计费方式 | 按需选择计费方式,当前支持按量计费和包年包月两种计费方式。 说明 关于计费的详细信息,请参见计费说明。 |
购买时长 | 按需选择包年包月的购买时长。 说明 在计费方式选择包年包月时,支持设置购买时长。 |
单击下一步:配置订阅对象。
在配置订阅对象页面,配置以下参数信息。
说明
参数 | 说明 | |
---|---|---|
基本信息 | 订阅格式 | 选择数据订阅格式。支持火山引擎 Proto 、Canal Proto 和 Canal JSON 订阅格式。关于订阅格式的详细信息,请参见数据订阅格式。 说明 Canal JSON 订阅格式当前属于邀测阶段,如需使用请提交工单联系技术支持。 |
Kafka Partition 策略 | 按需选择目标 Topic 的 Partition 接收策略。支持以下接收策略:
注意
| |
RocketMQ 队列策略 | 按需选择目标 Topic 的队列接收策略。支持以下接收策略:
注意
| |
BMQ Partition 接受策略 | 按需选择目标 Topic 的 Partition 接收策略。支持以下接收策略:
注意
| |
订阅类型 | 当前仅支持勾选增量订阅。 | |
订阅对象 | 在订阅对象中选择待订阅的对象。选择目标订阅对象后,您可以在右侧已选择对象框中再次确认需要订阅的对象。同时,如果在订阅对象区域勾选了整库,则在已选择对象区域不支持展开该数据库。 | |
高级配置 | 开启 ETL 配置 | 选择是否开启 ETL 功能。关于ETL的详细信息,请参见 ETL 简介。
说明
|
错误重试时间 | 源库或目标库断连后,若能在该时间内重新连上,订阅任务即可自动恢复。取值范围:600~86400,单位:秒(s)。默认值为 7200 秒。 |
单击预检查。
当预检查结果存在告警或失败时,您可以根据结果提示执行以下操作:
单击操作列的详情,查看详细的告警和失败信息,并根据告警或失败信息修改库表后,单击重试。
单击操作列的忽略,忽略本次告警继续启动订阅任务。同时,也可以单击忽略全部,一键忽略全部告警信息。
说明
当预检查结果失败时,请勿忽略本次告警。
选择忽略告警并启动订阅任务,可能会存在某些隐患,具体信息,请参见界面提示。
关于预检查的具体说明,请参见预检查项(PostgreSQL)。
在预检查页面右下角,单击确认订单。
根据创建任务的计费类型,选择配置方式:
按量付费
在确认订单配置向导页面,再次确认配置信息。阅读《数据库产品和服务条款》并勾选我已阅读并同意《数据库产品和服务条款》,然后单击创建并启动任务。
包年包月
在确认订单配置向导页面,再次确认配置信息。阅读《数据库产品和服务条款》并勾选我已阅读并同意《数据库产品和服务条款》,然后单击创建并启动任务。
在确认订单信息配置向导页面,确认实例的计费信息。
(可选)单击代金券兑换,在代金券兑换对话框,输入代金券兑换码后单击兑换。
(可选)在代金券区域,按需勾选可用代金券,单次仅支持选中一张,即可抵扣部分费用。也可不使用代金券。
单击下一步。
说明
在支付完成配置向导页面,显示支付成功则任务创建成功。
成功创建数据订阅任务后,您可以在数据库传输服务 DTS 控制台的订阅任务列表查看到数据订阅任务。
API | 描述 |
---|---|
CreateTransmissionTask | 调用 CreateTransmissionTask 接口创建数据库传输服务任务。 |
ModifyTransmissionTask | 调用 ModifyTransmissionTask 接口修改传输任务。 |