次期Windows Serverとなる「Windows Server 2016」には、「Nano Server」という新しいインストールオプションが用意されます。5月上旬に公開されたTechnical Preview 2では、Nano Serverの初めてのプレビューが提供されました。今回は、Nano Serverの謎にぐっと迫ります。
「Nano Server」は、フットプリントの極めて小さい、いくつかの役割を実行するために最適化されたWindows Serverの“リファクタリングバージョン”です。Nano Serverについては、本連載第14回でもちょっと紹介しました。
Nano Serverには、通常のWindows Serverのインストールのような対話的なインストーラーが存在しません。そのため、「Windows Server Technical Preview 2」のDVDイメージから「Setup.exe」を起動しても、Nano Serverを導入することはできません。
では、Nano Serverはどこにあるのかというと、Windows Server Technical Preview 2のDVDイメージの「NanoServer」フォルダーに格納されています。ここにあるわずか138MBの「NanoServer.wim」が、Nano Serverのインストールイメージになります(画面1)。
ちなみに、通常のWindows Server Technical Preview 2のインストールイメージ「¥Sources¥Install.wim」は3.32GBです。「Install.wim」には、エディションやインストールオプションが異なる四つのイメージが入っているため、単純に比較することはできませんが、圧倒的に小さいことはお分かりいただけるでしょう。
この「NanoServer.wim」をどうやって物理コンピューターや仮想マシンにインストールすればよいのかについて、本連載では具体的な手順を説明することはしません。Nano Serverは現時点で初めてのプレビューが提供されたばかりで、今後、導入手順が変更される可能性が大きいからです。
ざっとインストール手順の概要を説明すると、オフラインで編集するために「NanoServer.wim」をローカルPCにマウントし、役割や機能のパッケージや標準のドライバー(Hyper-V仮想マシン用のドライバーとOEM用ドライバーがあります)、サードパーティ製のドライバーを組み込み、管理者パスワードやコンピューター名など基本情報の設定を行い、イメージを更新します。後は、WIMイメージを物理コンピューターの空のボリュームに展開するか、Hyper-Vの仮想マシンとして実行するためにVHD(Virtual Hard Disk)化します。
具体的な導入手順を知りたい方は、本連載の最後に紹介する筆者の個人ブログをご覧ください。
以下の画面2は、Hyper-Vの仮想マシン用にカスタマイズした、Nano ServerのVHDファイルです。仮想マシンを起動する前の時点で、そのサイズはわずか513MBです(画面2)。仮想マシンを起動するとメモリのページファイルが作成されるため数GBに膨れますが、バイナリが使用するディスク領域は500MB程度、通常のWindows Serverの10分の1以下です。
カスタマイズしたイメージを展開した物理コンピューターや仮想マシンを起動すれば、初回起動時に対話なしでインストールが完了します。以下の二つの画面を見比べてください(画面3、画面4)。
今回、Hyper-V仮想マシン用のイメージには、初回起動の完了時に「Hello Nano Server !」と表示するように仕込んでおきました。仮想マシンを開始して、この文字が表示されるまで37秒。オフラインによるWIMイメージのカスタマイズ時間を含まなければ、インストールは40秒以内に完了します。
当然、コールドブートや再起動にかかる時間はもっと短く、筆者の環境ではどちらも20秒以内に完了しました。筆者のHyper-V環境が高性能なハードウエアを使用しているということでは決してありません。
実は、このHyper-V環境は筆者のノートPCをWindows 10 Enterprise Insider Previewの「Windows To Go」(USB 2.0外付けハードディスク)で起動したものです。ホストOSとNano ServerのVHDはUSB 2.0接続の外付けハードディスク上のものなので、通常の物理環境よりも性能は劣ります。
Nano Serverはヘッドレスサーバー用の軽量OSであり、対話的なローカルログオン機能やローカルコンソールは備えていません。Hyper-Vの仮想マシンで起動した場合、仮想マシンのコンソールは真っ黒な状態で(エラーメッセージなどを表示する場合はありますが)、キーボードやマウスの操作は一切受け付けません。
Nano Serverは、最初からリモート管理が大前提となっています。その方法としては、WMI(Windows Management Instrumentation)、Windows PowerShell Remotingによるネットワーク経由でのリモート管理、およびシリアルポート経由で接続するWindowsの「緊急管理サービス」(Emergency Management Service:EMS)の「SAC」(System Administration Console)コンソールによる管理があります(画面5)。
 画面5 Nano Serverをリモート管理しているところ。上からWinRSコマンド、WMICコマンド、Windows PowerShell Remoting、シリアルポート経由(仮想マシンのCOMポートの名前付きパイプを利用)のSACコンソール
