Windows インスタンスを現行世代のインスタンスタイプに移行する - Amazon Elastic Compute Cloud

Windows インスタンスを現行世代のインスタンスタイプに移行する

AWS Windows AMI は、Microsoft のインストールメディアで使用されるデフォルト設定で設定されており、いくつかのカスタマイズがあります。カスタマイズには、最新世代のインスタンスタイプ (M5 や C5 など、AWS Nitro System 上で構築されたインスタンス) をサポートするドライバーと設定が含まれます。

以下のようなケースで Nitro ベースのインスタンス (ベアメタルインスタンスを含む) に移行する場合には、このトピックの手順に従うことをお勧めします。

  • カスタム Windows AMI からインスタンスを作成する場合

  • 2018 年 8 月より前に作成された Amazon が提供する Windows AMI からインスタンスを作成する場合

詳細については、「Amazon EC2 の更新 - 追加インスタンスタイプ、Nitro システム、および CPU オプション」を参照してください。

注記

Windows Server バージョン 2008 R2 以降では、以下の移行手順を実行できます。Linux インスタンスを最新世代のインスタンスタイプに移行するには、「インスタンスタイプを変更する」を参照してください。

注記

また、AWSSupport-UpgradeWindowsAWSDrivers オートメーションドキュメントを使用して、パート 1、パート 2、パート 3 で説明した手順を自動化することもできます。自動化された手順を使用する場合は、(代替案) AWS Systems Manager を使用した AWS PV、ENA、NVMe ドライバーのアップグレード を参照して、パート 4 とパート 5 に進みます。

開始する前に

この手順では、現在 M4 または C4 など、前の世代の Xen ベースのインスタンスタイプを実行しており、AWS Nitro System 上に構築されたインスタンスに移行する場合を想定しています。

アップグレードを正常に実行するには、PowerShell バージョン 3.0 以降を使用する必要があります。

注記

最新世代のインスタンスに移行する場合、インスタンスが新しい Enhanced Networking Adapter デバイスにデフォルトで設定されるため、既存の ENI の静的 IP またはカスタム DNS ネットワーク設定は失われる場合があります。

この手順のステップを実行する前に、インスタンスのバックアップを作成することをお勧めします。EC2 コンソールで、移行が必要なインスタンスを選択し、コンテキストメニュー (右クリック) を開いたら、[インスタンスの状態]、[停止] の順に選択します。

警告

インスタンスを停止すると、インスタンスストアボリューム上のデータは消去されます。インスタンスストアボリューム上のデータを保持するには、永続的ストレージにデータをバックアップするようにしてください。

EC2 コンソールでインスタンスの右クリックコンテキストメニューを開き、[イメージ]、[イメージの作成] の順に選択します。

注記

この手順のパート 4 およびパート 5 は、インスタンスタイプを最新世代に移行または変更した後で完了できます。ただし、特にベアメタルインスタンスタイプに移行する場合は、移行前に完了することをお勧めします。

パート 1: AWS PV ドライバーのインストールとアップグレード

AWS PV ドライバーが Nitro システムで使用されていなくても、Citrix PV または AWS PV の以前のバージョンを使用している場合は、アップグレードする必要があります。最新の AWS PV ドライバーは、Nitro システムがある場合、または Xen ベースインスタンスに戻す必要がある場合に表面化するかもしれない以前のバージョンのドライバーのバグを解決します。ベストプラクティスとして、AWS の Windows インスタンスの最新ドライバーに常に更新することをお勧めします。

次の手順に従って、Windows Server 2008 R2、Windows Server 2012、Windows Server 2012 R2、Windows Server 2016、または Windows Server 2019 で、 AWS PV ドライバーのインプレースアップグレードを実行するか、Citrix PV ドライバーから AWS PV ドライバーにアップグレードします。詳細については、Windows インスタンスでの PV ドライバーのアップグレード を参照してください。

ドメインコントローラーをアップグレードするには、「ドメインコントローラーのアップグレード (AWS PV アップグレード)」を参照してください。

