Amazon WorkSpaces イメージを別のアカウントにコピーするにはどうすればよいですか?
最終更新日: 2020 年 11 月 13 日
Amazon WorkSpaces イメージを同じリージョン内の別のアカウントに移行したいと考えています。どうすればそれができますか?
解決方法
Amazon WorkSpaces の画像転送は、Amazon WorkSpaces コンソールまたは AWS コマンドラインインターフェイス (AWS CLI) のいずれかを使用して自己管理できます。
イメージの共有 (Amazon WorkSpaces コンソール)
Amazon WorkSpaces コンソールを使用して、同じリージョンの他のアカウントとイメージを共有または共有解除できます。手順については、カスタム WorkSpaces イメージを共有または共有解除するを参照してください。
イメージの共有 (AWS CLI)
API 呼び出しと AWS CLI を使用して、プログラムでイメージを共有または共有解除できます。
重要: 以下のプロセスのコマンドには、AWS CLI のバージョン 2 が必要です。インストール手順については、AWS CLI バージョン 2 のインストールを参照してください。
WorkSpaces イメージを同じリージョン内の別のアカウントにコピーするには、次の手順に従います。
1. ソースアカウントから、ソースイメージのイメージ ID を特定します。次のコマンドを実行し、region-code を WorkSpaces リージョンコードに置き換え、出力の ImageId をメモします。
aws workspaces describe-workspace-images --region region-code
2. ソースアカウントから UpdateWorkspaceImagePermission API を呼び出して、ソースイメージをターゲットアカウントと共有します。次のコマンドを実行し、ImageId をステップ 1 の出力に、region-code を WorkSpaces リージョンコードに、target-account をターゲットアカウント番号に置き換えます。
aws workspaces update-workspace-image-permission --image-id ImageId --region region-code --shared-account-id target-account --allow-copy-image
3. (オプション) ソースアカウントから DescribeWorkspaceImagePermissions API を呼び出して、アクセス許可を表示し、イメージがターゲットアカウントと共有されていることを確認します。次のコマンドを実行し、ImageId と region-code を自分の値に置き換えます。
aws workspaces describe-workspace-image-permissions --image-id ImageId --region region-code
4. (オプション) ターゲットアカウントから DescribeWorkspaceImages API を呼び出して、共有イメージを表示します。次のコマンドを実行し、ImageId と region-code を自分の値に置き換えます。
aws workspaces describe-workspace-images --image-ids ImageId --region region-code --image-type SHARED
5. ターゲットアカウントから、CopyWorkspaceImage API を呼び出して、共有イメージをコピーします。次のコマンドを実行し、ImageId と region-code を自分の値に置き換えます。また、new-image-name を、ターゲットアカウントのイメージに使用する名前に置き換えます。
aws workspaces copy-workspace-image --source-image-id ImageId --source-region region-code --name new-image-name --region region-code
これで、ターゲットアカウントが Amazon WorkSpaces コンソールで新しいイメージを参照できるようになります。ワークフローが完了すると、イメージの状態が [Pending] (保留中) から [Available] (使用可能) に変わります。通常、これには約 15 分かかります。