到達できない Windows インスタンスをトラブルシューティングするための一般的なスクリーンショット - Amazon Elastic Compute Cloud

到達できない Windows インスタンスをトラブルシューティングするための一般的なスクリーンショット

以下の情報を使用して、サービスによって返されたスクリーンショットに基づいて、到達不能な Windows インスタンスをトラブルシューティングすることができます。

ログイン画面 (Ctrl+Alt+Delete)

コンソールスクリーンショットサービスにより以下の内容が返されました。

ログイン画面

インスタンスがログイン時に到達不可能になった場合は、ネットワーク設定または Windows リモートデスクトップサービスに問題がある可能性があります。プロセスが大量の CPU を使用している場合、インスタンスも応答しない可能性があります。

ネットワーク構成

次の情報を使用して、AWS、Microsoft Windows、およびローカル (またはオンプレミス) ネットワーク設定がインスタンスへのアクセスをブロックしていないことを確認します。

AWS ネットワーク設定
設定 検証
セキュリティグループの構成 ポート 3389 がセキュリティグループに対して開かれていることを確認します。適切なパブリック IP アドレスに接続していることを確認します。インスタンスが Elastic IP に関連付けられていない場合、パブリック IP アドレスはインスタンスが停止/起動した後に変更されます。詳細については、「リモートデスクトップからリモートコンピュータに接続できません」を参照してください。
VPC 設定 (ネットワーク ACL) Amazon VPC のアクセスコントロールリスト (ACL) がアクセスをブロックしていないことを確認します。詳細については、Amazon VPC ユーザーガイドの「ネットワーク ACL」を参照してください。
VPN の設定 仮想プライベートネットワーク (VPN) を使用して VPC に接続している場合、VPN トンネル接続を確認します。詳細については、「Amazon VPC への VPN トンネル接続のトラブルシューティング方法」を参照してください。
Windows ネットワーク設定
設定 検証
Windows ファイアウォール Windows ファイアウォールがインスタンスへの接続をブロックしていないことを確認します。リモートデスクトップのトラブルシューティングセクション「リモートデスクトップからリモートコンピュータに接続できません」にある 7 番目の項目で説明されている手順に従って、Windows ファイアウォールを無効にします。
高度な TCP/IP の設定 (静的 IP を使用) 静的 IP アドレスを設定したため、インスタンスが応答しない可能性があります。VPC の場合、ネットワークインターフェイスを作成して、インスタンスにアタッチします。

ローカルまたはオンプレミスのネットワーク設定

ローカルネットワーク設定がアクセスをブロックしていないことを確認します。インスタンスが到達不可能なため、同じ VPC 内の別のインスタンスに接続を試みます。別のインスタンスにアクセスできない場合、ローカルポリシーでアクセスが制限されていないかどうかをローカルネットワーク管理者に確認してください。

リモートデスクトップサービスの問題

ログイン時にインスタンスに接続できない場合は、インスタンスのリモートデスクトップサービス (RDS) に問題が存在する可能性があります。

ヒント

AWSSupport-TroubleshootRDP Runbook を使用して、リモートデスクトッププロトコル (RDP) での接続に影響を与える可能性のある各種設定をチェックし、変更します。詳細については、「AWS Systems Manager Automation ランブックリファレンス」の「AWSSupport-TroubleshootRDP」を参照してください。

リモートデスクトップサービスの設定
設定 検証
RDS が実行されている インスタンスで RDS が実行中であることを確認します。Microsoft 管理コンソール (MMC) サービススナップイン (services.msc) を使用してインスタンスに接続します。サービスのリストで、[リモートデスクトップサービス] が [実行中] であることを確認します。そうでない場合は、サービスを開始し、スタートアップの種類を [自動] に設定します。サービススナップインを使用してインスタンスに接続できない場合は、ルートボリュームをインスタンスからデタッチして、ボリュームのスナップショットを取得するか AMI を作成し、元のボリュームを同じアベイラビリティーゾーンの別のインスタンスにセカンダリボリュームとしてアタッチして、Start レジストリキーを変更します。完了したら、元のインスタンスにルートボリュームを再アタッチします。
RDS が有効である

サービスが開始された場合でも、無効になることがあります。ルートボリュームをインスタンスからデタッチして、ボリュームからスナップショットを取得するか AMI を作成し、元のボリュームを同じアベイラビリティーゾーンの別のインスタンスにセカンダリボリュームとしてアタッチして、「リモートレジストリを使用して EC2 インスタンスでリモートデスクトップを有効にする」で説明されているように [Terminal Server (ターミナルサーバー)] レジストリキーを変更してサービスを有効にします。

完了したら、元のインスタンスにルートボリュームを再アタッチします。

高い CPU 使用率

Amazon CloudWatch を使用して [CPUUtilization (Maximum)] メトリクスを確認します。[CPUUtilization (Maximum)] の数値が大きい場合、CPU 使用率が低下するまで待ってから再度接続してみてください。CPU 使用率が高い理由として考えられるものを以下に示します。

  • Windows Update

  • セキュリティソフトウェアによるスキャン

  • カスタム起動スクリプト

  • タスクスケジューラ