AWS PV ドライバーのアップグレードを実行するには
  1. リモートデスクトップを使用してインスタンスに接続し、アップグレードのためにインスタンスを準備します。アップグレードを実行する前に、システムディスク以外をすべてオフラインにします。AWS PV ドライバーのインプレースアップグレードを実行する場合は、このステップは必要ありません。また、サービスコンソールで、不可欠でないサービスを [手動] 起動に設定します。

  2. インスタンスに最新のドライバーパッケージをダウンロードします。

  3. フォルダの内容を抽出し、AWSPVDriverSetup.msi を実行します。

MSI の実行後、インスタンスは自動的に再起動され、ドライバーがアップグレードされます。インスタンスは最大 15 分間、使用できなる場合があります。

アップグレードが完了し、インスタンスが Amazon EC2 コンソールの両方のヘルスチェックに合格した後、リモートデスクトップを使用してインスタンスに接続して、新しいドライバーがインストールされたことを確認します。デバイスマネージャーの [Storage Controllers] で、[AWS PV Storage Host Adapter] を見つけます。ドライバーバージョンがドライバーのバージョン履歴の表に掲載されている最新バージョンと同じであることを確認します。詳細については、AWS PV ドライバーパッケージの履歴 を参照してください。

パート 2: ENA のインストールとアップグレード

すべてのネットワーク機能がサポートされるように、最新の Elastic Network Adapter ドライバーにアップグレードします。インスタンスを起動し、すでに拡張ネットワーキングが有効になっていない場合、必要なネットワークアダプタドライバーをダウンロードしてインスタンスにインストールします。次に、拡張ネットワークを有効にするように enaSupport インスタンス属性を設定します。この属性は、サポートされるインスタンスタイプにおいて、ENA ドライバーがインストールされている場合のみ有効にできます。詳細については、EC2 インスタンスで Elastic Network Adapter (ENA) による拡張ネットワーキングを有効にする を参照してください。

  1. インスタンスに最新のドライバーをダウンロードします。

  2. zip アーカイブを展開します。

  3. 展開したフォルダから install.ps1 PowerShell スクリプトを実行してドライバーをインストールします。

    注記

    インストールエラーを回避するには、install.ps1 スクリプトを管理者として実行します。

  4. ご使用の AMI が enaSupport を有効にしているかどうか確認します。有効でない場合は、EC2 インスタンスで Elastic Network Adapter (ENA) による拡張ネットワーキングを有効にする のマニュアルに従ってください。

パート 3: AWS NVMe ドライバーをアップグレード

AWS NVMe ドライバーは、Nitro システム内では NVMe ブロックデバイスとして表示される Amazon EBS および SSD インスタンスストアボリュームとやり取りを行い、パフォーマンスを向上させるために使用されます。

重要

次の手順は、インスタンスを最新世代のインスタンスタイプに移行する目的で、特に以前の世代のインスタンスにある AWS NVMe をインストールまたはアップグレードする場合のために変更されています。

  1. インスタンスに最新のドライバーパッケージをダウンロードします。

  2. zip アーカイブを展開します。

  3. dpinst.exe を実行してドライバーをインストールします。

  4. PowerShell セッションを開き、次のコマンドを実行します。

    PS C:\> start rundll32.exe sppnp.dll,Sysprep_Generalize_Pnp -wait
    注記

    コマンドを適用するには、管理者として PowerShell セッションを実行している必要があります。PowerShell (x86) のバージョンではエラーが発生します。

    このコマンドはデバイスドライバーでのみ sysprep を実行します。完全な sysprep 準備は実行しません。

  5. Windows Server 2008 R2 および Windows Server 2012 の場合、インスタンスをシャットダウンし、インスタンスタイプを最新世代のインスタンスに変更して起動してからパート 4 に進みます。インスタンスを最新世代のインスタンスタイプに移行する前に以前の世代のインスタンスタイプでインスタンスを再び開始しても、起動しません。他のサポートされた Windows AMI の場合は、デバイスの sysprep の後いつでもインスタンスタイプを変更できます。

パート 4: EC2Config および EC2Launch の更新

Windows インスタンスの場合、最新の EC2Config および EC2Launch ユーティリティが EC2 ベアメタルの場合を含む Nitro Systemで実行されると追加の機能および情報が提供されます。EC2Config サービスは、Windows Server 2016 より前の AMI にデフォルトで含まれています。EC2Launch は、Windows Server 2016 以降の AMI の EC2Config を置き換えます。

