翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
RES 対応 AMIs の設定
RES 対応 AMIsを使用すると、仮想デスクトップインスタンス (VDIs) の RES 依存関係をカスタム AMIs にプリインストールできます。RES 対応 AMIs を使用すると、事前にベイクされたイメージを使用する VDI インスタンスの起動時間が短縮されます。EC2 Image Builder を使用すると、AMIs を構築して新しいソフトウェアスタックとして登録できます。Image Builder の詳細については、「Image Builder ユーザーガイド」を参照してください。
開始する前に、最新バージョンの RES をデプロイする必要があります。
RES 環境にアクセスするための IAM ロールを準備する
EC2 Image Builder から RES 環境サービスにアクセスするには、RES-EC2InstanceProfileForImageBuilder という IAM ロールを作成または変更する必要があります。Image Builder で使用する IAM ロールの設定については、Image Builder ユーザーガイドのAWS Identity and Access Management 「 (IAM)」を参照してください。
ロールには以下が必要です。
-
信頼関係には Amazon EC2 サービスが含まれます
-
AmazonSSMManagedInstanceCore および EC2InstanceProfileForImageBuilder ポリシー
-
デプロイされた RES 環境への DynamoDB および Amazon S3 アクセスが制限されたカスタム RES ポリシー
(このポリシーは、カスタマー管理ポリシードキュメントまたはカスタマーインラインポリシードキュメントのいずれかになります。)
信頼関係エンティティ:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "ec2.amazonaws.com"
}
"Action": "sts:AssumeRole"
}
]
}
RES ポリシー:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "RESDynamoDBAccess",
"Effect": "Allow",
"Action": "dynamodb:GetItem",
"Resource": "arn:aws:dynamodb:{AWS-Region}:{AWS-Account-ID}:table/{RES-EnvironmentName}.cluster-settings",
"Condition": {
"ForAllValues:StringLike": {
"dynamodb:LeadingKeys": [
"global-settings.gpu_settings.*",
"global-settings.package_config.*"
]
}
}
},
{
"Sid": "RESS3Access",
"Effect": "Allow",
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::{RES-EnvironmentName}-cluster-{AWS-Region}-{AWS-Account-ID}/idea/vdc/res-ready-install-script-packages/*"
}
]
}
EC2 Image Builder コンポーネントを作成する
Image Builder ユーザーガイドの「Image Builder コンソールを使用してコンポーネントを作成する」の指示に従ってください。
コンポーネントの詳細を入力します。
-
タイプ で、ビルド を選択します。
-
イメージオペレーティングシステム (OS) で、Linux または Windows を選択します。
-
コンポーネント名 には、 などのわかりやすい名前を入力しますresearch-and-engineering-studio-vdi-<operating-system>
。
-
コンポーネントのバージョン番号を入力し、オプションで説明を追加します。
-
定義ドキュメント には、次の定義ファイルを入力します。エラーが発生した場合、YAML ファイルはスペースに敏感であり、最も可能性の高い原因です。
- Linux
-
# Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance
# with the License. A copy of the License is located at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# or in the 'license' file accompanying this file. This file is distributed on an 'AS IS' BASIS, WITHOUT WARRANTIES
# OR CONDITIONS OF ANY KIND, express or implied. See the License for the specific language governing permissions
# and limitations under the License.
name: research-and-engineering-studio-vdi-linux
description: An RES EC2 Image Builder component to install required RES software dependencies for Linux VDI.
schemaVersion: 1.0
parameters:
- AWSAccountID:
type: string
description: RES Environment AWS Account ID
- RESEnvName:
type: string
description: RES Environment Name
- RESEnvRegion:
type: string
description: RES Environment Region
- RESEnvReleaseVersion:
type: string
description: RES Release Version
phases:
- name: build
steps:
- name: PrepareRESBootstrap
action: ExecuteBash
onFailure: Abort
maxAttempts: 3
inputs:
commands:
- 'mkdir -p /root/bootstrap/logs'
- 'mkdir -p /root/bootstrap/latest'
- name: DownloadRESLinuxInstallPackage
action: S3Download
onFailure: Abort
maxAttempts: 3
inputs:
- source: 's3://{{ RESEnvName }}-cluster-{{ RESEnvRegion }}-{{ AWSAccountID }}/idea/vdc/res-ready-install-script-packages/linux/res_linux_install_{{ RESEnvReleaseVersion }}.tar.gz'
destination: '/root/bootstrap/res_linux_install_{{ RESEnvReleaseVersion }}.tar.gz'
expectedBucketOwner: '{{ AWSAccountID }}'
- name: RunInstallScript
action: ExecuteBash
onFailure: Abort
maxAttempts: 3
inputs:
commands:
- 'tar -xvf {{ build.DownloadRESLinuxInstallPackage.inputs[0].destination }} -C /root/bootstrap/latest'
- '/bin/bash /root/bootstrap/latest/virtual-desktop-host-linux/install.sh -r {{ RESEnvRegion }} -n {{ RESEnvName }} -g NONE'
- name: FirstReboot
action: Reboot
onFailure: Abort
maxAttempts: 3
inputs:
delaySeconds: 0
- name: RunInstallPostRebootScript
action: ExecuteBash
onFailure: Abort
maxAttempts: 3
inputs:
commands:
- '/bin/bash /root/bootstrap/latest/virtual-desktop-host-linux/install_post_reboot.sh'
- name: SecondReboot
action: Reboot
onFailure: Abort
maxAttempts: 3
inputs:
delaySeconds: 0
- Windows
-
# Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance
# with the License. A copy of the License is located at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# or in the 'license' file accompanying this file. This file is distributed on an 'AS IS' BASIS, WITHOUT WARRANTIES
# OR CONDITIONS OF ANY KIND, express or implied. See the License for the specific language governing permissions
# and limitations under the License.
name: research-and-engineering-studio-vdi-windows
description: An RES EC2 Image Builder component to install required RES software dependencies for Windows VDI.
schemaVersion: 1.0
parameters:
- AWSAccountID:
type: string
description: RES Environment AWS Account ID
- RESEnvName:
type: string
description: RES Environment Name
- RESEnvRegion:
type: string
description: RES Environment Region
- RESEnvReleaseVersion:
type: string
description: RES Release Version
phases:
- name: build
steps:
- name: CreateRESBootstrapFolder
action: CreateFolder
onFailure: Abort
maxAttempts: 3
inputs:
- path: 'C:\Users\Administrator\RES\Bootstrap'
overwrite: true
- name: DownloadRESWindowsInstallPackage
action: S3Download
onFailure: Abort
maxAttempts: 3
inputs:
- source: 's3://{{ RESEnvName }}-cluster-{{ RESEnvRegion }}-{{ AWSAccountID }}/idea/vdc/res-ready-install-script-packages/windows/res_windows_install_{{ RESEnvReleaseVersion }}.tar.gz'
destination: '{{ build.CreateRESBootstrapFolder.inputs[0].path }}\res_windows_install_{{ RESEnvReleaseVersion }}.tar.gz'
expectedBucketOwner: '{{ AWSAccountID }}'
- name: RunInstallScript
action: ExecutePowerShell
onFailure: Abort
maxAttempts: 3
inputs:
commands:
- 'cd {{ build.CreateRESBootstrapFolder.inputs[0].path }}'
- 'Tar -xf res_windows_install_{{ RESEnvReleaseVersion }}.tar.gz'
- 'Import-Module .\virtual-desktop-host-windows\Install.ps1'
- 'Install-WindowsEC2Instance'
- name: Reboot
action: Reboot
onFailure: Abort
maxAttempts: 3
inputs:
delaySeconds: 0
-
オプションのタグを作成し、コンポーネントの作成 を選択します。
EC2 Image Builder レシピを準備する
CentOS 7 は現在、6/30/2024 end-of-life に に到達する予定です。Research and Engineering Studio バージョン 2024.06 は、CentOS 7 をサポートする最後のバージョンになります。
EC2 Image Builder レシピでは、新しいイメージを作成するための開始点として使用するベースイメージと、イメージをカスタマイズしてすべてが期待どおりに動作することを確認するために追加する一連のコンポーネントを定義します。レシピを作成または変更して、必要な RES ソフトウェアの依存関係を持つターゲット AMI を構築する必要があります。レシピの詳細については、「レシピの管理」を参照してください。
RES は、次のイメージオペレーティングシステムをサポートしています。
- Create a new recipe
-
-
で EC2 Image Builder コンソールを開きますhttps://console.aws.amazon.com/imagebuilder。
-
保存済みリソース で、イメージレシピ を選択します。
-
[イメージレシピの作成] を選択します。
-
一意の名前とバージョン番号を入力します。
-
RES でサポートされているベースイメージを選択します。
-
「インスタンス設定」で、SSM エージェントがインストールされていない場合はインストールします。ユーザーデータおよびその他の必要なユーザーデータに情報を入力します。
SSM エージェントをインストールする方法については、以下を参照してください。
-
Linux ベースのレシピの場合は、Amazon が管理するaws-cli-version-2-linux
ビルドコンポーネントをレシピに追加します。RES インストールスクリプトは AWS CLI 、 を使用して、DynamoDB クラスター設定の構成値への VDI アクセスを提供します。Windows では、このコンポーネントは必要ありません。
-
Linux または Windows 環境用に作成された EC2 Image Builder コンポーネントを追加し、必要なパラメータ値を入力します。次のパラメータは必須入力です: AWSAccountID、RES EnvName、RES EnvRegion、および RES EnvReleaseVersion。
Linux 環境では、aws-cli-version-2-linux
ビルドコンポーネントを最初に追加した状態で、これらのコンポーネントを追加する必要があります。
-
(推奨) Amazon が管理するsimple-boot-test-<linux-or-windows>
テストコンポーネントを追加して、AMI を起動できることを確認します。これは最小限の推奨事項です。要件を満たす他のテストコンポーネントを選択できます。
-
必要に応じてオプションのセクションを完了し、その他の必要なコンポーネントを追加して、レシピの作成 を選択します。
- Modify a recipe
-
既存の EC2 Image Builder レシピがある場合は、次のコンポーネントを追加して使用できます。
Linux ベースのレシピの場合は、Amazon が管理するaws-cli-version-2-linux
ビルドコンポーネントをレシピに追加します。RES インストールスクリプトは AWS CLI 、 を使用して、DynamoDB クラスター設定の構成値への VDI アクセスを提供します。Windows では、このコンポーネントは必要ありません。
-
Linux または Windows 環境用に作成された EC2 Image Builder コンポーネントを追加し、必要なパラメータ値を入力します。次のパラメータは必須入力です: AWSAccountID、RES EnvName、RES EnvRegion、および RES EnvReleaseVersion。
Linux 環境では、aws-cli-version-2-linux
ビルドコンポーネントを最初に追加した状態で、これらのコンポーネントを追加する必要があります。
-
必要に応じてオプションのセクションを完了し、他の必要なコンポーネントを追加して、レシピの作成 を選択します。
インフラストラクチャ設定を使用して、Image Builder が Image Builder イメージの構築とテストに使用する Amazon EC2 インフラストラクチャを指定できます。RES で使用するには、新しいインフラストラクチャ設定を作成するか、既存のインフラストラクチャ設定を使用するかを選択できます。
Image Builder インフラストラクチャを設定するには
-
IAM ロール には、 で以前に設定したロールを入力しますRES 環境にアクセスするための IAM ロールを準備する。
-
インスタンスタイプ では、4 GB 以上のメモリを持つタイプを選択し、選択したベース AMI アーキテクチャをサポートします。Amazon EC2 インスタンスタイプ」を参照してください。
-
VPC、サブネット、およびセキュリティグループ の場合、ソフトウェアパッケージをダウンロードするためのインターネットアクセスを許可する必要があります。RES 環境の cluster-settings
DynamoDB テーブルと Amazon S3 クラスターバケットへのアクセスも許可する必要があります。
Image Builder イメージパイプラインを設定する
Image Builder イメージパイプラインは、ベースイメージ、構築とテスト用のコンポーネント、インフラストラクチャ設定、およびディストリビューション設定をアセンブルします。RES 対応 AMIs 用にイメージパイプラインを設定するには、新しいパイプラインを作成するか、既存のパイプラインを使用するかを選択できます。詳細については、Image Builder ユーザーガイドの「AMI イメージパイプラインの作成と更新」を参照してください。
- Create a new Image Builder pipeline
-
-
で Image Builder コンソールを開きますhttps://console.aws.amazon.com/imagebuilder。
-
ナビゲーションから、イメージパイプライン を選択します。
-
イメージパイプラインの作成 を選択します。
-
一意の名前、オプションの説明、スケジュール、頻度を入力して、パイプラインの詳細を指定します。
-
レシピの選択 で、既存のレシピを使用 を選択し、 で作成されたレシピを選択しますEC2 Image Builder レシピを準備する。レシピの詳細が正しいことを確認します。
-
「イメージ作成プロセスの定義」で、ユースケースに応じてデフォルトワークフローまたはカスタムワークフローを選択します。ほとんどの場合、デフォルトのワークフローで十分です。詳細については、EC2 Image Builder パイプラインのイメージワークフローを設定する」を参照してください。
-
「インフラストラクチャ設定の定義」で、「既存のインフラストラクチャ設定の選択」を選択し、「」で作成したインフラストラクチャ設定を選択しますEC2 Image Builder インフラストラクチャを設定する。インフラストラクチャの詳細が正しいことを確認します。
-
ディストリビューション設定の定義 で、サービスのデフォルト を使用してディストリビューション設定を作成する を選択します。出力イメージは、RES 環境 AWS リージョン と同じ に存在する必要があります。サービスのデフォルトを使用すると、Image Builder が使用されるリージョンにイメージが作成されます。
-
パイプラインの詳細を確認し、パイプラインの作成 を選択します。
- Modify an existing Image Builder pipeline
-
Image Builder イメージパイプラインを実行する
設定された出力イメージを生成するには、イメージパイプラインを開始する必要があります。イメージレシピ内のコンポーネント数によっては、構築プロセスに最大 1 時間かかる場合があります。
RES に新しいソフトウェアスタックを登録する