Enterprise Watch
バックナンバー

新機能「Server Core」を使う【最終回】

Server Coreに役割を追加する

 前回までにServer Coreをリモートで管理のやり方などを紹介したが、用意されている役割を動かさないことにはServer Coreを使う意味がない。今回は、Server Coreへの役割や機能のインストールと管理の仕方に関して紹介していく。


Server Coreにインストールできる役割

 最初の回で紹介したようにServer Coreは、Windows Server 2008からさまざまモジュールを取り外し、最低限の動作を保証したモノだ。メリットとしては、何よりもフットプリントが小さい点が挙げられる。Server Coreだけなら2GBのディスクエリアで十分だ。また、CPUやメモリもフルインストールのWindows Server 2008よりもパワーがなくても大丈夫だ。

 そのほか、OS上にインストールされるモジュールが少ないため、運用面でセキュリティが高まる。実際、Windows Server 2008がリリースされて、いろいろなセキュリティアップデートが提供されているが、Server Core自体が必要とするアップデートは数個しかなかった(もちろん、Server Coreでもいろいろな役割や機能をインストールすると、インストールが必要になるアップデートは増えていく)。

 メリットばかり述べてきたが、Server Coreにもデメリットはある。まず、Windows Server 2008向けに作られたサードパーティのアプリケーションは、動くかどうかまったく分からない。多くの場合、動かないと思った方が良さそうだ。Server Coreで動作することを保証したアプリケーションが出てくれば問題ないが、現状ではServer Coreでの動作を保証したアプリケーションはほとんどない。このため、現状ではServer Coreは、Windows Server 2008のいくつかの役割や機能だけを動かす最小限のOSと考えた方がいい。

 また、Server Coreは、コマンドラインを基本としているため、管理性という面では使いにくい。この部分に関しては、リモートでMMCなどを利用することである程度補えるだろう。また、.NET FrameworkがServer Coreからは外されているため、PowerShellなどの高機能なスクリプト言語が利用できない。IISで使用されているASP.NETなども動作しない。Server Coreを利用するときは、これらのメリットとデメリットをよく考えて、運用しないと非常に面倒なシステムになるだろう。

 Server Coreで動作する役割と機能は、下記の一覧表にまとめてあるので、参考にしてほしい。リストからわかるように、DNSサーバー、DHCPサーバー、Active Directoryのドメインサーバー、Hyper-V、プリントサーバーとして利用するには、Server Coreはぴったりだろう。