EC2Config サービスおよび EC2Launch サービスが更新されると、AWS からの新しい Windows AMI には最新バージョンのサービスが含まれます。ただし、EC2Config および EC2Launch の最新バージョンを使用して、独自の Windows AMI とインスタンスを更新する必要があります。

EC2Config のインストールまたは更新
  1. EC2Config インストーラをダウンロードして解凍します。

  2. EC2Install.exe を実行します。オプションの完全なリストについては、EC2Install オプションを指定して /? を実行してください。デフォルトでは、セットアップによってプロンプトが表示されます。プロンプトを表示せずにコマンドを実行するには、/quiet オプションを使用します。

詳細については、EC2Config の最新バージョンのインストール を参照してください。

EC2Launch のインストールまたは更新
  1. インスタンスで EC2Launch をすでにインストールして設定している場合は、EC2Launch 設定ファイルのバックアップを作成します。インストールプロセスでは、このファイルに変更内容が保存されません。デフォルトでは、このファイルは C:\ProgramData\Amazon\EC2-Windows\Launch\Config ディレクトリにあります。

  2. EC2-Windows-Launch.zip をインスタンス上のディレクトリにダウンロードします。

  3. install.ps1EC2-Windows-Launch.zip のダウンロード先と同じディレクトリにダウンロードします。

  4. install.ps1 を実行します。

    注記

    インストールエラーを回避するには、install.ps1 スクリプトを管理者として実行します。

  5. EC2Launch 設定ファイルのバックアップを作成する場合は、同ファイルを C:\ProgramData\Amazon\EC2-Windows\Launch\Config ディレクトリにコピーします。

詳細については、EC2Launch を使用した Windows インスタンスの設定 を参照してください。

パート 5: ベアメタルインスタンスのシリアルポートドライバーのインストール

i3.metal インスタンスタイプでは、I/O ポートベースのシリアルデバイスではなく、PCI ベースのシリアルデバイスを使用しています。最新の Windows AMI は自動的に PCI ベースのシリアル・デバイスを使用し、シリアル・ポート・ドライバーがインストール済みです。日付が 2018.04.11 以降の Amazon が提供する Windows AMI から作成したインスタンスを使用していない場合、シリアル・ポート・ドライバーをインストールしてパスワード生成やコンソール出力などの EC2 機能用のシリアル・デバイスを有効にする必要があります。最新の EC2Config および EC2Launch は、i3.metal もサポートし、追加機能を提供します。まだ実行していない場合は、パート 4 のステップに従います。

シリアルポートドライバーをインストールするには
  1. インスタンスにシリアルドライバーパッケージをダウンロードします。

  2. フォルダの内容を展開し、aws_ser.INF のコンテキストメニューを開き (右クリック)、[インストール] を選択します。

  3. [OK] を選択します。

パート 6: 電源管理設定の更新

次のように電源管理設定を更新すると、ディスプレイが消灯しないように設定されます。これにより、Nitro Systemで正常な OS のシャットダウンが可能になります。2018 年 11 月 28 日時点で Amazon が提供しているすべての Windows AMI は、既にこのデフォルトの設定になっています。

  1. コマンドプロンプトまたは PowerShell セッションを開きます。

  2. 以下のコマンドを実行します。

    powercfg /setacvalueindex 381b4222-f694-41f0-9685-ff5bb260df2e 7516b95f-f776-4464-8c53-06167f40cc99 3c0bc021-c8a8-4e07-a973-6b14cbcb2b7e 0 powercfg /setacvalueindex 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c 7516b95f-f776-4464-8c53-06167f40cc99 3c0bc021-c8a8-4e07-a973-6b14cbcb2b7e 0 powercfg /setacvalueindex a1841308-3541-4fab-bc81-f71556f20b4a 7516b95f-f776-4464-8c53-06167f40cc99 3c0bc021-c8a8-4e07-a973-6b14cbcb2b7e 0

パート 7: 新しいインスタンスタイプ用のインテルチップセットドライバーの更新

