ALIYUN::DTS::SubscriptionInstance

更新时间:2024-08-12 01:54:54

ALIYUN::DTS::SubscriptionInstance类型用于创建订阅实例和配置订阅通道。

说明

建议使用新版资源ALIYUN::DTS::Instance用于购买DTS实例和ALIYUN::DTS::SubscriptionJob2用于配置订阅通道。

语法

{
  "Type": "ALIYUN::DTS::SubscriptionInstance",
  "Properties": {
    "Configuration": Map,
    "SourceEndpointInstanceType": String,
    "Period": String,
    "PayType": String,
    "UsedTime": Integer,
    "Tags": List
  }
}

属性

属性名称

类型

必须

允许更新

描述

约束

属性名称

类型

必须

允许更新

描述

约束

Configuration

Map

配置信息。

更多信息,请参见Configuration属性

SourceEndpointInstanceType

String

创建数据订阅的实例类型。

取值:

  • MySQL(默认值)

  • PolarDB

  • DRDS

  • Oracle

Period

String

预付费实例的计费方式。

取值:

  • Year:包年。

  • Month:包月。

说明

当付费类型为Prepaid(预付费)时,该参数才有效且必须设置。

PayType

String

付费类型。

取值:

  • Postpaid:按量付费,默认付费类型。

  • Prepaid:预付费。

UsedTime

Integer

预付费实例购买时长。

取值:

  • 当计费方式为Year(包年)时,取值范围为1~5。

  • 当计费方式为Month(包月)时,取值范围为1~60。

说明

当付费类型为Prepaid(预付费)时,该参数才有效且必须设置。

Tags

List

用户自定义标签。

更多信息,请参见Tags属性

Tags语法

"Tags": [
  {
    "Value": String,
    "Key": String
  }
]

Tags属性

属性名称

类型

必须

允许更新

描述

约束

属性名称

类型

必须

允许更新

描述

约束

Key

String

标签键。

长度为1~128个字符。

不能以aliyunacs:开头,不能包含http://https://

Value

String

标签值。

长度为0~128个字符。

不能以aliyunacs:开头,不能包含http://https://

Configuration语法

"Configuration": {
  "SubscriptionDataType": Map,
  "SubscriptionInstanceName": String,
  "SubscriptionInstance": Map,
  "SourceEndpoint": Map,
  "SubscriptionInstanceNetworkType": String,
  "DbList": Map
}

Configuration属性

属性名称

类型

必须

允许更新

描述

约束

属性名称

类型

必须

允许更新

描述

约束

SubscriptionDataType

Map

订阅的数据类型。

更多信息,请参见SubscriptionDataType属性

SubscriptionInstanceName

String

订阅通道名称。

SubscriptionInstance

Map

订阅通道的网络配置。

更多信息,请参见SubscriptionInstance属性

SourceEndpoint

Map

订阅源实例的连接信息。

更多信息,请参见SourceEndpoint属性

SubscriptionInstanceNetworkType

String

订阅通道的网络类型。

取值:

  • classic:经典网络。

  • vpc:专有网络。

DbList

Map

订阅对象。

更多信息,请参见迁移、同步或订阅对象说明

TableIncludes语法

"TableIncludes": [
  {
    "TableName": String
  }
]

TableIncludes属性

属性名称

类型

必须

允许更新

描述

约束

属性名称

类型

必须

允许更新

描述

约束

TableName

String

待订阅的表名。

TableExcludes语法

"TableExcludes": [
  {
    "TableName": String
  }
]

TableExcludes属性

属性名称

类型

必须

允许更新

描述

约束

属性名称

类型

必须

允许更新

描述

约束

TableName

String

待订阅的库中不需要订阅的表名。

SubscriptionDataType语法

"SubscriptionDataType": {
  "DML": Boolean,
  "DDL": Boolean
}

SubscriptionDataType属性

属性名称

类型

必须

允许更新

描述

约束

属性名称

类型

必须

允许更新

描述

约束

DML

Boolean

是否订阅DML类型的数据。

取值:

  • true:订阅。

  • false:不订阅。

DDL

Boolean

是否订阅DDL类型的数据。

取值:

  • true:订阅。

  • false:不订阅。

SubscriptionInstance语法

"SubscriptionInstance": {
  "VPCId": String,
  "VSwitchId": String
}

SubscriptionInstance属性

属性名称

类型

必须

允许更新

描述

约束

属性名称

类型

必须

允许更新

描述

约束

VPCId

String

订阅通道的专有网络ID。

SubscriptionInstanceNetworkType参数值为vpc时,该参数有效。

VSwitchId

String

订阅通道的虚拟交换机ID。

SubscriptionInstanceNetworkType参数值为vpc时,该参数有效。

SourceEndpoint语法

"SourceEndpoint": {
  "Role": String,
  "OracleSID": String,
  "UserName": String,
  "OwnerID": String,
  "InstanceID": String,
  "IP": String,
  "Port": String,
  "DatabaseName": String,
  "InstanceType": String,
  "Password": String
}

SourceEndpoint属性

属性名称

类型

必须

允许更新

描述

约束

属性名称

类型

必须

允许更新

描述

约束

Role

String

当源实例是RDS实例且源实例与目标实例所属的阿里云账号不同时,该参数是源实例所属目标实例的阿里云账号的授权角色。

OracleSID

String

当源实例数据库类型为Oracle时,该参数为Oracle实例名称。

UserName

String

