すべてのプロダクト
Search
ドキュメントセンター

Resource Orchestration Service:ALIYUN::DTS::SubscriptionInstance

最終更新日:Jan 16, 2025

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

いいえ

はい

変更追跡インスタンスの構成。

詳細については、構成プロパティ をご参照ください。

SourceEndpointInstanceType

String

いいえ

いいえ

変更追跡インスタンスのタイプ。

有効な値:

  • MySQL (デフォルト)

  • PolarDB

  • DRDS

  • Oracle

Period

String

いいえ

いいえ

変更追跡インスタンスのサブスクリプション期間の単位。

有効な値:

  • Year

  • Month

説明

PayType が Prepaid に設定されている場合は、このプロパティを指定する必要があります。

PayType

String

いいえ

いいえ

課金方法。

有効な値:

  • Postpaid (デフォルト)

  • Prepaid

UsedTime

Integer

いいえ

いいえ

変更追跡インスタンスのサブスクリプション期間。

  • Period が Year に設定されている場合の有効な値: 1 ~ 5。

  • Period が Month に設定されている場合の有効な値: 1 ~ 60。

説明

PayType が Prepaid に設定されている場合は、このプロパティを指定する必要があります。

Tags

List

いいえ

はい

変更追跡インスタンスに追加するカスタムタグ。

詳細については、タグプロパティ をご参照ください。

タグの構文

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

タグのプロパティ

プロパティ

タイプ

必須

編集可能

説明

制約

Key

String

はい

いいえ

タグキー。

タグキーの長さは 1 ~ 128 文字である必要があります。

タグキーは 1 ~ 128 文字の長さでなければならず、http:// または https:// を含めることはできません。aliyun または acs: で始めることはできません。

Value

String

いいえ

いいえ

タグ値。

タグ値の長さは最大 128 文字です。

タグ値は最大 128 文字の長さで、http:// または https:// を含めることはできません。aliyun または acs: で始めることはできません。

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: 仮想プライベートクラウド (VPC)

DbList

Map

いいえ

いいえ

変更を追跡するオブジェクト。

詳細については、「DTS タスクのオブジェクト」をご参照ください。

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

はい

いいえ

変更追跡インスタンスの VPC ID。

このプロパティは、SubscriptionInstanceNetworkType が vpc に設定されている場合に有効になります。

VSwitchId

String

はい

いいえ

変更追跡インスタンスの vSwitch 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

いいえ

いいえ

ソース ApsaraDB RDS インスタンスの Alibaba Cloud アカウントが、宛先インスタンスの Alibaba Cloud アカウントに割り当てる Resource Access Management (RAM) ロール。このプロパティは、ソース ApsaraDB RDS インスタンスと宛先インスタンスが異なる Alibaba Cloud アカウントに属している場合に有効になります。

なし。

OracleSID

String

いいえ

いいえ

ソース Oracle インスタンスの名前。このプロパティは、ソースインスタンスのエンジンの種類が Oracle の場合に有効になります。

なし。

UserName

String

はい

いいえ

ソースインスタンス上のデータベースにアクセスするために使用されるユーザー名。

なし。

OwnerID

String

いいえ

いいえ

ソース ApsaraDB RDS インスタンスが属する Alibaba Cloud アカウントの ID。このプロパティは、ソース ApsaraDB RDS インスタンスと宛先インスタンスが異なる Alibaba Cloud アカウントに属している場合に有効になります。

なし。

InstanceID

String

いいえ

いいえ

ソースインスタンスの ID。

なし。

IP

String

いいえ

いいえ

ソースインスタンスの IP アドレス。

ソースインスタンスがセルフマネージドデータベースの場合は、このプロパティを指定する必要があります。

Port

String

いいえ

いいえ

ソースインスタンスのポート番号。

ソースインスタンスがセルフマネージドデータベースの場合は、このプロパティを指定する必要があります。

