ドライバーのアップグレード後に、到達できない EC2 Windows インスタンス、または DNS に到達できない EC2 Windows インスタンスをトラブルシューティングするにはどうすればよいですか?

最終更新日: 2022 年 10 月 4 日

Amazon Elastic Compute Cloud (Amazon EC2) Windows インスタンスで準仮想化 (PV)、Non-Volatile Memory Express (NVMe)、または Elastic Network Adapter (ENA) ドライバーを更新した後、インスタンスに到達できなくなりました。または、ドライバーをアップグレードしてインスタンスタイプを Nitro ベースのインスタンスに変更したところ、インスタンスがドメインネームシステム (DNS) に到達できなくなりました。これをトラブルシューティングするにはどうすればよいですか?

簡単な説明

EC2 Windows インスタンスで使用される AWS ドライバーには 3 つのタイプがあります。

インスタンスによって使用される AWS ドライバーのタイプは、インスタンスタイプによって異なります。Nitro ベースのインスタンスファミリーのほとんどのインスタンスは、ネットワークに ENA ドライバーを使用し、ストレージに AWS NVMe ドライバーを使用します。Xen ベースのインスタンスファミリー (Nitro 以外) のほとんどのインスタンスは、ネットワークとストレージの両方に AWS PV ドライバーを使用します。一部のインスタンスでは、ストレージとネットワークにドライバーを組み合わせて使用します。インスタンスと、それがネットワークとストレージに使用するドライバーについては、ネットワーキング機能とストレージ機能の概要を参照してください。ネットワーキング機能とストレージ機能の概要の表で、Elastic Block Storage (EBS) のみは、ボリュームが AWS PV ドライバーを使用していることを示しています。NVMe EBS は、インスタンスが NVMe ドライバーを使用していることを示しています。

注: AWS PV ドライバーは、Windows Server 2008 R2 以降でサポートされています。Windows Server 2003 は Citrix PV ドライバーを使用します。Windows Server 2008 R2 は、AWS PV バージョン 8.3.4 以前と AWS ENA 2.2.3 以前をサポートしています。詳細については、Windows インスタンス用 Paravirtual ドライバーを参照してください。

Windows インスタンスのドライバーをアップグレードしたり、インスタンスタイプを変更したりする場合は、最新世代のインスタンスタイプへの移行 (Nitro/Xen) を参照してください。

注: 次の PowerShell コマンドを実行して、Windows インスタンスで実行されている AWS ドライバーとドライバーのバージョンを一覧表示できます。

Get-WmiObject Win32_PnpSignedDriver | Select-Object DeviceName, DriverVersion, InfName | Where-Object {$_.DeviceName -like "*AWS*" -OR $_.DeviceName -like "*Amazon*"}

解決方法

注: インスタンスを変更すると、インスタンスが起動しなくなることがあります。インスタンスを変更する前に、ルート EBS ボリュームのスナップショットを作成するのがベストプラクティスです。詳細については、スナップショットの作成を参照してください。

Windows ドライバーをアップグレードした後の到達不能インスタンスをトラブルシューティングするには、以下を実行します。

インスタンスのスクリーンショットを確認します。

インスタンスのスクリーンショットを確認するか、Windows 用 EC2 Rescue を使用してシステムログを確認します。

  • インスタンスのスクリーンショットを確認して、インスタンスの状態を判断します。その後、到達不能インスタンスをトラブルシューティングするの手順を確認します。
  • スクリーンショットにログオン画面が表示されているが、インスタンスのステータスチェックが失敗している場合は、破損しているか、ドライバーが検出できないことが問題となっている可能性があります。

Windows 用 EC2Rescue を使用してシステムログを確認します。