u-6tb1.metalu-9tb1.metal、および u-12tb1.metal インスタンスタイプは、以前は Windows AMI にインストールされていなかったチップセットドライバーを必要とするハードウェアを使用します。日付が 2018 年 11 月 19 日以降の Amazon が提供する Windows AMI から起動したインスタンスを使用していない場合、Intel チップセット INF ユーティリティを使用して、そのドライバーをインストールする必要があります。

チップセットドライバーをインストールするには
  1. インスタンスにチップセットユーティリティをダウンロードします。

  2. ファイルを展開します。

  3. SetupChipset.exe を実行します。

  4. Intel ソフトウェアライセンス契約に同意し、チップセットドライバーをインストールします。

  5. インスタンスを再起動します。

(代替案) AWS Systems Manager を使用した AWS PV、ENA、NVMe ドライバーのアップグレード

AWSSupport-UpgradeWindowsAWSDrivers オートメーションドキュメントは、パート 1、パート 2、パート 3 で説明した手順を自動化することもできます。この方法は、ドライバーのアップグレードに失敗したインスタンスを修復することもできます。

AWSSupport-UpgradeWindowsAWSDrivers オートメーションドキュメントは、指定された EC2 インスタンスでストレージおよびネットワーク AWS ドライバーをアップグレードまたは修復します。このドキュメントでは、AWS Systems Manager エージェント (SSM Agent) を呼び出すことによって、最新バージョンの AWS ドライバーをオンラインでインストールしようとしています。SSM Agent が接続可能でない場合、明示的に要求された場合、ドキュメントは AWS ドライバーのオフラインインストールを実行できます。

注記

ドメインコントローラーでは、この手順は失敗します。ドメインコントローラーでドライバを更新するには、「ドメインコントローラーのアップグレード (AWS PV アップグレード)」を参照してください。

AWS Systems Manager を使用して AWS PV、ENA および NVMe ドライバーを自動的にアップグレードするには
  1. https://console.aws.amazon.com/ Systems Manager で Systems Manager コンソールを開きます。

  2. [オートメーション]、[オートメーションの実行] の順に選択します。

  3. AWSSupport-UpgradeWindowsAWSDrivers オートメーションドキュメントを検索して選択し、[オートメーションの実行] を選択します。

  4. [入力パラメータ] セクションで、次のオプションを設定します。

    [インスタンス ID]

    アップグレードするインスタンスの一意の ID を入力します。

    AllowOffline

    (オプション) 次のオプションのいずれかを選択します。

    • True —オフラインインストールを実行するには、このオプションを選択します。インスタンスは、アップグレード処理中に停止され、再開されます。

      警告

      インスタンスを停止すると、インスタンスストアボリューム上のデータは消去されます。インスタンスストアボリューム上のデータを保持するには、永続的ストレージにデータをバックアップするようにしてください。

    • False — (デフォルト) オンラインインストールを実行するには、このオプションを選択したままにします。インスタンスは、アップグレード処理中に再起動されます。

    重要

    オンラインおよびオフラインのアップグレードでは、アップグレード操作を試みる前に AMI が作成されます。AMI は、自動化が完了した後も維持されます。AMI へのアクセスを保護するか、不要になった場合は削除してください。

    SubnetId

    (オプション) 以下のいずれかの値にエラーがあります。

    • SelectedInstanceSubnet — (デフォルト) アップグレードプロセスでは、アップグレードするインスタンスと同じサブネットにヘルパーインスタンスを起動します。サブネットは、Systems Manager エンドポイント (ssm.*) との通信を可能にする必要があります。

    • CreateNewVPC — アップグレードプロセスでは、ヘルパーインスタンスが新しい VPC で起動されます。ターゲットインスタンスのサブネットが ssm.* エンドポイントと通信できるかどうかが不明な場合は、このオプションを使用します。ユーザーは、VPC を作成するアクセス許可が必要です。

    • 特定のサブネット ID — ヘルパーインスタンスを起動する特定のサブネットの ID を指定します。サブネットは、アップグレードするインスタンスと同じアベイラビリティーゾーンに存在し、ssm.* エンドポイントとの通信を許可する必要があります。

  5. [実行] を選択します。

  6. アップグレードの完了を許可します。オンラインアップグレードの完了には最大 10 分、オフラインアップグレードの完了までには最大 25 分かかります。