強化されたサーバーマネージャーとPowerShell 3.0
Windows Server 2012は、仮想化やネットワークなど以外にも、さまざまな新しい機能が搭載されている。今回は、マネジメント関連の機能を紹介していく。
■管理を一元化したサーバーマネージャー
Windows Server 2012で大きく変わったのが、サーバーマネージャーだ。ユーザーインターフェイス(UI)としては、Windows 8のModern UIを意識したモノとなっている。
Windows Server 2012のサーバーマネージャーの最大の特徴は、複数のサーバーを一元管理できるようになっている点だろう。
Windows Server 2008 R2のサーバーマネージャーでも、複数のサーバーを管理することはできた。しかしサーバーごとに管理するため、サーバーマネージャーで管理できるとはいっても、それぞれのサーバーを別々に管理しないといけなかった。
Windows Server 2012では機能別にメニューが存在し、ウィザードの中で、どのコンピュータに適応するのかなどが指定できるようになった。これにより、サーバーマネージャーで一元的に管理できるようになった。
さらに、サーバーマネージャーからリモートサーバーに対しての役割の追加も可能になった。これを使えば、管理用に利用するサーバーにはGUIのフルインストールを行うが、ハイパーバイザーを動かすサーバーはGUIがないServer Coreモードでインストールし、役割の追加や管理などはリモートのサーバーマネージャーで行う、といった使い方も現実的になっている。コマンドラインでの操作が前提となるServer Coreでプライベートクラウドを構築しても、サーバーマネージャーからGUIを使って管理が行えるからだ。
なおサーバーマネージャーには、デバイスマネージャー、ディスク管理、管理ツールなど、Windows Serverが持つ管理機能に一元的にアクセスできる。これらの管理ツールは、今までのように単独のアプリケーションになっているが、新しいサーバーマネージャーからの起動を行える。
また、各サーバーの状態やHyper-V、ファイルサービスと記憶域サービスなどの役割別に状況を表示してくれる。このため、1台のサーバーだけでなく、このサーバーマネージャーで管理するサーバー群の状況を一目で確認することができる。
■新しい管理フレームワーク「Windows Management Foundation」を採用
Windows Server 2012には、新しい管理フレームワークとなる「Windows Management Foundation(WMF)」が採用されている。WMFでは、Windows Server 2012のディスク、ストレージ、デバイスなど、さまざまなリソースからの情報を取得し、命令を送ることができる。さらに、Exchange Serverなどのアプリケーションからの情報も取得できる。
WMFは、Microsoftが単独で作成したフレームワークだけでなく、業界標準プロトコルやインターフェイスを採用している。例えば、DTMF(Distributed Management Task Force)が策定したCIM-Schemaや、SNIA(Storage Networking Industry Association)が策定したSMI-S(Storage Management Initiative-Specification)をサポートしている。さらに、プロトコルとしてはWS-Man、REST、HTTP、PSRPなどがサポートされている。
WMFを利用するAPIとしては、MIClient、PowerShell、ODataがサポートされている。これらを利用して、簡単にリソースの管理が行えるようになっている。
WMFは、さまざまな業界標準のインターフェイスを採用している。さらに、業界標準のプロトコルを採用しているので、RESTやHTTPが利用できる | ストレージ管理にも業界標準インターフェイスが採用されている。PowerShellからアクセスできるので、スクリプトを書くことで、さまざまな処理が行える |
■大きく変わったServer Core
Server Coreに関して、Windows Server 2012では大きく変わっている。Windows Server 2008 R2までのServer Coreは、GUI付きのフルモードと排他利用だった。このため、一度どちらかのモードでインストールすると、ほかのモードに変えることはできなかった。
一方Windows Server 2012では、Server Coreをデフォルトモードにして、すべての機能がServer Coreに用意されている(以前のようにServer CoreはサブセットOSではない)。言ってしまえば、Windows Server 2012のServer CoreはGUIがないだけだ。
さらにServer Coreモードでインストールをしても、コマンドでGUIをインストールできる。最初にServer Coreでインストールしても、GUIを含めたフル機能への拡張が可能になった、ということだ。
逆に、フル機能でインストールや各種設定などを行い、安定的に運用できるようになった後で、フル機能からServer Coreモードに変更して、OSが少ないリソースで動作するようにもできる。仮想化を利用している場合、GUIが不要になればより多くの仮想マシンを動かすことができるだろう。管理に関しては、前述のように、リモートのサーバーマネージャーを利用すれば、一元的に管理できる。
このようにサーバーマネージャーは、複数のサーバーを管理する上では非常に便利になった。しかし、サーバーマネージャーだけですべてを管理できるわけではない。複数のサーバーで動作している多数の仮想マシンを一元的に管理する場合は、System Center Virtual Machine Manager(SCVMM)が必要になる。サーバーのハードウェアを管理するには、System Center Operations Manager(SCOM)を利用する必要がある。
このように、多数の仮想化されたサーバーを運用するクラウド環境においては、System Centerのような強力な管理ツールが必要になるだろう。サーバーマネージャーは、ある程度の管理は行えるが、クラウドなどで多数のサーバーを運用するには、機能が足りない。本格的な管理を行うには、System Centerを利用した方がいい。
■大幅に強化されたPowerShell 3.0
Windows Server 2012では、コマンドラインのスクリプト言語としてPowerShell 3.0が用意されている。PowerShell 3.0では、大幅にコマンドを増やしている。Windows Server 2008 R2のPowerShell 2.0では223 core CMDLETsだったが、PowerShell 3.0では2330CMDLETsと10倍以上コマンドが増えている。
さらに便利なのは、自働化のためにPowerShell Workflowが用意されている点だ。このWorkflowを使えば、複雑な作業をスクリプト化することが可能になる。実際、PowerShell 3.0を使ってスクリプトを組めば、仮想マシンを作成して、あるイメージから新しいOSを作成することもできる。
またスクリプトを作成するエディタ、Windows PowerShell ISE(Integrated Scripting Environment)3.0も用意された。このエディタでは、Visual Studioのようにコマンド名を自動的に入力するIntelliSense機能が利用できる。もちろん、デバッグ機能も搭載している。
System Center 2012は、すべてがPowerShellのコマンドになっていため、管理者はPowerShellを利用して、複雑な管理をスクリプトで行うことが可能になる。同じような処理を何度も行う管理者にとっては、スクリプト化しておけば、手間をかけずに処理できるわけだ。
さらにPowerShell 3.0には、Windows PowerShell Web Accessという機能が用意されている。Windows PowerShell Web Accessは、Webサーバー(IIS)に用意された専用ページにPowerShellのスクリプトを入力して、実行することができる。つまり、Webサーバー経由で、PowerShellのスクリプトを編集・実行可能ということになる。
もちろん、セキュリティ面では、KerberosやCredSSPなどのIIS認証メカニズムがすべて使用可能だし、セッションをHTTPSで保護することもできる。
Windows Server 2012/Windows 8では、PowerShellも3.0にバージョンアップされている。命令セットも10倍に増えている | PowerShell ISE3.0は、スクリプトのプログラミングを楽にするため、IntelliSenseが内蔵されている | PowerShell 3.0ではさまざまな命令が増えたため、メール送信を行うスクリプトを10行ほどで記述できる |
■Windows Server 2012でModernアプリを動かす
以前、Windows Server 2012ではModern UIはサポートされているが、Storeタイルが存在しないため、Modernアプリを動かすためには、USBメモリやCDなどのメディアからインストールして動かすサイドローディングしか方法がないと思っていた。
しかし、いろいろ調べてみると、Windows Server 2012でStoreタイルを表示し、StoreからModernアプリをダウンロードして動かせるようだ。
Storeタイルを表示するには、グラフィックカードでDirectX 11がサポートされている必要がある。さらに、専用のグラフィックドライバをインストールする必要がある。グラフィックカード(GPU)によっては、Windows Server 2012用のグラフィックドライバがリリースされていない場合があるので、この時はWindows 8のx64版ドライバーをインストールすれば、Windows Server 2012でも利用できる。ただし、きちんと認証されたドライバーではないため、サーバーの動作が不安定化する可能性もある。このあたりは、自己責任で試してほしい。
「役割と機能」(機能)からユーザーインターフェイスとインフラストラクチャ→デスクトップエクスペリエンスをインストールすればいい。この後、再起動を行い再ログインすれば、AdministratorアカウントのModern StartメニューにStoreタイルが表示される。
ただし、AdministratorアカウントではStoreが起動しないため、別のアカウントでログインする必要がある。
いくつかModernアプリをインストールしてみたが、ほとんどのソフトは動作したが、XBOXベースのゲームは動作しなかった。動作しなかった原因に関しては、今後調べてみたいと考えている。
Windows Server 2012の管理に関しては、IT管理者はサーバーマネージャーだけを起動しておけば、ほとんど操作ができる。それだけ、サーバーマネージャーはよくできていると思う。
ただ、何度も同じような操作を繰り返す管理に関しては、多くの処理をスクリプトにしておくべきだろう。PowerShell 3.0は、強力なスクリプト言語のため、今後IT管理者は積極的に利用していくべきだと考えている。