源实例数据库访问账号。

OwnerID

String

当源实例是RDS实例且源实例与目标实例所属的阿里云账号不同时,该参数是源RDS实例所属的阿里云账号的UID。

InstanceID

String

源实例ID。

IP

String

源实例的连接地址。

当源实例是自建数据库时,该参数必填。

Port

String

源实例端口。

当源实例是自建数据库时,该参数必填。

DatabaseName

String

创建连接时使用的数据库名称。

InstanceType

String

订阅源实例的实例类型。

取值:

  • RDS:阿里云RDS实例。

  • ECS:ECS自建数据库。

Password

String

源实例登录密码。

返回值

Fn::GetAtt

  • SubscriptionInstanceId:订阅实例ID。

  • VPCHost:订阅通道的专有网络地址。

  • PublicHost:订阅通道的公网地址。

  • PrivateHost:订阅通道的私网地址。

  • SubscribeTopic: 订阅通道的Topic。

示例

  • YAML格式

    ROSTemplateFormatVersion: '2015-09-01'
    Parameters:
      VpcId:
        Type: String
        AssociationProperty: ALIYUN::ECS::VPC::VPCId
      VSwitchId:
        Type: String
        AssociationProperty: ALIYUN::ECS::VSwitch::VSwitchId
        AssociationPropertyMetadata:
          VpcId: ${VpcId}
      RdsId:
        Type: String
        AssociationProperty: ALIYUN::RDS::Instance::InstanceId
    Resources:
      SubscriptionInstance:
        Type: ALIYUN::DTS::SubscriptionInstance
        Properties:
          SourceEndpointInstanceType: MySQL
          Configuration:
            SubscriptionObject:
              - DBName: DemoDB
            SubscriptionDataType:
              DDL: true
              DML: false
            SubscriptionInstanceName: TestSubscription
            SourceEndpoint:
              InstanceType: RDS
              UserName: DBAdmin
              Password: Admin@123!
              InstanceID:
                Ref: RdsId
            SubscriptionInstanceNetworkType: vpc
            SubscriptionInstance:
              VPCId:
                Ref: VpcId
              VSwitchId:
                Ref: VSwitchId
    Outputs:
      PublicHost:
        Description: Public host.
        Value:
          Fn::GetAtt:
            - SubscriptionInstance
            - PublicHost
      PrivateHost:
        Description: Private host.
        Value:
          Fn::GetAtt:
            - SubscriptionInstance
            - PrivateHost
      SubscriptionInstanceId:
        Description: The ID of Data subscription instance.
        Value:
          Fn::GetAtt:
            - SubscriptionInstance
            - SubscriptionInstanceId
      VPCHost:
        Description: VPC host.
        Value:
          Fn::GetAtt:
            - SubscriptionInstance
            - VPCHost
  • JSON格式

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "VpcId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::VPC::VPCId"
        },
        "VSwitchId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::VSwitch::VSwitchId",
          "AssociationPropertyMetadata": {
            "VpcId": "${VpcId}"
          }
        },
        "RdsId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::RDS::Instance::InstanceId"
        }
      },
      "Resources": {
        "SubscriptionInstance": {
          "Type": "ALIYUN::DTS::SubscriptionInstance",
          "Properties": {
            "SourceEndpointInstanceType": "MySQL",
            "Configuration": {
              "SubscriptionObject": [
                {
                  "DBName": "DemoDB"
                }
              ],
              "SubscriptionDataType": {
                "DDL": true,
                "DML": false
              },
              "SubscriptionInstanceName": "TestSubscription",
              "SourceEndpoint": {
                "InstanceType": "RDS",
                "UserName": "DBAdmin",
                "Password": "Admin@123!",
                "InstanceID": {
                  "Ref": "RdsId"
                }
              },
              "SubscriptionInstanceNetworkType": "vpc",
              "SubscriptionInstance": {
                "VPCId": {
                  "Ref": "VpcId"
                },
                "VSwitchId": {
                  "Ref": "VSwitchId"
                }
              }
            }
          }
        }
      },
      "Outputs": {
        "PublicHost": {
          "Description": "Public host.",
          "Value": {
            "Fn::GetAtt": [
              "SubscriptionInstance",
              "PublicHost"
            ]
          }
        },
        "PrivateHost": {
          "Description": "Private host.",
          "Value": {
            "Fn::GetAtt": [
              "SubscriptionInstance",
              "PrivateHost"
            ]
          }
        },
        "SubscriptionInstanceId": {
          "Description": "The ID of Data subscription instance.",
          "Value": {
            "Fn::GetAtt": [
              "SubscriptionInstance",
              "SubscriptionInstanceId"
            ]
          }
        },
        "VPCHost": {
          "Description": "VPC host.",
          "Value": {
            "Fn::GetAtt": [
              "SubscriptionInstance",
              "VPCHost"
            ]
          }
        }
      }
    }
  • 本页导读 (1)
  • 语法
  • 属性
  • Tags语法
  • Tags属性
  • Configuration语法
  • Configuration属性
  • TableIncludes语法
  • TableIncludes属性
  • TableExcludes语法
  • TableExcludes属性
  • SubscriptionDataType语法
  • SubscriptionDataType属性
  • SubscriptionInstance语法
  • SubscriptionInstance属性
  • SourceEndpoint语法
  • SourceEndpoint属性
  • 返回值
  • 示例
AI助理

点击开启售前

在线咨询服务

你好,我是AI助理

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