画面5 Nano Serverをリモート管理しているところ。上からWinRSコマンド、WMICコマンド、Windows PowerShell Remoting、シリアルポート経由(仮想マシンのCOMポートの名前付きパイプを利用)のSACコンソールWindowsの基本設定をコマンドラインだけで行うのは、コマンドの扱いに慣れていたとしても結構大変です。Nano Serverは、Windowsの全てのコマンドやWindows PowerShellコマンドレットを備えているわけではありませんし、Windows Script Host(WSH)も利用できません。
例えば、ドメイン参加設定は通常のWindowsでは「netdom」コマンドで行えますが、Nano Serverには「netdom」コマンドが存在しません。代わりに、「djoin」コマンドによるオフラインドメイン参加の方法で行うか、展開用の「応答ファイル」(Unattend.xml)にドメイン参加設定を含めて構成する必要があります。また、静的なIPアドレスを設定するには、「netsh」コマンドを使用しますが、インターフェース名を調べたりするのが結構面倒です。
ただし、Nano Serverで行う必要がある基本設定のコマンドラインはある程度決まっているので、それさえ押さえておけば大丈夫です。筆者の個人ブログでは、いくつか設定例を示していますので参考にしてください。
Windows Server Technical Preview 2には、マルウエア対策機能として「Windows Server Antimalware」が標準でインストールされており、デフォルトで有効になっています(画面6)。Windows Server Antimalwareは、Windows 8.1の「Windows Defender」の“サーバー版”と思ってください。
Nano Serverでは標準のWindows Serverが備えている多くの機能がごっそり削除されていますが、Windows Server Antimalwareは最初から入っています。もちろん、定義ファイルの手動アップデートや手動スキャンはリモートの管理手法で行うことになりますが……。
Windows Server Technical Preview 2のNano Serverは「Hyper-Vの役割」「ファイルサーバーの役割」「フェイルオーバークラスタリング」の機能をサポートしており、カスタマイズ時に必要な役割や機能を組み込むことができます。Hyper-VのスタンドアロンサーバーやHyper-Vホストクラスター、スケールアウトファイルサーバーのノードとしても利用できます。
Nano Serverのフットプリントはわずか500MB程度で、カーネルが消費するメモリも少なくて済みます。仮想化環境でファイルサーバーを展開する場合、通常のWindows Serverの仮想マシンなら仮想マシン1台ごとにOSだけで10GB程度のディスクを消費することになるでしょう。それをNano Serverに切り替えれば、ディスクリソースのほとんどをデータ領域に使えることになります。これは本当に夢のようなことです。
“Nano Serverはコマンドラインでしか管理できないんでしょう?”“PowerShellは覚えるのが大変!”と思うかもしれませんが、それは初期設定や起動/終了操作の話です。今後、初期設定の部分は、さまざまな方法で自動化できるようになるはずです。
次の画面を見てください。Nano Serverで動くHyper-Vは、リモートの「Hyper-Vマネージャー」からちゃんと管理できます(画面7)。Nano Serverで動くファイルサーバーも、リモートの「サーバーマネージャー」から操作できます(画面8)。Nano Serverは限定された役割と機能しかサポートしていませんが、「サーバーマネージャー」の「役割と機能の追加ウィザード」で有効化することが可能です(画面9)。
 画面7 Nano Serverで動くHyper-Vは、リモートの「Hyper-Vマネージャー」から管理できる。画面はNano ServerのHyper-V仮想マシンにWindows 10 Insider Previewをインストールしようとしているところ
