Amazon Elastic Compute Cloud
Windows インスタンス用ユーザーガイド

カスタム Windows AMI の作成

Windows AMI を作成するには、既存の Windows AMI からインスタンスを起動し、インスタンスをカスタマイズして、そのインスタンスから新しい AMI を作成します。

カスタム Linux AMI を作成するには、そのインスタンスのボリュームのタイプに対応した手順を使用します。詳細については、『Linux インスタンス用 Amazon EC2 ユーザーガイド』の「Amazon EBS-backed Linux AMI の作成」または「Instance store-backed Linux AMI の作成」を参照してください。

AMI の作成の概要

最初に、作成する AMI と同様の AMI からインスタンスを起動します。インスタンスに接続し、それをカスタマイズできます。インスタンスが希望どおりにセットアップされたら、インスタンスを停止してデータの整合性を確認した後で AMI を作成し、その後イメージを作成します。AMI は自動的に登録されます。

AMI 作成プロセスの間、Amazon EC2 はインスタンスのルートボリュームとインスタンスにアタッチされているその他の EBS ボリュームのスナップショットを作成します。AMI の登録を解除してスナップショットを削除するまで、スナップショットは課金の対象となります。詳細については、「Windows AMI の登録解除」を参照してください。インスタンスにアタッチされるいずれかのボリュームが暗号化されている場合、新しい AMI は、Amazon EBS 暗号化 をサポートするインスタンスでのみ正常に起動します。詳細については、「Amazon EBS Encryption」を参照してください。

ボリュームのサイズによっては、AMI 作成プロセスの完了に数分かかる場合があります (最長で 24 時間かかることもあります)。AMI を作成する前に、ボリュームのスナップショットを作成しておくと、効率が向上する可能性があります。この方法では、AMI を作成する際に作成する必要があるのは小さい差分スナップショットのみになるため、プロセスがよりすばやく完了します (スナップショット作成の合計時間は同じです)。詳細については、「Amazon EBS スナップショットの作成」を参照してください。

プロセスが完了すると、新しい AMI と、インスタンスのルートボリュームから作成されたスナップショットが与えられます。ユーザーが新しい AMI を使用してインスタンスを起動すると、Amazon はスナップショットを使用して、そのルートボリュームのために新しい EBS ボリュームを作成します。

ルートデバイスボリュームに加えて、インスタンスストアボリュームまたは Amazon EBS ボリュームをインスタンスに追加した場合、新しい AMI のブロックデバイスマッピングにこれらのボリュームの情報が含まれ、新しい AMI から起動するインスタンスのブロックデバイスマッピングに自動的にこれらのボリュームの情報が含まれます。新しいインスタンスのブロックデバイスマッピングに指定されているインスタンスストアボリュームは新しく、AMI の作成に使用したインスタンスのインスタンスストアボリュームからのデータは含まれていません。EBS ボリュームのデータは永続的です。詳細については、「ブロックデバイスマッピング」を参照してください。

注記

カスタム AMI から新しいインスタンスを作成する場合、本番稼働用環境に配置する前にそのルートボリュームと追加の EBS ストレージの両方を初期化する必要があります。詳細については、「Amazon EBS ボリュームの初期化」を参照してください。

実行中のインスタンスからの Windows AMI の作成

AMI は、AWS マネジメントコンソール またはコマンドラインを使用して作成できます。次の図は、実行中の EC2 インスタンスから AMI を作成するプロセスをまとめたものです。既存の AMI から開始して、インスタンスを起動してカスタマイズし、そこから新しい AMI を作成して、最後に新しい AMI のインスタンスを起動します。以下の図のステップは次の手順のステップに一致しています。稼働中の Windows インスタンスがすでにある場合は、ステップ 4 に直接進むことができます。


					インスタンスから AMI を作成するワークフロー