詳細については、Amazon CloudWatch ユーザーガイドの「特定のリソースの統計を取得する」を参照してください。トラブルシューティングのヒントについては、「Windows の起動直後に CPU 使用率が高い (Windows インスタンスのみ)」を参照してください。

リカバリコンソール画面

コンソールスクリーンショットサービスにより以下の内容が返されました。

リカバリコンソールのスクリーンショット

bootstatuspolicyignoreallfailures に設定されていない場合、オペレーティングシステムがリカバリコンソールで起動し、この状態でスタックする可能性があります。bootstatuspolicy 設定を ignoreallfailures に変更するには、次の手順を使用します。

デフォルトでは、AWS が提供するパブリック Windows AMI のポリシー設定は ignoreallfailures に設定されています。

  1. 接続できないインスタンスを停止します。

  2. ルートボリュームのスナップショットを作成します。ルートボリュームが /dev/sda1 としてインスタンスにアタッチされます。

    接続できないインスタンスからルートボリュームをデタッチして、ボリュームのスナップショットを取得するか AMI を作成し、同じアベイラビリティーゾーン内の別のインスタンスにセカンダリボリュームとしてアタッチします。

    警告

    一時インスタンスと元のインスタンスが同じ AMI を使用して起動された場合、追加の手順を完了する必要があります。この手順を実行しないと、ディスク署名の競合によって、ルートボリュームを復元した後、元のインスタンスを起動できなくなります。同じ AMI を使用して一時インスタンスを作成する必要がある場合は、ディスク署名の競合を回避するため、ディスク署名の衝突 の手順を完了します。

    または、一時インスタンスとして別の AMI を選択します。例えば、元のインスタンスで Windows Server 2016 用の AMI を使用している場合、Windows Server 2019 用の AMI を使用して一時インスタンスを起動します。

  3. インスタンスにログインし、コマンドプロンプトから次のコマンドを実行して bootstatuspolicy 設定を ignoreallfailures に変更します。

    bcdedit /store Drive Letter:\boot\bcd /set {default} bootstatuspolicy ignoreallfailures
  4. ボリュームを接続できないインスタンスに再アタッチし、インスタンスを再起動します。

Windows Boot Manager 画面

コンソールスクリーンショットサービスにより以下の内容が返されました。

Windows Boot Manager 画面

オペレーティングシステムのファイルシステムやレジストリで致命的な破損が発生しました。インスタンスがこの状態でスタックした場合、最新のバックアップ AMI からインスタンスを復旧するか、代わりのインスタンスを起動する必要があります。インスタンスのデータにアクセスする必要がある場合、接続できないインスタンスからルートボリュームをデタッチして、それらのボリュームからスナップショットを取得するか AMI を作成し、同じアベイラビリティーゾーン内の別のインスタンスにセカンダリボリュームとしてアタッチします。

Sysprep 画面

コンソールスクリーンショットサービスにより以下の内容が返されました。

Sysprep 画面

この画面は、Sysprep の呼び出しに EC2Config サービスを使用していない場合、または Sysprep の実行中にオペレーティングシステムでエラーが発生した場合に表示されることがあります。パスワードは、EC2Rescue を使用してリセットすることが可能です。・ それ以外の場合は、「EC2 起動エージェントで Windows Sysprep を使用して AMI を作成する」を参照してください。

Getting Ready 画面

コンソールスクリーンショットサービスにより以下の内容が返されました。

Getting Ready 画面

インスタンスコンソールスクリーンショットサービスを繰り返し更新し、進捗状況のリングが回っていることを確認します。リングが回っている場合、オペレーティングシステムが起動するまで待ちます。Amazon CloudWatch を使用してオペレーティングシステムがアクティブであるかどうかを確認することにより、インスタンスの [CPUUtilization (Maximum)] メトリクスも確認します。進行状況のリングが回っていない場合、インスタンスは起動プロセス中にスタックしている可能性があります。インスタンスを再起動します。再起動で問題を解決できない場合は、インスタンスを最新のバックアップ AMI から復旧するか、代わりのインスタンスを起動します。インスタンス上のデータにアクセスする必要がある場合、ルートボリュームを接続できないインスタンスからデタッチし、ボリュームのスナップショットを取得するか、AMI を作成します。その後、同じアベイラビリティーゾーン内の別のインスタンスにセカンダリボリュームとしてアタッチします。

Windows Update 画面

コンソールスクリーンショットサービスにより以下の内容が返されました。

Windows Update 画面

Windows Update プロセスがレジストリを更新中です。更新が終了するまで待機してください。更新時にデータが破損する可能性があるため、インスタンスを再起動したり停止したりしないでください。

注記

Windows Update プロセスは、更新中のサーバーのリソースを消費することがあります。この問題が頻繁に発生する場合、高速なインスタンスタイプと高速な EBS ボリュームを使用することを検討します。

Chkdsk

コンソールスクリーンショットサービスにより以下の内容が返されました。

Chkdsk 画面。

Windows がドライブで chkdsk ツールを実行し、ファイルシステムの完全性を確認し、論理的なファイルシステムのエラーを修正しています。プロセスが完了するまで待ちます。