画面7 Nano Serverで動くHyper-Vは、リモートの「Hyper-Vマネージャー」から管理できる。画面はNano ServerのHyper-V仮想マシンにWindows 10 Insider Previewをインストールしようとしているところいずれの操作も、Windows PowerShellのHyper-Vやファイルサーバー対応のコマンドレットでリモート管理することができます(「Get-VM」コマンドレットなど)。Hyper-Vホストクラスターやスケールアウトファイルサーバーのノードとして使用する場合は、「フェイルオーバークラスターマネージャー」やコマンドレットからリモート管理ができます。どうぞ、ご安心ください。
ただし、現状は管理システムのエージェントをNano Serverに展開することができません。例えば、「System Center Virtual Machine Manager」のエージェントなどです。この辺りにどう対応するのか、今後、大いに気になるところです。
Windows Server 2016ではコンテナー管理技術である「Docker」をサポートし、マイクロソフトは「Windows Serverコンテナー」および「Hyper-Vコンテナー」を提供する予定です。
このコンテナーサポートの件と、Nano Serverを混同している人がいるかもしれないので、ここであらためて指摘しておきます。現在、Nano Serverで動くHyper-Vは、Hyper-Vコンテナーではありません。Nano Serverがサポートするサーバーの役割の一つである、Hyper-Vです。
おそらく、Nano ServerでもDockerエンジンは動くことになるのでしょう。しかし、Nano Serverでなければならないのではなく、Windows Serverでも動くはずです。多くのLinuxでDockerが動作しますが、CoreOSのようにDockerに最適化された軽量OSがいくつか登場しています。Nano Serverは、Windows版のDockerにも使用できる軽量OSという位置付けになるのではないでしょうか。
最後に、筆者が想像しているNano Server、Windows Server 2016、およびDockerの関係を図にしてみました(図1)。
Windows版のDockerクライアントはすでにプレビュー版が提供されていますが、Dockerエンジンの方は現時点で利用できません。もちろん、Windows ServerコンテナーもHyper-Vコンテナーも、提供されるのはまだまだ先の話です。
なお、Hyper-Vコンテナーを動かすには、ホストOS側でHyper-Vハイパーバイザーが動作している必要があるようです。一見すると「Hyper-Vの入れ子(ネスト)状態」のように見えますし、実際、Hyper-Vコンテナーはそのように動くようです。これは、コンテナー技術がそのように見せているだけで(見掛けだけでなく動作も)、ハイパーバイザーは物理的なハードウエアのすぐ上で動いていることに変わりはないと筆者は予想しています。
現在、LinuxのDockerエンジン上ではUbuntuやCentOSなど、さまざまなOSコンテナーを動かせますが、これらのコンテナーが各OSのカーネルを実行しているわけではなく、ホストOSのカーネルの機能を利用しているのと同じことです。付け加えるなら、Windows版Dockerエンジンの上では、Linuxコンテナーは動かないと思います。あくまでも筆者の想像ですが……。
筆者が成功したNano Serverの導入手順と基本的なリモート管理操作の詳細を個人ブログで紹介しています。Nano Serverを試用する際には、ぜひ参考にしてください。
岩手県花巻市在住。Microsoft MVP:Hyper-V(Oct 2008 - Sep 2015)。SIer、IT出版社、中堅企業のシステム管理者を経て、フリーのテクニカルライターに。マイクロソフト製品、テクノロジを中心に、IT雑誌、Webサイトへの記事の寄稿、ドキュメント作成、事例取材などを手がける。個人ブログは『山市良のえぬなんとかわーるど』。
 Windows 10プレビュー新ビルド10074公開、新規インストールで企業向けの新しいサインイン方法を発見
Windows 10プレビュー新ビルド10074公開、新規インストールで企業向けの新しいサインイン方法を発見 祝、Windows 7のWindows 10無償アップグレード! でも、古いPCで動くの?
祝、Windows 7のWindows 10無償アップグレード! でも、古いPCで動くの? 最新ビルドを詳細レビュー! Windows 10 Technical Preview Build 9926がやってきた
最新ビルドを詳細レビュー! Windows 10 Technical Preview Build 9926がやってきた 続報、Windows 10 Technical Preview。新しいビルドの私的衝撃
続報、Windows 10 Technical Preview。新しいビルドの私的衝撃 Windows 10と次期Windows ServerのTechnical Preview、現わる
Windows 10と次期Windows ServerのTechnical Preview、現わるCopyright © ITmedia, Inc. All Rights Reserved.