Data Transmission Service (DTS) を使用すると、Alibaba Cloudアカウント間でデータを移行または同期できます。 このトピックでは、クロスアカウントDTSタスクを設定する前に、ソースインスタンスまたはターゲットインスタンスが属するAlibaba CloudアカウントのRAM (Resource Access Management) 権限を設定する方法について説明します。
背景情報
クロスアカウントDTSタスクを設定する前に、データベースインスタンスが属するAlibaba Cloudアカウント (以下、アカウントaと呼ぶ) のRAM権限付与を設定する必要があります。 DTSタスクの設定に使用するAlibaba Cloudアカウント (以下、アカウントBと呼びます) を信頼できるアカウントとして指定し、DTSを使用してアカウントaのクラウドリソースにアクセスすることをアカウントBに許可する必要があります。
サポートされるデータベース
次の表に、DTSタスクを設定するときに Alibaba Cloud アカウント間でデータを複製 パラメーターを設定できるデータベースを示します。
ソースデータベースの Alibaba Cloud アカウント間でデータを複製 パラメーターの設定は、ターゲットデータベースの データベースタイプ パラメーターの設定には影響しません。
データベースインスタンス | Alibaba Cloudデータベースインスタンス | 自己管理データベース |
ソースデータベース | ApsaraDB RDS for MySQL,ApsaraDB RDS for MariaDB,ApsaraDB RDS for PostgreSQL,ApsaraDB RDS for SQL Server,PolarDB-X 1.0,PolarDB-X 2.0,PolarDB for PostgreSQL,PolarDB for PostgreSQL (Oracleと互換),PolarDB for MySQL,ApsaraDB for Redis,テア,ApsaraDB for MongoDBApsaraDB for OceanBase (MySQLモード) |
|
同期先データベース | ApsaraDB RDS for MySQL、PolarDB for MySQL、ApsaraDB for SelectDB、およびApsaraDB for ClickHouse | サポートされていません。 |
前提条件
アカウントAは、DTSのRAMロールにクラウドリソースへのアクセスを許可しています。 詳細については、「DTSによるAlibaba Cloudリソースへのアクセス許可」をご参照ください。
アカウントAとアカウントBのIDを取得します。 Alibaba CloudアカウントのIDを取得するには、Alibaba Cloud管理コンソールにログインし、 セキュリティ設定ページ、 右上隅のアカウントIDパラメーターの値を表示します。
制限事項
Alibaba Cloudアカウント間の双方向同期は、ApsaraDB RDS for MySQLインスタンス間でのみサポートされます。
DTSを使用して、異なるインフラストラクチャのアカウント間でデータを同期することはできません。 たとえば、DTSを使用してAlibaba Finance CloudアカウントとAlibaba Gov Cloudアカウント間でデータを同期することはできません。
手順
データベースインスタンスのRAMロールを作成します。
説明RAMユーザーを使用してRAMロールに権限を付与すると、DTSタスクを構成するときに無効な権限に関するエラーメッセージが表示されることがあります。
Alibaba Cloud アカウント間でデータを複製 パラメーターが使用できないか、× に設定されているDTSタスクのデータベースインスタンスのRAMロールを作成する必要はありません。
にログインします。RAMコンソールソースまたはターゲットインスタンスが属するAlibaba Cloudアカウントを使用します。
左側のナビゲーションウィンドウで、を選択します。
重要を選択しないでください。 それ以外の場合、DTSはインスタンスにアクセスできず、エラーが報告される可能性があります。
ロールページで、ロールの作成 をクリックします。
[ロールの作成] ページで、[信頼できるエンティティの選択] パラメーターを [Alibaba Cloudアカウント] に設定し、[次へ] をクリックします。
ロールの設定ステップで、RAMロールのパラメーターを設定します。
パラメーター
説明
RAM ロール名
RAM ロールの名前です。 この例では、ram-for-dtsが指定されています。
説明名前は 1~64 文字で、英字、数字、ハイフン (-) を使用できます。
注
オプションです。 RAM ロールの説明です。
信頼できる Alibaba Cloud アカウントの選択
[その他のAlibaba Cloudアカウント] を選択し、DTSタスクの作成に使用するAlibaba CloudアカウントのIDを入力します。
OKをクリックします。
作成したRAMロールに権限を付与します。
入力と添付をクリックします。
権限タブで、正確な許可をクリックします。
正確な許可パネルで、タイプをシステムポリシーに設定します。
ポリシー名フィールドで、AliyunDTSRolePolicyを入力します。
表示されるメッセージで、[OK] をクリックします。
閉じるをクリックします。
信頼ポリシーを変更します。
オプション。 [ロール] ページで、作成したRAMロールを見つけ、その名前をクリックします。
RAMロールの詳細ページで、信頼ポリシータブをクリックします。
信頼ポリシータブで、信頼ポリシーの編集をクリックします。
次のコードをコードエディターにコピーします。
{ "Statement": [ { "Action": "sts:AssumeRole", "Effect": "Allow", "Principal": { "RAM": [ "acs:ram::<Alibaba Cloud account ID>:root" ], "Service": [ "<Alibaba Cloud account ID>@dts.aliyuncs.com" ] } } ], "Version": "1" }
交換
<Alibaba CloudアカウントID>
上記のコードで、DTSタスクの作成に使用されるAlibaba CloudアカウントのIDを指定します。信頼ポリシードキュメントの保存をクリックします。
次のステップ
RAMロールに権限を付与した後、クロスアカウントDTSタスクを作成できます。 詳細については、「データ同期シナリオの概要」、「データ移行シナリオの概要」、および「変更追跡シナリオの概要」をご参照ください。
タスクを作成するには、信頼ポリシーで設定されている
<Alibaba CloudアカウントID>
を使用してDTSコンソールにログインする必要があります。タスクを設定するときに、Alibaba Cloud アカウント間でデータを複製パラメーターを○に設定し、Alibaba Cloud アカウントパラメーターをデータベースインスタンスが属するAlibaba CloudアカウントのIDに設定し、RAM ロール名パラメーターをデータベースインスタンスが属するAlibaba Cloudアカウントに対して設定されたRAMロールの名前に設定します。 この例では、RAM Role Nameパラメーターはram-for-dtsに設定されています。
よくある質問
クロスアカウントDTSタスクのさまざまな段階でどのAlibaba Cloudアカウントを使用しますか。
クロスアカウントDTSタスクでは、各Alibaba Cloudアカウントの使用はAlibaba Cloudアカウントのデータベースに関連しています。 Alibaba Cloudアカウントを使用する場合は、次の項目に注意してください。
説明DTSタスク中に使用するアカウントはAlibaba Cloudアカウントです。
タスク中に使用するデータベースが、DTSタスクの作成に使用するAlibaba Cloudアカウントに属していない場合は、データベースの Alibaba Cloud アカウント間でデータを複製 パラメーターを ○ に設定します。
Alibaba Cloud アカウント間でデータを複製 パラメーターは、[宛先データベース] セクションの [データベースタイプ] パラメーターとして [MySQL] または [ClickHouse] を選択した場合にのみ使用できます。
次の表に、クロスアカウントDTSタスクのさまざまな段階で使用する必要があるAlibaba Cloudアカウントを決定する方法を示します。 最初に使用するアカウント全体のデータベースを決定する必要があります。 [Across-account database] 列に基づいて、ビジネス要件を満たす行を見つけます。 次に、クロスアカウントDTSタスクのさまざまな段階で使用する必要があるAlibaba Cloudアカウントを表示できます。
Across-accountデータベース
RAMコンソールへのログインに使用されるAlibaba Cloudアカウント
信頼ポリシーで指定されているAlibaba Cloudアカウント
DTSタスクの作成に使用されるAlibaba Cloudアカウント
Alibaba Cloudアカウントパラメーターに設定されているAlibaba Cloudアカウント
ソースデータベース
ソースデータベースが属するAlibaba Cloudアカウント
ターゲットデータベースが属するAlibaba Cloudアカウント
ターゲットデータベースが属するAlibaba Cloudアカウント
移行元データベース セクションの Alibaba Cloud アカウント パラメーターを、ソースデータベースが属するAlibaba Cloudアカウントに設定します。
同期先データベース
ターゲットデータベースが属するAlibaba Cloudアカウント
ソースデータベースが属するAlibaba Cloudアカウント
ソースデータベースが属するAlibaba Cloudアカウント
移行先データベース セクションの Alibaba Cloud アカウント パラメーターを、宛先データベースが属するAlibaba Cloudアカウントに設定します。
ソースデータベースと宛先データベース
ソースデータベースとターゲットデータベースが属する各Alibaba Cloudアカウント
特定のAlibaba Cloudアカウント
特定のAlibaba Cloudアカウント
移行元データベース セクションの Alibaba Cloud アカウント パラメーターを、ソースデータベースが属するAlibaba Cloudアカウントに設定します。
移行先データベース セクションの Alibaba Cloud アカウント パラメーターを、宛先データベースが属するAlibaba Cloudアカウントに設定します。
クロスアカウントDTSタスクを設定するときに発生するエラーを処理するにはどうすればよいですか?
次の表は、クロスアカウントDTSタスクを設定するときに表示される一般的なエラーメッセージを示し、対応するソリューションを提供します。
エラーメッセージ
解決策
Alibaba Cloudアカウントパラメーターの値が無効です。 ソースインスタンスまたはターゲットインスタンスが属するAlibaba Cloudアカウントの有効なIDを入力したかどうかを確認します。 詳細については、このトピックの準備セクションを参照してください。
これらのエラーは、次の理由で発生する可能性があります。
RAMロール名パラメーターの値が無効です。 ソースインスタンスまたはターゲットインスタンスが属するAlibaba Cloudアカウントの有効なRAMロール名を入力したかどうかを確認します。
RAMロールに必要な権限が付与されていません。 ソースインスタンスまたはターゲットインスタンスが属するAlibaba Cloudアカウントを使用して、権限を付与します。
説明詳細については、このトピックの準備セクションを参照してください。
これらのエラーは、次の理由で発生する可能性があります。
RAMロール名パラメーターの値が無効です。 ソースインスタンスまたはターゲットインスタンスが属するAlibaba Cloudアカウントの有効なRAMロール名を入力したかどうかを確認します。
RAMロールに必要な権限が付与されていません。 RAMロールに必要な権限を付与しているかどうかを確認します。
RAMロールの信頼ポリシーは変更されません。 RAMロールの信頼ポリシーを変更したかどうかを確認します。
説明詳細については、このトピックの準備セクションを参照してください。
RAMロール名パラメーターで指定したRAMロールには、必要な権限が付与されていません。 RAMロールに必要な権限を付与するには、RAMロールの詳細ページに移動します。 [権限] タブで、[正確な権限] をクリックし、[正確な権限] パネルでポリシーを指定します。 次に、タスクを再度作成します。 たとえば、ソースインスタンスが属するAlibaba CloudアカウントのRAMロールに必要な権限を付与する必要があります。 RAMロールに権限を付与する方法については、「クロスアカウントDTSタスクのRAM権限の設定」トピックの「既存のRAMロールに権限を付与する」セクションをご参照ください。
RAM ロール名パラメーターの値が無効です。 DTSのデフォルトのロールAliyunDTSDefaultRoleの代わりに、準備中に作成したRAMロールを入力します。
既存のRAMロールに権限を付与する
ソースインスタンスが属するAlibaba Cloudアカウントを使用して、RAMコンソールにログインします。
左側のナビゲーションペインで、
を選択します。[ロールの作成] の右側の検索ボックスにRAMロールの名前を入力します。
RAMロールを見つけて、[操作] 列の [入力とアタッチ] をクリックします。
[権限の追加] パネルで、[ポリシー名] パラメーターをAliyunDTSRolePolicyに設定します。
説明デフォルトでは、Typeパラメーターはシステムポリシーに設定されています。
[OK] をクリックします。