インスタンスタイプが変更された場合は、まずインスタンスタイプを元に戻すか、T2 インスタンスタイプに戻してから、以下のログを確認してください。それでも解決しない場合は、EC2Rescue ツールを使用して、接続できないインスタンスのオペレーティングシステム (OS) ログを取得してください。これらのログには、イベントビューワーのログ、EC2Config ログ、起動ログなどが含まれます。

  • プレーンテキストでのデバイスのインストールについては、%SystemRoot%\inf にある setupapi.dev ログを確認してください。この情報を使用し、タイムスタンプを使用してデバイスのインストールを確認し、デバイスのインストールに関する問題をトラブルシューティングできます。
  • C:\Program Files\Amazon\XenTools にある AWSPVDriverMSI ログファイルを確認します。このログは、AWS PV ドライバーのインストールに固有のログであり、エラーを報告します。

ドライバーが破損しているか、正しくインストールされていない旨がログに示されている場合は、ドライバーをオフラインでインスタンスに挿入します。AWSSupport-UpgradeWindowsAWSDrivers オートメーションドキュメントを使用して、インスタンス上のストレージおよびネットワークの AWS ドライバーをアップグレードまたは修復できます。詳細については、AWS Systems Manager を使用した AWS PV、ENA、NVMe ドライバーのアップグレードを参照してください。

注: ドライバーをアップグレードしたり、インスタンスタイプを変更したりする前に、スナップショットを取得してインスタンスをバックアップするのがベストプラクティスです。

Windows 用 EC2Rescue を使用してインスタンスを復元します。

EC2Rescue ツールを使用して、インスタンスを直近かつ既知の正しい設定状態に復元します。詳細については、動画チュートリアルを参照してください。

使用可能な最新のスナップショットを使用して、ルートボリュームを置き換えます。

詳細については、以前のスナップショットを使用したボリュームの置き換えを参照してください。

Windows 用 EC2 シリアルコンソールを使用したトラブルシューティング

Windows 用 EC2 シリアルコンソールを有効にしている場合は、それを使用して、サポートされている Nitro ベースのインスタンスタイプのトラブルシューティングを行うことができます。シリアルコンソールは、起動の問題、ネットワーク設定、および Secure Shell プロトコル (SSH) 設定の問題のトラブルシューティングに役立ちます。シリアルコンソールは、正常に動作するネットワーク接続を必要とすることなく、インスタンスに接続します。Amazon EC2 コンソールまたは AWS コマンドラインインターフェイス (AWS CLI) を使用して、シリアルコンソールにアクセスできます。

シリアルコンソールを使用する前に、アカウントレベルでコンソールにアクセス権を付与します。その後、IAM ユーザーにアクセス権を付与する AWS Identity and Access Management (IAM) ポリシーを作成します。また、シリアルコンソールを使用するすべてのインスタンスには、パスワードベースのユーザーを 1 つ以上含める必要があります。インスタンスが到達不能で、シリアルコンソールへのアクセスを設定していない場合は、前述の方法のいずれかを使用してインスタンスをトラブルシューティングします。Windows 用の EC2 シリアルコンソールの設定の詳細については、EC2 シリアルコンソールへのアクセスを設定するを参照してください。

注: AWS CLI コマンドの実行中にエラーが発生した場合は、AWS CLI の最新バージョンが実行されていることを確認してください

Windows ドライバーのアップグレード後に到達可能でも DNS にアクセスできないインスタンスをトラブルシューティングするには、以下を実行します。

Elastic Network Interface 設定を再構成します。

インスタンスを最新世代のインスタンスタイプに移行すると、既存の Elastic Network Interface の静的インターネットプロトコル (IP) が失われることがあります。この移行中に、カスタム DNS ネットワーク設定も失われる可能性があります。これは、インスタンスがデフォルトで新しい ENA デバイスに設定されているためです。これを解決するには、Elastic Network Interface 設定を再構成します。これらの設定を再構成するには、ローカル認証情報が必要です。詳細については、Amazon EC2 Windows インスタンスに静的 IP アドレスを割り当てるにはどうしたらよいですか? を参照してください。