コンソールを使用してインスタンスから AMI を作成するには

  1. https://console.aws.amazon.com/ec2/) にある Amazon EC2 コンソールを開きます。

  2. ナビゲーションペインで、[イメージ]、[AMI] の順に選択します。

  3. [フィルタ] オプションを使用して、AMI のリストをニーズに合った Windows AMI に絞り込みます。たとえば、AWS 提供の Windows AMI を表示するには、ドロップダウンリストから [パブリックイメージ] を選択します。検索バーを選択します。メニューから [所有者] を選択し、続いて [Amazon イメージ] を選択します。メニューから [ソース] を選択し、必要な Windows Server のバージョンに応じて、以下のいずれかを入力します。

    • amazon/Windows_Server-2019

    • amazon/Windows_Server-2016

    • amazon/Windows_Server-2012

    • amazon/Windows_Server-2008

    必要なフィルタを追加します。AMI を選択したら、そのチェックボックスをオンにします。

  4. [Launch] を選択します。デフォルト値をそのまま使ってウィザードを完了します。詳細については、「インスタンス起動ウィザードを使用してインスタンスを起動する」を参照してください。インスタンスが準備完了になったら、そのインスタンスに接続します。詳細については、「Windows インスタンスへの接続」を参照してください。

  5. 必要に応じてインスタンスで次のアクションを実行してインスタンスをカスタマイズできます。

    • ソフトウェアやアプリケーションをインストールする

    • データをコピーする

    • 起動時間を短縮するために一時ファイルの消去、ハードディスクのデフラグ、占有領域の開放処理を行う。

    • 追加の EBS ボリュームをアタッチする

    • 新規ユーザーアカウントを作成し、Administrators グループに追加する

      AMI を共有している場合、デフォルトの管理者パスワードを開示せずに、これらの認証情報を RDP アクセス用に供給できます。

    • [Windows Server 2016 以降] EC2Launch を使用して、設定を定義します。起動時にランダムなパスワードを生成するには、adminPasswordType 設定を使用します。詳細については、「EC2Launch の設定」を参照してください。

    • [Windows Server 2012 R2 以前] EC2Config を使用して、設定を定義します。起動時にランダムなパスワードを生成するには、Ec2SetPassword プラグインを有効にします。それ以外の場合は、現在の管理者パスワードが使用されます。詳細については、「EC2Config の設定ファイル群」を参照してください。

    • [Windows Server 2008 R2] インスタンスが RedHat ドライバーを使用して Xen 仮想化ハードウェアにアクセスする場合は、AMI を作成する前に Citrix ドライバーにアップグレードします。詳細については、「Windows Server 2008 および 2008 R2 インスタンスのアップグレード (Redhat から Citrix PV へのアップグレード)」を参照してください。

  6. ナビゲーションペインで [Instances] を選択し、インスタンスを選択します。[Actions]、[Image]、[Create Image] の順に選択します。

    ヒント

    このオプションが無効になっている場合、そのインスタンスは Amazon EBS-Backed インスタンスではありません。

  7. イメージの一意の名前とオプションの説明を指定します (最大 255 文字)。

    デフォルトでは、Amazon EC2 はインスタンスをシャットダウンし、アタッチされていたすべてのボリュームのスナップショットを作成し、AMI を作成して登録し、インスタンスを再起動します。インスタンスをシャットダウンしない場合、[再起動しない] を選択します。

    警告

    [再起動しない] を選択した場合は、作成されたイメージのファイルシステムの整合性は保証されません。

    (オプション) ルートボリューム、Amazon EBS ボリューム、インスタンスストアボリュームを必要に応じて変更します。例:

    • ルートボリュームのサイズを変更するには、[Type] 列で [Root] ボリュームを見つけ、[Size] フィールドに入力します。

    • インスタンスの起動に使用された AMI のブロックデバイスマッピングで指定された Amazon EBS ボリュームを非表示にするには、リストから EBS ボリュームを見つけ、[Delete] を選択します。

    • Amazon EBS ボリュームを追加するには、[新しいボリュームの追加]、[Type]、[EBS] の順に選択し、フィールドに入力します。その後新しい AMI からインスタンスを起動すると、追加されたボリュームは自動的にインスタンスにアタッチされます。空のボリュームはフォーマットしてマウントする必要があります。スナップショットベースのボリュームはマウントする必要があります。

    • インスタンスの起動に使用された AMI のブロックデバイスマッピングで指定されたインスタンスストアボリュームを非表示にするには、リストからボリュームを見つけ、[Delete] を選択します。

    • インスタンスストアボリュームを追加するには、[新しいボリュームの追加]、[Type]、[インスタンスストア] の順に選択し、[デバイス] リストからデバイス名を選択します。その後新しい AMI からインスタンスを起動すると、追加されたボリュームは自動的に初期化されてマウントされます。これらのボリュームには、AMI の作成に使用された実行中のインスタンスのインスタンスストアボリュームのデータは含まれません。

    完了したら、[イメージの作成] を選択します。

  8. AMI の作成中に、ナビゲーションペインで [AMI] を選択してステータスを表示できます。最初は、pending です。数分後、ステータスは available に変わるはずです。

    (オプション) ナビゲーションペインの [Snapshots] を選択して、新しい AMI に作成されたスナップショットを表示します。ユーザーがこの AMI からインスタンスを起動すると、Amazon はこのスナップショットを使用して、ルートデバイスボリュームを作成します。

  9. 新しい AMI からインスタンスを起動します。詳細については、「インスタンス起動ウィザードを使用してインスタンスを起動する」を参照してください。新しい実行中のインスタンスには、前の手順で適用したすべてのカスタマイズが含まれるほか、ユーザーデータ (インスタンスの起動時に実行されるスクリプト) など、インスタンスの起動時に追加するその他のカスタマイズも含まれます。

コマンドラインを使用してインスタンスから AMI を作成するには

次のコマンドの 1 つを使用できます。これらのコマンドラインインターフェイスの詳細については、Amazon EC2 へのアクセス を参照してください。