前回に引き続き、仮想マシンの運用管理やトラブルシューティングを支援するさまざまな便利な機能を提供します。今回は「サポート+トラブルシューティング」に分類されるメニューのいくつかを紹しましょう。
ブート診断
Azure仮想マシンの「ブート診断」機能では、「スクリーンショット」と「シリアルログ」の各タブを使用して、仮想マシンの動作状況を確認するのに利用できます。「スクリーンショット」は、仮想マシンのローカルコンソール(VGA出力)のスクリーンショットを取得するものです。
Windows仮想マシンの場合は、Windows起動中の画面、シャットダウン中の画面、ロック画面、場合によってはブルースクリーン(BSoD)の画面や起動時のCHKDSK実行中の画面を確認することができます。Linux仮想マシンの場合も起動中やシャットダウン中の画面、ログインプロンプトの画面を参照できます。
いずれも取得時の瞬間的な画面表示のビットマップファイル(.bmp形式)なので、読み取り専用であり、コンソールを操作できるわけではありません。「シリアルログ」では、シリアルポートからの出力情報(ログ出力など)を、こちらも読み取り専用で参照することができます。なお、「ブート診断」機能を利用するには、診断データを格納するためのストレージアカウントの構成が必要です。
パスワードのリセット
Azure仮想マシンの「パスワードのリセット」機能は、Azure仮想マシンのデプロイ時に指定したリモート接続用の管理者アカウントのユーザー名やパスワード、リモート接続の構成をリセットする機能です。リモートデスクトッププロトコル(RDP)によるWindows仮想マシンへの接続や、SSH(Secure Shell)によるLinux仮想マシンへの接続が、原因不明で失敗する場合、あるいはユーザー名やパスワードを忘れてしまった場合、この機能を利用することで回復できる場合があります。
Windows仮想マシンの場合は、管理者の新しいユーザー名とパスワードでリモートデスクトップサービスの構成がリセットされます。Linux仮想マシンの場合、管理者アカウントの新しいユーザー名、パスワードのリセット、SSH公開キーのリセット、パスワード認証から公開キー認証への変更が可能です。
再デプロイ
Azure仮想マシンの「再デプロイ」機能もまた、Azure仮想マシンで発生するトラブルを解決できるかもしれない手段です。正常に起動しなくなったAzure仮想マシンの回復、RDP接続やSSH接続の原因不明の失敗といったトラブルは、「再デプロイ」機能を利用して回復できる場合があります。
再デプロイとは、Azure仮想マシンをAzureインフラストラクチャ内の別のホストに移動して起動します。再デプロイにより、一時ディスク(Windows仮想マシンのD:ドライブ、Linux仮想マシンの/dev/sdb)の内容はクリアされます。また、動的なIPアドレスは変更される場合があります。しかし、その他の仮想マシンの構成や仮想ハードディスクが変更されることはありません。
シリアルコンソール
Azure仮想マシンの「シリアルコンソール」機能は、2018年3月からプレビュー提供が開始され、2018年9月に一般提供が開始された比較的新しい機能です。この機能は、Azure仮想マシンのシリアルポート(Windows仮想マシンのCOM1ポート、Linux仮想マシンのttyS0ポート)に、Azureポータル内で対話的に接続できるというものです。
Windows仮想マシンの場合は、Windows Serverが標準で備える「EMS(Emergency Management Services:緊急管理サービス)」の「Special Administration Console(SAC)」にアクセスすることができます。SACコンソールでは、再起動やシャットダウン、ネットワーク情報の表示などいくつかのSACコマンドを使用できるほか、コマンドチャネルを作成することで稼働中のWindowsのコマンドプロンプトに対話的にログオンして操作することができます。
また、WindowsブートマネージャーをCOM1に出力させるようにブート構成を変更することで、「シリアルコンソール」を通じてWindowsブートマネージャーと対話することもできます(Windowsブートマネージャーを操作できるように、「シリアルコンソール」は「F8」キー送信機能を備えています)。
Linux仮想マシンの場合は、シリアルコンソールをローカルコンソールとして使用でき、対話的にログオンすることができます(画面3)。
2018年2月以降にAzure MarketplaceのイメージからデプロイされたWindows仮想マシンおよびLinux仮想マシンは「シリアルコンソール」への対応が構成済みであり、追加の構成なしでWindowsのSACコンソールやLinuxのローカルコンソールと対話することができます(Linux仮想マシンの場合はSSH公開キー認証ではなく、パスワード認証で構成されている必要があります)。
それ以前にデプロイされた仮想マシンや、アップロードしたカスタムイメージからデプロイされた仮想マシンの場合は、ゲストOSでWindowsのEMSやLinuxの端末の構成が必要です。
このほか「シリアルコンソール」では、「NMI(Non-Maskable Interrupt)」スイッチをWindowsおよびLinux仮想マシンに送信してクラッシュダンプを開始したり、Linux仮想マシンに「Magic SysRq Key(Magic System Request Key)」を送信して応答なし状態のコンソールを回復したりできます。
接続のトラブルシューティング
Azure仮想マシンの「接続のトラブルシューティング」機能は、Microsoft AzureのNetwork Watcherサービスを利用した、ネットワークの接続性を調査するためのトラブルシューティング機能です。
この機能を利用すると、Azure仮想マシンのコンソールに接続(RDP、SSH、または「シリアルコンソール」)することなく、Azureポータルを使用してAzure仮想マシンから別のAzure仮想マシンの特定のTCPポート、またはIPアドレスやFQDN、TCPポートを指定して、接続性と経路を調査することが可能です。
著者プロフィール
山市良
Web媒体、IT系雑誌、書籍を中心に執筆活動を行っているテクニカルフリーライター。主にマイクロソフトの製品やサービスの情報、新しいテクノロジを分かりやすく、正確に読者に伝えるとともに、利用現場で役立つ管理テクニックやトラブルシューティングを得意とする。2008年10月よりMicrosoft MVP - Cloud and Datacenter Management(旧カテゴリ: Hyper-V)を連続受賞。ブログはこちら。
主な著書・訳書
「インサイドWindows 第7版 上」(訳書、日経BP社、2018年)、「Windows Sysinternals徹底解説 改定新版」(訳書、日経BP社、2017年)、「Windows Server 2016テクノロジ入門 完全版」(日経BP社、2016年)、「Windows Server 2012 R2テクノロジ入門」(日経BP社、2014年)などがある。