名称 コマンド名
ActiveDirectoryドメインサービス(AD DS) ADドメインサービスは、dcpromoコマンドでインストール
ActiveDirectory ライトウェイトディレクトリサービス(AD LDS) DirectoryServices-ADAM-ServerCore
DHCPサーバー DHCPServerCore
DNSサーバー DNS-Server-Core-Role
ファイルサービス ファイル共有サービスはデフォルトでインストール済み
ファイルレプリケーションサービス FRS-Infrastructure
分散ファイルシステムサービス DFSN-Server
分散ファイルシステムレプリケーションサービス DFSR-Infrastructure-ServerEdition
NFSサービス ServerForNFS-Base
ClientForNFS-Base
印刷サービス(プリントサーバー) Printing-ServerCore-Role
印刷サービス(ラインプリンタデーモン
Printing-LPDPrintService
ストリーミングメディアサービス MediaServer
IIS7.0 IIS-WebServerRole
Hyper-V Microsoft-Hyper-V


Server Coreの役割のインストール

 Server Coreでインストールできる役割と機能を確認するには、oclistコマンドを利用する。このコマンドにより、現在どの役割や機能がインストールされているかを確認することができる。

 実際に、役割や機能をインストールするには、ocsetupコマンドを利用する。あとは、表にある役割や機能のコマンド名を入力すれば、必要とする役割や機能がインストールされる。

 コマンドとしては、

start /w ocsetup 役割や機能のコマンド名


となる。/wオプションがなくてもインストールできるが、/wオプションがないとすぐにコマンドプロンプトが返ってくるため、いつインストールが終了したか分からなくなる。/wオプションは、インストールが完了するまでコマンドプロンプトを待機させるので、/wオプションはつけた方がいいだろう。

 また、役割や機能のコマンド名は、大文字と小文字をチェックしているため、きちんと間違えずに入力する必要がある。

 なお、IIS 7.0とActive Directoryドメインサービスに関しては、ocsetupコマンドだけではインストールできないため、注意が必要だ。


DNSサーバーのインストール

 DNSサーバーのインストールを行うには、

start /w ocsetup DNS-Server-Core-Role


を実行する。なお、DNSサーバーをアンインストールするには、/uninstallオプションを末尾につける。

 DNSゾーンの構成を行うには、ローカルでdnscmdコマンドで行うか、リモートからMMCの[DNS]スナップインを使って管理する。リモートでMMCを使えば、GUIで管理できるため、フルインストールのWindows Server 2008と同じような感覚で管理できる。


DHCPサーバーのインストール

 DHCPサーバーのインストールを行うには、

start /w ocsetup DHCPServerCore


を実行する。なお、DHCPサーバーをアンインストールするには、/uninstallオプションをつける。

 DHCPの管理を行うには、netshコマンドを利用するか、リモートのMMCを使ってDHCPスコープを構成する。Active Directoryドメインと連携する場合は、DHCPサーバーをActive Directoryで認証する必要がある。この作業もMMCから行える。

 なお、DHCPサーバーはインストールしただけでは自動的に実行されないため、

sc config dhcpserver start= auto
net start dhcpserver


というコマンドを入力して、DHCPサーバーを起動する必要がある。


ファイルサービスのインストール

 Windowsが提供しているファイル共有に関しては、Server Coreをインストールすれば、すでにインストールされている。これを管理するには、リモートでMMCを起動し、[共有フォルダ]というスナップインを使って、Server CoreにアクセスすればOKだ。

 ファイルレプリケーションサービスをインストールするには、

start /w ocsetup FRS-Infrastructure


 分散ファイルシステムサービスをインストールするには、

start /w ocsetup DFSN-Server


 分散ファイルシステムレプリケーションサービスをインストールするには、

start /w ocsetup DFSR-Infrastructure-ServerEdition


 NFSサービスをインストールするには、

start /w ocsetup ServerForNFS-Base
start /w ocsetup ClientForNFS-Base


 それぞれのサービスをアンインストールするには、最後に/uninstallオプションをつければOKだ。

 分散ファイルシステム(DFS)を管理するには、リモートのMMCに[DFS]というスナップインをインストールして管理する。


プリントサーバーのインストール

 プリントサーバーのサービスをインストールするには、

start /w ocsetup Printing-ServerCore-Role


を実行する。なお、アンインストールするには、/uninstallオプションをつける。

 ラインプリンタデーモン(LPD)サービスをインストールするには、

start /w ocsetup Printing-LPDPrintService


を実行する。なお、アンインストールするには、/uninstallオプションをつける。

 プリントサーバーとして使用するためには、役割をインストールするだけでなく、接続しているプリンタのドライバをインストールする必要がある。

 リモートのMMCに[印刷の管理]というスナップインをインストールし、Server Coreのコンピュータ名(またはIPアドレス)を指定する。[印刷の管理]に出ている[プリントサーバー]→Server Coreのコンピュータ名→[ドライバ]を右クリック。[ドライバの追加]を選択して、ウィザードに従って、ドライバをインストールする。

 あとは、[プリントサーバー]→Server Coreのコンピュータ名(またはIPアドレス)を右クリック。[プリンタの追加]を選択して、プリンタを追加する。


サーバー名を右クリックして[ドライバの追加]をクリック プロセッサごとに追加するドライバを選択できる

ストリーミングメディアサービスのインストール

 ストリーミングメディアサービスをインストールするには、事前にマイクロソフトのWebサイトから、Windows MediaサービスをダウンロードしてServer Coreにインストールする必要がある。このとき、注意が必要なのは、Server Core用の32ビット版(Windows6.0-KB934518-x86-Core.msu)と64ビット版(Windows6.0-KB934518-x64-Core.msu)の2つのパッケージが存在するので、Server Coreのバージョンに合わせたパッケージをダウンロードしておく。なお、フルインストール向けのWindows Mediaサービスもあるので注意。あとは、USBメモリなどにパッケージ(.msuファイル)を保存して、Server Coreのコンソールで実行すればOKだ。

 そのあと、

start /w ocsetup MediaServer


によりサービス自体をインストールする。

 ストリーミングメディアサービスをリモートのMMCで管理するには、マイクロソフトのWebサイトから、Windows Mediaサービスの管理ツールをダウンロードしておく。ここでも、32ビット版(Windows6.0-KB934518-x86-Admin.msu)と64ビット版(Windows6.0-KB934518-x64-Admin.msu)があるから注意が必要だ。


Active Directoryライトウェイトディレクトリサービスのインストール

 Active Directoryライトウェイトディレクトリサービスをインストールするには、

start /w ocsetup DirectoryServices-ADAM-ServerCore


を実行する。なお、アンインストールするには、/uninstallオプションをつける。


Active Directoryドメインサービスのインストール

 Active Directoryドメインサービスをインストールするには、今までのocsetupコマンドではなく、dcpromoコマンドを使用することになる。Server Coreにインストールされているdcpromoコマンドは、フルインストールのdcpromoコマンドのように、インストールのウィザードが用意されてはいない。このため、管理者がウィザードを使って、インタラクティブに設定することができない。そこで、Server Coreでは、dcpromoコマンドの無人セットアップオプションを使用してインストールすることになる。

 dcpromoコマンドの無人セットアップの応答ファイルは、XML形式のファイルとなっているが、ユーザーが一から記述するのはちょっと面倒だ。そこでお薦めしたいのが、フルインストールしたWindows Server 2008で、Active Directoryドメインサービスをインストールし、応答ファイルを作成する方法だ。あとは、この応答ファイルをServer Core上で実行すればOKだ。

 Active Directoryドメインサービスをインストールには、

dcpromo /unattend:応答ファイル名


でOKだ。なお、応答ファイルのひな形に関しては、マイクロソフトのWebサイトで公開されているServer Core Installation Option of Windows Server 2008 Step By Step Guideに掲載されている。

 Active Directoryドメインサービスをインストールしたあとは、リモートからMMCのスナップインで管理することができる。[Active Directoryドメインと信頼関係]というスナップインをMMCにインストールすればOKだ。


IIS 7.0のインストール

 IIS 7.0をインストールするには、

start /w pkgmgr /iu:IIS-WebServerRole;WAS-WindowsActivationService;WAS-ProcessModel


とServer Coreのコマンドラインで入力する。ただし、このコマンドでは、最低限のIIS 7.0の機能しかインストールされない。もし、すべてのオプションをインストールするには、

start /w pkgmgr /iu:IIS-WebServerRole;IIS-WebServer;IIS-CommonHttpFeatures;IIS-StaticContent;IIS-DefaultDocument;IIS-DirectoryBrowsing;IIS-HttpErrors;IIS-HttpRedirect;IIS-ApplicationDevelopment;IIS-ASP;IIS-CGI;IIS-ISAPIExtensions;IIS-ISAPIFilter;IIS-ServerSideIncludes;IIS-HealthAndDiagnostics;IIS-HttpLogging;IIS-LoggingLibraries;IIS-RequestMonitor;IIS-HttpTracing;IIS-CustomLogging;IIS-ODBCLogging;IIS-Security;IIS-BasicAuthentication;IIS-WindowsAuthentication;IIS-DigestAuthentication;IIS-ClientCertificateMappingAuthentication;IIS-IISCertificateMappingAuthentication;IIS-URLAuthorization;IIS-RequestFiltering;IIS-IPSecurity;IIS-Performance;IIS-HttpCompressionStatic;IIS-HttpCompressionDynamic;IIS-WebServerManagementTools;IIS-ManagementScriptingTools;IIS-IIS6ManagementCompatibility;IIS-Metabase;IIS-WMICompatibility;IIS-LegacyScripts;IIS-FTPPublishingService;IIS-FTPServer;WAS-WindowsActivationService;WAS-ProcessModel


と入力する。

 なお、Server CoreのIIS 7.0では、リモートのMMCのIISマネージャが利用できない。これは、IISマネージャのいくつかのモジュールが.NET Frameworkを利用しているためだ。このため、IIS 7.0を管理するには、appcmdコマンドから行う必要がある。Windows Server 2008 R2では、Server Core上で.NET Frameworkのサポートが予定されているので、IISのリモート管理も使いやすくなるだろう。


Hyper-Vの役割の追加

 現在、出荷されているWindows Server 2008のDVD-ROMには、Hyper-VのRC版が入っている。このため、Server CoreにそのままHyper-Vをインストールすると、RC版となってしまう。Hyper-VをServer Coreで使う場合は、マイクロソフトのWebサイトからHyper-VのRTM版をダウンロードしてインストールする必要がある。

 Hyper-VはWindows Server 2008 64ビット版でしかサポートされていないため、Server Coreも64ビット版でインストールされている必要がある。

Hyper-VのRTM版 Windows Server 2008 x64 Edition用の更新プログラム(KB950050)

 Server CoreにHyper-VのRTM版をインストールするには、Windows Server 2008 x64 Edition用の更新プログラム(KB950050)「Windows6.0-KB950050-x64.msu」をUBSメモリなどにコピーして、Server Coreで実行する。

 その後、コマンドラインで、

start /w ocsetup Microsoft-Hyper-V


で役割としてインストールする。その後、再起動すれば、Hyper-Vが自動的に動作する。

 Hyper-Vの管理ツール(MMCのスナップイン)は、Windows Server 2008用、Windows Vista用がそれぞれリリースされている。このとき注意が必要なのは、両方とも32ビット版、64ビット版が存在するということだ。環境にあったモジュールをインストールする必要がある。

 ちなみに、Windows Server 2008 x64 Editionでは、Hyper-Vのリモート管理ツールだけのモジュールはリリースされていないので、Hyper-VのRTM版をインストールすることになる。なお、モジュールをインストールしても、役割をインストールしなければ、管理ツールのみインストールされ、Hyper-V本体はインストールされない。

Hyper-VのWindows Server 2008 x86 Edition用の管理ツール(KB950050)
Hyper-VのWindows Vista x86 Edition用の管理ツール(KB952627)
Hyper-VのWindows Vista x64 Edition用の管理ツール(KB952627)
Hyper-Vのリリースノート


MMCでHyper-Vマネージャを使って管理できる Hyper-Vの仮想環境を作成し、フルインストールのWindows Server 2008を起動した様子 Hyper-Vの管理方法はフルインストールのサーバーマネージャから行うのとほとんど変わりがない

Server Coreへの機能のインストール

 Server Coreにインストールできる機能は、下記のとおり10個となる。現在、どの機能がインストールされているかをチェックするには、oclistコマンドで行う。

名称 コマンド名
フェールオーバークラスタリング FailoverCluster-Core
ネットワーク負荷分散 NetworkLoadBalancingHeadlessServer
UNIXベース アプリケーション用サブシステム SUACore
バックアップ WindowsServerBackup
マルチパスI/O MultipathIo
リムーバブル記憶領域 Microsoft-Windows-RemovableStorageManagementCore
BitLockerドライブ暗号化 BitLocker
簡易ネットワーク管理プロトコル(SNMP) SNMP-SC
Windowsインターネット ネームサービス(WINS) WINS-SC
Telentクライアント TelnetClient


 インストールのやり方としては、役割と同じようにocsetupコマンドを利用する。

start /w ocsetup 機能のコマンド名


Server Coreは企業にとってメリットがあるか?

 今回いろいろテストしてみて分かったのは、Server Coreで使える役割と機能には、使いにくいものがあるということだ。

 実際Hyper-Vなどは、リモートのMMCで管理できるようにすれば、ほとんどフルインストールのHyper-Vと変わらない使い方ができる。逆にIISに関しては、リモートでの管理もできないために、ほとんどの操作をコマンドラインで行う必要がある。また、.NET FrameworkがServer Coreにはインストールできないため、IISの機能自体にも制限が多い。

 このようなことを見ていると、古いサーバーをアプライアンス化して、DNS、DHCP、Active Directoryなどだけを動かすサーバーとして利用するのは大きなメリットがある。Server Coreなら、ハイパワーなCPUや大容量のメモリ、HDDなどは必要ない。

 下手をすれば、余っているノートPCをサーバーアプライアンスとして利用できるだろう。このあたりは、どのくらいの規模のユーザーをサポートするかにもよるが、100人程度ならノートPCでActive Directoryドメインサービスを動かすのも無理ではないだろう。

 若干、Active Directoryドメインの構成時に、応答ファイルを用意しなければならないのは面倒だが、フルインストールの環境で応答ファイルを作成すれば簡単にインストールできる。

 また、Hyper-Vなどは、ペアレントパーティションで使用するリソースが少なくなるので、チャイルドパーテーションで動かす仮想化サーバーに十分なリソースを回すことができる。管理もリモートのMMCからフルインストールの環境と同じようなGUIで行うことができる。

 このようなことから考えると、Server CoreではあまりIISは利用されないだろう。その他の役割は、十分使えるレベルになっている。ファイルサービスに関しては、標準でファイル共有に関してはインストールされているため、あまりDFSやNFSは使われないかもしれない。

 Server Coreを使ってみて、できれば欲しかったのは、リモートPCからのエクスプローラの利用だ。ファイルやディレクトリの操作ができると便利だと思うのだが。

 残念だったのは、Server Coreをワークグループで運用した場合は、ファイアウォールの設定やアクセス権の問題などでうまくいかないことが多い点だ。ドメインで運用した場合は、まったく問題なくリモートコンピュータからMMCで管理できたが、ワークグループの場合はうまくいかなかった。テストで運用するときは、ワークグループでテストすることも多いため、今後何らかの形でやり方を紹介したいと思っている。



URL
  Windows Server 2008
  http://www.microsoft.com/japan/windowsserver2008/

関連記事
  ・ 新機能「Server Core」を使う【第一回】(2008/07/17)
  ・ 新機能「Server Core」を使う【第二回】(2008/07/24)
  ・ 新機能「Server Core」を使う【第三回】(2008/07/31)


( 山本 雅史 )
2008/08/07 00:00

Enterprise Watch ホームページ
Copyright (c) 2008 Impress Watch Corporation, an Impress Group company. All rights reserved.