DatabaseName

String

いいえ

いいえ

接続の確立に使用するデータベースの名前。

なし。

InstanceType

String

はい

いいえ

ソースインスタンスのタイプ。

有効な値:

  • RDS: ApsaraDB RDS インスタンス

  • ECS: Elastic Compute Service (ECS) インスタンスでホストされているセルフマネージドデータベース

Password

String

はい

はい

ソースインスタンスにログオンするために使用されるパスワード。

なし。

戻り値

Fn::GetAtt

  • SubscriptionInstanceId: 変更追跡インスタンスの ID。

  • VPCHost: 変更追跡インスタンスの VPC エンドポイント。

  • PublicHost: 変更追跡インスタンスのパブリックエンドポイント。

  • PrivateHost: 変更追跡インスタンスのプライベートエンドポイント。

  • SubscribeTopic: 変更追跡インスタンスのトピック。

  • 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 # DDL
              DML: false # DML
            SubscriptionInstanceName: TestSubscription # サブスクリプションインスタンス名
            SourceEndpoint: # ソースエンドポイント
              InstanceType: RDS # インスタンスタイプ
              UserName: DBAdmin # ユーザー名
              Password: Admin@123! # パスワード
              InstanceID: # インスタンスID
                Ref: RdsId
            SubscriptionInstanceNetworkType: vpc # サブスクリプションインスタンスネットワークタイプ
            SubscriptionInstance: # サブスクリプションインスタンス
              VPCId: # VPC ID
                Ref: VpcId
              VSwitchId: # VSwitch ID
                Ref: VSwitchId
    Outputs:
      PublicHost:
        Description: パブリックホスト。
        Value:
          Fn::GetAtt:
            - SubscriptionInstance
            - PublicHost
      PrivateHost:
        Description: プライベートホスト。
        Value:
          Fn::GetAtt:
            - SubscriptionInstance
            - PrivateHost
      SubscriptionInstanceId:
        Description: データサブスクリプションインスタンスの ID。
        Value:
          Fn::GetAtt:
            - SubscriptionInstance
            - SubscriptionInstanceId
      VPCHost:
        Description: VPC ホスト。
        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, // DDL
                "DML": false // DML
              },
              "SubscriptionInstanceName": "TestSubscription", // サブスクリプションインスタンス名
              "SourceEndpoint": { // ソースエンドポイント
                "InstanceType": "RDS", // インスタンスタイプ
                "UserName": "DBAdmin", // ユーザー名
                "Password": "Admin@123!", // パスワード
                "InstanceID": { // インスタンスID
                  "Ref": "RdsId"
                }
              },
              "SubscriptionInstanceNetworkType": "vpc", // サブスクリプションインスタンスネットワークタイプ
              "SubscriptionInstance": { // サブスクリプションインスタンス
                "VPCId": { // VPC ID
                  "Ref": "VpcId"
                },
                "VSwitchId": { // VSwitch ID
                  "Ref": "VSwitchId"
                }
              }
            }
          }
        }
      },
      "Outputs": {
        "PublicHost": {
          "Description": "パブリックホスト。",
          "Value": {
            "Fn::GetAtt": [
              "SubscriptionInstance",
              "PublicHost"
            ]
          }
        },
        "PrivateHost": {
          "Description": "プライベートホスト。",
          "Value": {
            "Fn::GetAtt": [
              "SubscriptionInstance",
              "PrivateHost"
            ]
          }
        },
        "SubscriptionInstanceId": {
          "Description": "データサブスクリプションインスタンスの ID。",
          "Value": {
            "Fn::GetAtt": [
              "SubscriptionInstance",
              "SubscriptionInstanceId"
            ]
          }
        },
        "VPCHost": {
          "Description": "VPC ホスト。",
          "Value": {
            "Fn::GetAtt": [
              "SubscriptionInstance",
              "VPCHost"
            ]
          }
        }
      }
    }