

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# イメージのインポート
<a name="import-image"></a>

カスタマイズされた EC2 AMIs をインポートすることで、WorkSpaces アプリケーションイメージを作成できます。処理の流れ

1. EC2 [Image Builder などの任意の方法を使用して EC2 ](https://docs.aws.amazon.com/imagebuilder/)AMI をカスタマイズします。

1. カスタマイズされた AMI を WorkSpaces アプリケーションにインポートして WorkSpaces アプリケーションイメージを作成する

1. オプションで、Image Builder を使用してイメージをさらにカスタマイズする

AMI のインポートによって作成されたイメージは で`type = "custom"`、WorkSpaces アプリケーションが提供するイメージは です`type = "native"`。

でイメージに stream.\$1 インスタンスタイプを使用できます`type = "native"`。次のいずれかのインスタンスタイプを使用するには、AMI をインポートし、 でイメージを作成する必要があります`type = "custom"`。
+ GeneralPurpose.\$1
+ MemoryOptimized.\$1
+ ComputeOptimized.\$1
+ Accelerated。\$1

## イメージのインポートの前提条件
<a name="import-image-prerequisites"></a>

これらの前提条件はすべて、ワークフローの実行を成功させるために重要です。サポートされている AMI 設定およびその他の必須要件を以下に示します。

### 必要な AMI プロパティ
<a name="required-ami-properties"></a>

EBS  
+ 500GB 以下のサイズ
  + < 200 GB の AMI をインポートできますが、インポートされたイメージでは最低 200GB が使用されます。
+ GP2
  + gp2 または gp3 EBS ボリュームタイプの AMI をインポートできますが、インポートされたイメージは gp2 を使用します。
+ イメージあたり 1 ボリューム
+ `/dev/sda1` ルートデバイス名
+ イメージタイプ: マシン
+ アーキテクチャ: x86\$164
+ 仮想化タイプ: HVM
+ ブートモード: UEFI
+ TPM サポート: v2.0。これは必須です。TPM が有効な AMI を見つけるには、[https://docs.aws.amazon.com/ec2/latest/windows-ami-reference/ami-windows-tpm.html\$1ami-windows-tpm-find](https://docs.aws.amazon.com/ec2/latest/windows-ami-reference/ami-windows-tpm.html#ami-windows-tpm-find) を参照してください。
+ ENA サポート: true
+ プラットフォーム: Windows
+ プラットフォームの詳細: Windows

### オペレーティングシステムのプロパティ
<a name="operating-system-properties"></a>

Windows Server 2022/2025 **フルベース**  
+ Windows Server **Core** はサポートされていません
+ Windows と SQL Server はサポートされていません

[エージェント]     
+ EC2 起動 V2 バージョン >= 2.1.1
+ SSM エージェントが必要です

ドライバー  
+ EC2 ENA ドライバーバージョン >= 2.9.0
+ EC2 NVMe ドライバーバージョン >= 1.6.0

ライブラリのサポート  
+ .NET Framework 4.8 以降
  + Windows Server 2022/2025 にデフォルトでインストール
+ PowerShell 5.1 以降
  + Windows Server 2022/2025 にデフォルトでインストール
+ Windows の機能: リモートデスクトップサービスのライセンスとリモートデスクトップサービスのセッションホストをインストールしないでください
+ ポート: ポート 8000、8300、8443 はブロック解除および占有解除する必要があります
+ ブートモード: UEFI

Accelerated.g4dn、 Accelerated.g5、 Accelerated.G6、 Accelerated.G6e などのグラフィックスインスタンスでイメージを使用する場合は、AMI に適切な GRID ドライバーをインストールします。詳細については、[https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/nvidia-GRID-driver.html](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/nvidia-GRID-driver.html) を参照してください。ただし、ドライバーが正しく設定されていない場合、ストリーミングは機能します。グラフィックカードは使用できない場合があります。

**重要**  
AMI の「所有者アカウント ID」はAWSアカウント ID である必要があります。パブリック EC2 AMI をインポートすることはできません。  
イメージをインポートする前に、Windows 更新を実行し、Windows 自動更新を無効にします。  
暗号化された EC2 AMIs のインポートは現在サポートされていません

### IAM ロールの要件
<a name="iam-role-requirements"></a>

**重要**  
「イメージのインポートに使用する以下のアクセス許可を持つ IAM ロールを作成します。

```
{  
    "Version": "2012-10-17",		 	 	   
    "Statement": [  
        {  
            "Sid": "AllowModifyImageAttributeWithTagCondition",  
            "Effect": "Allow",  
            "Action": "ec2:ModifyImageAttribute",  
            "Resource": "*"  
        },  
        {  
            "Sid": "AllowDescribeImages",  
            "Effect": "Allow",  
            "Action": "ec2:DescribeImages",  
            "Resource": "*"  
        }  
    ]  
}
```

この IAM ロールに次の信頼関係を追加します。

```
{  
    "Version": "2012-10-17",		 	 	   
    "Statement": [  
        {  
            "Effect": "Allow",  
            "Principal": {  
                "Service": "appstream.amazonaws.com"  
            },  
            "Action": "sts:AssumeRole"  
        }  
    ]  
}
```

## イメージをインポートするには
<a name="import-image-procedure"></a>

1. [https://console.aws.amazon.com/appstream2](https://console.aws.amazon.com/appstream2) で WorkSpaces アプリケーションコンソールを開きます。

1. 左側のナビゲーションペインで、**画像**を選択し、**画像レジストリ**を選択します。

1. **イメージのインポート** を選択します。

1. **AMI ID** - WorkSpaces アプリケーションにインポートする AMI の AMI ID を入力します。このフィールドを使用して AMI を検索することもできます。

1. **イメージ名** - インポートオペレーションのために作成されるイメージの一意の名前を入力します。

1. **表示名** *(オプション)* - イメージに表示する を入力します。

1. **説明** *(オプション)* – イメージの説明を入力します。

1. **IAM ロール** - イメージのインポート用に作成した IAM ロールを選択します。詳細については、「」を参照してください[IAM ロールの要件](#iam-role-requirements)。

1. **WorkSpaces Applications エージェントの管理** – 常に最新の WorkSpaces Applications エージェントバージョンを使用する場合、ストリーミングインスタンスは、新しいエージェントバージョンがリリースされたAWSときに から利用できる最新の機能、パフォーマンスの向上、およびセキュリティ更新プログラムで自動的に更新されます。

1. **ランタイム検証** *(オプション)*: このオプションを選択すると、サービスはインポートされるイメージを使用してインスタンスをプロビジョニングし、ストリーミングテストを実行します。
   + 
**注記**  
これらのストリーミングテストはバックグラウンドで実行されるため、WorkSpaces Applications クライアントを介してこのインスタンスに接続することはできません。
   + イメージが WorkSpaces アプリケーションに適しているという信頼性を高めるには、このオプションを使用することをお勧めします。
   + そのインスタンスの時間料金が請求されます。
   + ストリーミングテストに影響を与えない可能性のある小さな変更を行った後に AMI を再インポートする場合や、ランタイム検証が最後に合格した場合に、この AMI をインポートした場合、ランタイム検証の実行を回避できます。
   + **インスタンスタイプを選択** *(オプション)*: ストリーミングテストを実行する適切なインスタンスファミリー、タイプ、サイズを選択します。フリートの作成に使用する予定のインスタンスと同じインスタンスを使用することをお勧めします。

1. **アプリケーションカタログと起動パフォーマンスマニフェスト** *(オプション)*: エンドユーザー向けのアプリケーションカタログを作成し、アプリケーションの起動パフォーマンスを向上させるための詳細を提供します。
   + **アプリケーションカタログ**: アプリケーションカタログを作成するには、イメージをインストールしたアプリケーションの詳細を指定します。ストリーミングを計画するアプリケーションごとに、名前、表示名、起動する実行可能ファイルと表示するアイコンを指定できます。
   + **起動パフォーマンス**: アプリケーション最適化マニフェストにファイルを追加すると、アプリケーションが新しいフリートインスタンスで初めて起動するまでにかかる時間が短縮されます。最適化マニフェストは、アプリケーションごとの行区切りテキストファイルです。

   詳細については、「」を参照してください[アプリケーションの詳細](applications-details.md)。

1. **タグ** *(オプション)* - **タグの追加**を選択し、タグのキーと値を入力します。さらにタグを追加するには、この手順を繰り返します。詳細については、「[Amazon WorkSpaces アプリケーションリソースのタグ付け](tagging-basic.md)」を参照してください。

1. **イメージのインポート** – 入力したすべての情報を確認し、**イメージのインポート**を選択します。サービスは互換性チェックを実行して、AMI が WorkSpaces アプリケーションと互換性があることを確認します。
   + 静的チェックが失敗すると、すぐにエラーが表示されます。
   + 静的チェックに合格すると、インポートリクエストが送信され、選択したオプションによっては、 を使用して新しい WorkSpaces アプリケーションイメージを作成するのに 30～60 分かかる場合があります。 `type = "custom"`

# アプリケーションの詳細
<a name="applications-details"></a>

アプリケーションの詳細には、事前ウォーミングマニフェストとアプリケーションカタログ設定に関する情報が含まれています。

## Application PreWarm マニフェスト
<a name="application-prewarm-manifests"></a>

WorkSpaces アプリケーションイメージを作成するときに、ユーザーが利用できるようにアプリケーションを指定できます。アプリケーションの起動時間を短縮するには、PreWarm マニフェストを準備します。これは基本的に、ユーザーがアプリケーションを起動するときにアプリケーションが起動する必要があるファイルのカタログです。インスタンスのプロビジョニング中、これらのファイルはセッション接続の前に準備され、ユーザーセッションでのアプリケーションの起動時間を短縮します。

事前ウォーミングマニフェストは、WorkSpaces アプリケーション環境にインポートする前に AMI で事前に作成する必要があります。共通のプリウォームマニフェストファイルを 1 つ作成するか、アプリケーションごとに 1 つ作成するかを選択できます。これにより、後で AMI をインポートする方法が変更されます。

### 一般的な事前ウォームマニフェスト
<a name="common-prewarm-manifest"></a>

事前ウォーミングするアプリケーションごとに、アプリケーションを起動し、ユーザーが実行する初期インタラクションを実行します。次に、アプリケーションデータが保存されているディレクトリをターゲットにして、次のコマンドを使用します。

```
dir -path "C:\Path\To\Folder\To\Optimize" -Recurse -ErrorAction SilentlyContinue | %{$_.FullName} | Out-File "C:\ProgramData\Amazon\Photon\Prewarm\PrewarmManifest.txt" -encoding UTF8 -append
```

これにより、各アプリケーション用に最適化するファイルが共通`C:\\ProgramData\\Amazon\\Photon\\Prewarm\\PrewarmManifest.txt`ファイルに追加されます。アプリケーションの事前ウォーミングを実行するために必要な追加のアクションはありません。WorkSpaces Applications は、上記の場所にあるプリウォームファイルを探し、存在する場合はそれを使用します。

このプロセスはオプションであり、プリウォームマニフェストのサイズが増えると、フリートのプロビジョニング時間も長くなります。したがって、最適化とフリートプロビジョニングのバランスをとるように注意してください。

### アプリケーション固有のマニフェスト
<a name="application-specific-manifests"></a>

イメージのインポート中に、アプリケーションごとに事前ウォーミングアセットを簡単に追跡できるように、アプリケーションごとに個別のアプリケーションマニフェストファイルを指定できます。これを行うには、上記と同じ手順を実行しますが、共通`C:\\ProgramData\\Amazon\\Photon\\Prewarm\\PrewarmManifest.txt`ファイルを作成する代わりに、AMI 上のアプリケーションごとにファイルを作成します。

事前ウォーミングするアプリケーションごとに、アプリケーションを起動し、ユーザーが実行する初期インタラクションを実行します。次に、アプリケーションデータが保存されているディレクトリをターゲットにして、次のコマンドを使用します。

```
dir -path "C:\Path\To\Folder\To\Optimize" -Recurse -ErrorAction SilentlyContinue | %{$_.FullName} | Out-File "C:\Path\To\My\<ApplicationName>PreWarm.txt" -encoding UTF8 -append
```

これらのアプリケーションプリウォームファイルは、イメージのインポートプロセス中に使用します。繰り返しになりますが、これは完全にオプションです。このメソッド、Common Prewarm Manifest メソッド、または Prewarm マニフェストをまったく使用しないことを選択できます。

## Application Catalog の設定
<a name="application-catalog-configs"></a>

`AppCatalogConfig` これにより、AMI のインポート中に WorkSpaces アプリケーションイメージに登録するアプリケーションを指定できます。`AppCatalogConfig` は、次の構造のアプリケーション設定オブジェクトの JSON リストです。

```
[  
    {  
        "Name": "Rufus", //Required and must be unique among the list of applications  
        "DisplayName": "Rufus",  
        "AbsoluteAppPath": "Rufus", //Required  
        "AbsoluteIconPath": "Rufus",  
        "AbsoluteManifestPath": "Rufus",  
        "WorkingDirectory": "Rufus",  
        "LaunchParameters": "Rufus"  
    }  

    ...  

    // Up to 50 applications total  
 ]
```

アプリケーションあたりの必須フィールドは、 `Name`と のみです`AbsoluteAppPath`。各フィールドの詳細は次のとおりです。

名前 [**必須**]  
+ アプリケーションを識別するための特定の名前
+ 1～100 文字
+ 使用できる文字正規表現 `^[a-zA-Z0-9][a-zA-Z0-9_.-]{0,99}$`
+ 特定の AppCatalogConfig で一意である必要があります

DisplayName  
+ ユーザーに表示する特定のアプリケーションの表示名
+ 0～100 文字
+ 使用できる文字正規表現 `^[a-zA-Z0-9][a-zA-Z0-9_. -]{0,99}$`

AbsoluteAppPath [**必須**]  
+ アプリケーションを起動するための実行可能ファイルへのパス
  + これは、ユーザーがアプリケーションを選択したときに起動される実行可能ファイルです。
+ 1～32,767 文字
  + この文字長の上限は、Windows で拡張ファイルパスをサポートすることです。260 文字を超えるファイルパスを使用する場合は、Windows 拡張ファイルパスをサポートするように AMI とアプリケーションが正しく設定されていることを確認します。
+ などのエスケープされたファイルパス文字列を使用する
  + `"C:\\Windows\\System32\\notepad.exe"`

AbsoluteManifestPath  
+ を使用している場合のみ該当します。 [アプリケーション固有のマニフェスト](#application-specific-manifests)
+ このアプリケーションのマニフェストファイルを事前ウォーミングするパス
+ 0～32,767 文字
  + この文字長の上限は、Windows で拡張ファイルパスをサポートすることです。260 文字を超えるファイルパスを使用する場合は、Windows 拡張ファイルパスをサポートするように AMI とアプリケーションが正しく設定されていることを確認します。
+ などのエスケープされたファイルパス文字列を使用する
  + `"C:\\Path\\To\\PrewarmManifest.txt"`

AbsoluteIconPath  
+ アプリケーションに使用する AMI のアイコンファイルへのパス。
  + このアイコンは、このイメージにストリーミングするときにユーザーに表示されます。
  + 何も指定しない場合、アイコンは実行可能ファイル自体から派生します。
  + ユーザーにとって良好なクライアントエクスペリエンスを実現するために、バックグラウンドの透明性が適切に処理されたアイコンファイルを選択するように注意する
    + PNG イメージを使用する
+ 1～32,767 文字
  + この文字長の上限は、Windows で拡張ファイルパスをサポートすることです。260 文字を超えるファイルパスを使用する場合は、Windows 拡張ファイルパスをサポートするように AMI とアプリケーションが正しく設定されていることを確認します。
+ などのエスケープされたファイルパス文字列を使用する
  + `"C:\\Path\\To\\ApplicationIcon.png"`

WorkingDirectory  
+ でアプリケーションを起動する作業ディレクトリ
+ 0～32,767 文字
  + この文字長の上限は、Windows で拡張ファイルパスをサポートすることです。260 文字を超えるファイルパスを使用する場合は、Windows 拡張ファイルパスをサポートするように AMI とアプリケーションが正しく設定されていることを確認します。
+ などのエスケープされたファイルパス文字列を使用する
  + `"C:\\Path\\To\\Working\\Directory"`

LaunchParameters  
+ で指定された実行可能ファイルの起動パラメータとして使用する文字列 `AbsoluteAppPath`
+ 0～1024 文字
+ アプリケーションとして PowerShell 実行可能ファイルを使用してアプリケーションとして PowerShell スクリプトを使用する方法を示す次の例のように、必要な起動パラメータの完全なリストを含むエスケープされた文字列を使用します。 PowerShell 
  + AbsoluteAppPath
    + `"C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\powershell.exe"`
  + LaunchParameters
    + `"-File \"C:\\Path\\To\\App\\Script.ps1\""`

### AppCatalogConfig のサンプル
<a name="sample-appcatalogconfig"></a>

これは、AppCatalogConfig for Notepad、Google Chrome、および Mozilla Firefox のベアボーンの例です。

```
[  
    {  
        "Name": "Notepad",  
        "DisplayName": "Notepad",  
        "AbsoluteAppPath": "C:\\Windows\\System32\\notepad.exe"
    },  
    {  
        "Name": "Chrome",  
        "DisplayName": "Chrome",  
        "AbsoluteAppPath": "C:\\Program Files\\Google\\Chrome\\Application\\chrome.exe",
        "LaunchParameters": "https://www.amazon.com/"  
    },  
    {  
        "Name": "Firefox",  
        "DisplayName": "Firefox",  
        "AbsoluteAppPath": "C:\\Program Files\\Mozilla Firefox\\firefox.exe",
        "LaunchParameters": "https://aws.amazon.com/"  
    }  
 ]
```