CreateCloudMigrationPrecheckTask操作を呼び出して、ApsaraDB RDS for PostgreSQLインスタンスへのクラウド移行の評価タスクを作成できます。
前提条件
RDSインスタンスは次の要件を満たしています。
- RDSインスタンスと自己管理型PostgreSQLインスタンスは、PostgreSQL 10、PostgreSQL 11、PostgreSQL 12、PostgreSQL 13、PostgreSQL 14、またはPostgreSQL 15と同じバージョンのPostgreSQLを実行します。
- RDSインスタンスはプライマリインスタンスです。 読み取り専用RDSインスタンスはクラウド移行をサポートしていません。
- RDSインスタンスは、標準SSDまたは拡張SSD (ESSD) を使用します。
- RDSインスタンスは空です。 RDSインスタンスの使用可能なストレージが、自己管理型PostgreSQLインスタンスのデータのサイズ以上であること。
自己管理型PostgreSQLインスタンスは、次の要件を満たしています。
ネットワーク構成
移行ソース
ネットワークの設定
自己管理ECSベースのPostgreSQLデータベース
自己管理型PostgreSQLインスタンスがElastic Compute Service (ECS) インスタンスに存在する場合、ECSインスタンスとRDSインスタンスは同じ仮想プライベートクラウド (VPC) に存在する必要があります。ECSインスタンスとRDSインスタンスが異なるVPCに存在する場合、Cloud Enterprise Network(CEN)を使用してVPC同士を接続します。 詳細については、「CENの概要」をご参照ください。
データセンター内の自己管理型PostgreSQLデータベース (ターゲットデータベースと同じVPC内)
データセンターは、送信先のRDSインスタンスが属するVPCと通信することが可能です。 詳細については、「データセンターをVPCに接続する」をご参照ください。
パブリックネットワークアドレスによるPostgreSQLの移行 (他のクラウドベンダーからの移行を含む)
ソースPostgreSQLインスタンスには、パブリックIPアドレスが割り当てられています。
- 自己管理型PostgreSQLインスタンスがECSインスタンスに存在する場合、ECSセキュリティグループが設定されます。 詳細については、「~~369726~~」をご参照ください。
- 「自己管理型PostgreSQLインスタンスを設定してリモート接続をリッスンする」で説明されている設定が完了しました。
- 「セルフマネージドPostgreSQLインスタンスでのクラウド移行用アカウントの作成」で説明されている設定は完了です。
- 「自己管理型PostgreSQLインスタンスのpg_hba.confファイルの更新」で説明されている設定は完了です。
- 「自己管理型PostgreSQLインスタンスが存在するサーバーのファイアウォールの設定」で説明されている設定は完了しています。
デバッグ
リクエストパラメーター
| 項目 | データ型 | 必須/任意 | 例: | 説明 |
|---|---|---|---|---|
| 操作 | String | 必須 | CreateCloudMigrationPrecheckTask | 実行する操作です。 値をCreateCloudMigrationPrecheckTaskに設定します。 |
| DBInstanceName | String | 必須 | pgm-bp102g323jd4 **** | インスタンスの ID です。 DescribeDBInstancesを呼び出して、インスタンスのIDを照会できます。 |
| SourceIpAddress | String | 必須 | 172.2.XX.XX | 自己管理型PostgreSQLインスタンスへの接続に使用されるプライベートIPアドレス。
|
| SourcePort | Long | 〇 | 5432 | 自己管理型PostgreSQLインスタンスへの接続に使用されるポート。 ポートを表示するには、 |
| SourceAccount | String | 必須 | migratetest | アカウントのユーザー名。 [セルフマネージドPostgreSQLインスタンスでのクラウド移行用アカウントの作成] トピックで作成したアカウントのユーザー名を入力します。 |
| SourcePassword | String | 必須 | 123456 | アカウントのパスワードを入力します。 [セルフマネージドPostgreSQLインスタンスでのクラウド移行用アカウントの作成] トピックで作成したアカウントのパスワードを入力します。 |
| TaskName | String | 任意 | slf7w7wj3g | クラウド移行タスクの名前。 このパラメーターを指定しない場合、ApsaraDB RDSはクラウド移行タスクの名前を自動的に生成します。 |
| SourceCategory | String | 必須 | ecsOnVpc | 自己管理型PostgreSQLインスタンスが実行される環境。
|
レスポンスパラメーター
| 項目 | データ型 | 例: | 説明 |
|---|---|---|---|
| DBInstanceName | String | pgm-bp102g323jd4 **** | インスタンスの名前です。 |
| RequestId | String | 60F9A12A-16B8-4728-B099-4CA38D32C31C | リクエストの ID です。 |
| TaskId | Long | 439946016 | クラウド移行タスクのID。 |
| TaskName | String | slf7w7wj3g | クラウド移行タスクの名前。 |
例
リクエストの例
http(s):// rds.aliyuncs.com/?Action=CreateCloudMigrationPrecheckTask
&DBInstanceName=pgm-bp102g323jd4 ****
&SourceIpAddress=172.2.XX.XX
&SourcePort=5432
&SourceAccount=migratetest
&SourcePassword=123456
&タスク名=slf7w7wj3g
&SourceCategory=ecsOnVpc
&共通リクエストパラメータ
正常に処理された場合のレスポンス例
XML 形式
HTTP/1.1 200 OK
Content-Type:application/xml
<CreateCloudMigrationPrecheckTaskResponse>
<DBInstanceName>pgm-bp102g323jd4 ****</DBInstanceName>
<RequestId>60F9A12A-16B8-4728-B099-4CA38D32C31C</RequestId>
<TaskId>439946016</TaskId>
<TaskName>slf7w7wj3g</TaskName>
</CreateCloudMigrationPrecheckTaskResponse>
JSON 形式
HTTP/1.1 200 OK
Content-Type:application/json
{
"DBInstanceName" : "pgm-bp102g323jd4 ****" 、
"RequestId" : "60F9A12A-16B8-4728-B099-4CA38D32C31C" 、
"TaskId" : 439946016、
"TaskName" : "slf7w7wj3g"
}
エラーコード
| HTTP ステータスコード | エラーコード | エラーメッセージ | 説明 |
|---|---|---|---|
| 400 | IncorrectDBInstanceState | 現在のインスタンス状態はこの操作をサポートしていません。 | インスタンスが存在する状態では、この操作がサポートされていない場合に返されるエラーメッセージ。 |
| 403 | IncorrectDBInstance | 現在のDBインスタンスはこの操作をサポートしていません。 | 操作がインスタンスでサポートされていない場合に返されるエラーメッセージ。 |
| 403 | IncorrectDBInstanceType | データベースインスタンスタイプは操作をサポートしていません。 | この操作がインスタンスで実行されているデータベースエンジンでサポートされていない場合に返されるエラーメッセージ。 |
| 404 | InvalidDBInstanceName.NotFound | データベースインスタンスが存在しません。 | インスタンスの名前が見つからない場合に返されるエラーメッセージ。 名前が正しいかどうかを確認してください。 |
| 404 | IncorrectDBInstanceLockMode | 現在のDBインスタンスロックモードはこの操作に対応していません。 | インスタンスがロックされている場合に返されるエラーメッセージ。 |
エラーコードの一覧については、「サービスエラーコード」をご参照ください。