このトピックでは、データ移行前に実行する必要がある操作について説明します。
手順 1:Amazon S3 インベントリを作成する
Amazon S3 インベントリの作成方法の詳細については、「Amazon S3 インベントリの構成」をご参照ください。
上記のリンクの情報は、オリジンサーバーの変更により古くなっている可能性があり、参考情報としてのみ提供されています。
手順 2:データ移行に使用する IAM ユーザーを作成する
データセキュリティを確保するために、Identity and Access Management(IAM)ユーザーを作成し、ソースデータの読み取り権限を IAM ユーザーに付与し、IAM ユーザーのアクセスキーを作成することをお勧めします。詳細については、「IMA ユーザー」をご参照ください。
Amazon S3 バケットと Amazon S3 インベントリリストにアクセスするには、IAM ユーザーのアクセスキーを作成する必要があります。1 つのアカウントを使用して、Amazon S3 バケットと Amazon S3 インベントリリストの両方にアクセスするためのアクセスキーを作成できます。また、2 つの異なるアカウントを使用して、2 つのアクセスキーを個別に作成することもできます。
データオンライン移行は AWS S3 ホワイトリストをサポートしていません。データ移行前に、アクセス制限を無効にしてください。
上記のリンクの情報は、オリジンサーバーの変更により古くなっている可能性があり、参考情報としてのみ提供されています。
手順 3:移行先バケットを作成する
移行されたデータを格納する移行先として、Object Storage Service(OSS)バケットを作成します。詳細については、「バケットの作成」をご参照ください。
手順 4:RAM ユーザーを作成し、RAM ユーザーに権限を付与する
Resource Access Management(RAM)ユーザーは、データ移行タスクを実行するために使用されます。RAM ロールを作成し、RAM ユーザーとして移行を実行する必要があります。ソースまたは移行先の OSS バケットを所有する Alibaba Cloud アカウント内に RAM ユーザーを作成することをお勧めします。
詳細については、「RAM ユーザーの作成と RAM ユーザーへの権限の付与」をご参照ください。
Alibaba Cloud アカウントを使用して RAM コンソールにログインします。[ユーザー] ページで、作成した RAM ユーザーを見つけ、[操作] 列の [権限の追加] をクリックします。アクション
システムポリシー:AliyunOSSImportFullAccess ポリシーを RAM ユーザーにアタッチします。
カスタムポリシー:
ram:CreateRole
、ram:CreatePolicy
、ram:AttachPolicyToRole
、およびram:ListRoles
権限を含むカスタムポリシーを RAM ユーザーにアタッチします。RAM ユーザーへのカスタムポリシーのアタッチ方法の詳細については、「カスタムポリシーの作成」をご参照ください。次のサンプルコードは、カスタムポリシーの例を示しています。
{ "Version":"1", "Statement":[ { "Effect":"Allow", // 許可 "Action":[ "ram:CreateRole", // ロールの作成 "ram:CreatePolicy", // ポリシーの作成 "ram:AttachPolicyToRole", // ロールへのポリシーのアタッチ "ram:ListRoles" // ロールのリスト表示 ], "Resource":"*" } ] }
手順 5:移行先バケットに権限を付与する
移行先バケットが現在の Alibaba Cloud アカウントに属しているかどうかに基づいて、対応する操作を実行します。
移行先バケットが現在の Alibaba Cloud アカウントに属している場合
自動承認
データオンライン移行データを移行する コンソールで自動承認を使用することをお勧めします。詳細については、 トピックの「手順 3:移行先データアドレスを作成する」セクションをご参照ください。
手動承認
説明次のシナリオでは、手動承認を実行できます。
複数のソースバケットに対する権限を 1 つの RAM ロールに付与する場合。これにより、複数のソースバケットを効果的に管理できます。
現在の Alibaba Cloud アカウント内の RAM ロールの数が上限に近づいているため、これ以上 RAM ロールを作成したくない場合。
自動承認が適用できないか、使用できない場合。
1. データ移行に使用する RAM ロールを作成する
RAM ユーザーが作成された RAM コンソールにログインします。[ロール] ページで、ロールの作成 をクリックします。
[信頼できるエンティティ] を選択します。Alibaba Cloud サービス を選択します。
ロールタイプ:標準サービスロール を選択します。
RAM ロールの名前:ロール名を入力します。ロール名は小文字にする必要があります。
信頼できるサービスの選択:データオンライン移行 を選択します。
2. 移行先バケットに対する権限を RAM ロールに付与する
[ロール] ページで、作成した RAM ロールを見つけ、[操作] 列の 権限の付与アクション をクリックします。
カスタムポリシー:
oss:List*
、oss:Get*
、oss:Put*
、およびoss:AbortMultipartUpload*
権限を含むカスタムポリシーを RAM ロールにアタッチします。
カスタムポリシーのアタッチ方法の詳細については、「カスタムポリシーの作成」をご参照ください。次のコードは、カスタムポリシーの例を示しています。
説明次のポリシーは参考用です。<myDestBucket> を移行先バケットの名前に置き換えます。
OSS の RAM ポリシーの詳細については、「RAM ポリシーの一般的な例」をご参照ください。
{ "Version": "1", "Statement": [ { "Effect": "Allow", // 許可 "Action": [ "oss:List*", // リスト操作 "oss:Get*", // 取得操作 "oss:Put*", // 配置操作 "oss:AbortMultipartUpload" // マルチパートアップロードの中止 ], "Resource": [ "acs:oss:*:*:<myDestBucket>", // バケットレベルのリソース "acs:oss:*:*:<myDestBucket>/*" // オブジェクトレベルのリソース ] } ] }
移行先バケットが現在の Alibaba Cloud アカウントに属していない場合
1. データ移行に使用する RAM ロールを作成する
RAM ユーザーが作成された RAM コンソールにログインします。[ロール] ページで、ロールの作成 をクリックします。
[信頼できるエンティティ] を選択します。Alibaba Cloud サービス を選択します。
ロールタイプ:標準サービスロール を選択します。
RAM ロールの名前:ロール名を入力します。ロール名は小文字にする必要があります。
信頼できるサービスの選択:データオンライン移行 を選択します。
2. 移行先バケットに対する権限を RAM ロールに付与する
ポリシー文を指定してバケットポリシーを構成し、必要な権限を RAM ロールに付与する場合、新しいバケットポリシーは既存のバケットポリシーを上書きします。新しいバケットポリシーに既存のバケットポリシーの内容が含まれていることを確認してください。そうしないと、既存のバケットポリシーに基づく承認が失敗する可能性があります。
移行先バケットを所有する Alibaba Cloud アカウントを使用して、OSS コンソール にログインします。
左側のナビゲーションウィンドウで、[バケット] をクリックします。[バケット] ページで、移行先バケットの名前をクリックします。
バケット詳細ページの左側のウィンドウで、[権限管理] > [バケットポリシー] を選択します。
[バケットポリシー] タブで、[構文で追加] をクリックし、[編集] をクリックします。コードエディターで、カスタムバケットポリシーを入力します。次に、[保存] をクリックします。
移行先バケット内のすべてのリソースを照会、読み取り、削除、および書き込む権限を RAM ロールに付与します。
次のポリシーは参考用です。<otherDestBucket> を [移行先バケットの名前] に、<otherUid> を移行先バケットを所有する Alibaba Cloud アカウントの ID に、<myUid> を [データオンライン移行コンソールへのログインに使用する Alibaba Cloud アカウントの ID] に、<roleName> を作成した RAM ロールの名前に置き換えます。OSS の RAM ポリシーの詳細については、「RAM ポリシーの一般的な例」をご参照ください。
{
"Version": "1",
"Statement": [
{
"Effect": "Allow", // 許可
"Action": [
"oss:List*", // リスト操作
"oss:Get*", // 取得操作
"oss:Put*", // 配置操作
"oss:AbortMultipartUpload" // マルチパートアップロードの中止
],
"Principal": [
"arn:sts::<myUid>:assumed-role/<roleName>/*" // 信頼できるエンティティ
],
"Resource": [
"acs:oss:*:<otherUid>:<otherDestBucket>", // バケットレベルのリソース
"acs:oss:*:<otherUid>:<otherDestBucket>/*" // オブジェクトレベルのリソース
]
}
]
}
手順 6:ソースバケットで移行するデータを解凍する
アーカイブストレージタイプのデータ移行タスクを作成する前に、データを手動で解凍する必要があります。データを解凍する際には、次の点に注意してください。
ソースデータアドレスと移行タスクを作成する前に、アーカイブストレージタイプのデータが解凍されていることを確認してください。
移行するデータ量に基づいて、解凍されたデータが解凍状態のままである日数を指定します。これにより、データ移行中にデータがアーカイブ状態になるのを防ぐことができます。
解凍操作に対して課金される場合があります。料金は比較的高額になる可能性があります。課金方法の詳細については、ソースバケットを提供しているサービスプロバイダーにお問い合わせください。
データオンライン移行は、データ移行中にソースデータアドレスにあるアーカイブ済みオブジェクトのデータを解凍しません。解凍されていないオブジェクトまたは解凍中のオブジェクトは移行できません。