このページの本文へ

Windows Server 8でなにが変わる? ― 第1回

最大640コアに対応し、「Head Less」システムも構築可能に

Buildの公開情報から見るWindows Server 8

2011年10月12日 06時00分更新

文● 塩田紳二

  • この記事をはてなブックマークに追加
  • 本文印刷

 9月12日より米国で開催された「Build Windows」では、Windows 8の概要が公開されたが、同時に次期サーバー版となる「Windows Server 8(仮称)」の概要も公開された。加えて、Windows 8ベースの開発ツールやWindows Azureとの連携などの発表もあった。この記事では、Buildでの情報などから、次期Windows Serverの概要や開発環境、クラウドなどについて解説する。

Windows Server 8の大きな変化とは?

 Windows Server 8は、クライアントOSであるWindows 8とカーネルを共有する製品ではあるが、開発自体は、以前から続けられていたものだ。改良点は大きく分類すると以下のようになる。

  • カーネル関連の強化
  • ネットワーク機能の強化
  • ストレージ関連の強化
  • 管理機能の強化
  • Hyper-VおよびIISの強化

 Windows Server 8は、Windows 8とソースコードを共有しており、Windows 8で新たに作られたアプリケーション実行環境である「WinRT」も搭載されている。もちろんWinRTを使うタッチ利用を想定したアプリケーションタイプ「Metro Style」のアプリケーションを動作させることも可能だ。

 一方、カーネル関連の変更点としては、CPUが最大640ロジカルプロセッサ(コア)、メモリが最大4TBまで対応することがある。現行のWindows Server 2008 R2は、最大256コア/2TBが限界のため、倍以上の拡張となる

Windows Server 8は、640コア、4TBメモリをサポートする

 コアの拡張方法は、Windows Server 2008 R2で採用したグループを拡張するもの。通常、コアは、CPUパッケージに含まれ、さらにCPUボード単位にまとめられる。Windows Server 8では、コアをソケット/NUMA Nodeでまとめた後、これを64コア単位でグループ化する。Windows Server 2008 R2では、4グループが上限だったが、Windows Server 8では10グループにまで拡張した。

640個のコア(ロジカルプロセッサ)が動作した時のタスクマネージャ。横16×縦40のコアごとのCPU Usageが並ぶ

 なお、最近のプロセッサーは、メモリコントローラーを内蔵しているのが普通で、プロセッサーパッケージ単位でメモリに接続している。このため、プロセッサー数を増やせば、当然、接続されるメモリも増え、オペレーティングシステムが管理する最大メモリ量も引き上げる必要がある。しかし、Windows Server 2008 R2では、コア数を引き上げることはできたが、最大メモリ量はWindows Server 2008と同じく2TBにとどまっていた。

Server Coreとフルインストールに続く第3のインストール

 Windows Server 2008と2008 R2は、GUI部分を削ったインストールモデルである「Server Core」を搭載する。Windows Server 8ではServer Coreも改良され、GUIを使わないが、ソフトウェアとしてはGUIを使うツールを含むインストールも可能になった。また、Server Coreとフルインストールは、インストールするコンポーネントの有無だけとなり、Windows Server 8のコンポーネントを追加/削除することで相互に移行が可能になった。

Windows Server 8では、必要最小限のソフトウェアをインストールするGUIなしの「Server Core」とフルサーバー以外に、GUIシェルなしだが、ソフトウェアとしてはフルサーバーと同じインストールが加わった(図の中段)。また、コンポーネント追加、削除の状態を変更することが可能だ

グラフィックスとストレージ、ネットワークも改良

 完全にグラフィックスデバイスを持たず、リモートアクセスのみで利用する「Head Less」システムも構築可能になったのも特徴だ。従来は、起動時のINT10のエミュレーションのためのスタブドライバが必要になったが、これも不要となった。

 また、グラフィックスデバイスに関しては、WDDMのみの対応となったが、新たに「ディスプレイオンリー」、「レンダーオンリー」のグラフィックスデバイスドライバが追加された。

 ディスプレイオンリードライバは、画像出力のみの単純なデバイス用のドライバで、2D/3Dのアクセラレーター機能は不要だ。しかし、Windows Server 8側でDirectXのエミュレートを行なえる。これは、大量のディスプレイ端末を接続するようなシステム向けのもの。従来のVGAドライバはこのタイプのドライバとして実装され、Windows Server 8に含まれる予定だ。

 もう1つのレンダーオンリードライバは、逆に出力を持たず、2D/3Dのレンダリングのみを行なうハードウェア用のドライバだ。利用法は明確にされていないが、前述のディスプレイオンリーデバイスに対するレンダリングと、RemoteFX(GPUをHyper-V内アプリから利用可能にする)を想定しているのだと思われる。なお、Windows Server 8には、ソフトウェアで実現した「Basic Render Only Driver」が付属する。

 ストレージ関連では、複数の物理ストレージデバイスを組み合わせて利用するシステムの構築がより簡単になった。基調講演のデモでは、16台のディスクを「Storage Space(ストレージプール)」に登録、ここから複数の共有可能な仮想ディスクを作るデモが行なわれた。物理的なデバイスをまとめて、仮想的なPoolを作成、ここから必要な容量を仮想共有ドライブとして作り出すのだ。

従来のI/O Processingでは、受信したデータをメモリに格納したのち、アプリケーションが設定したバッファへと転送していた。しかし、Registered IOでは、アプリケーションが設定したバッファに直接受信データが書き込まれるためオーバーヘッドが少なくなる

 他のマシンから見えるのは仮想共有デバイスであり、容量の変更などが簡単に行なえる。そして、その容量自体は、Poolデバイスから持ってくる。このPoolデバイス自体には、物理ストレージを追加していくことで、全体容量を増やせるのだ。

ファイルサーバーでは、10ギガビットEthernet(GbE)に対してDCB(Data Center Bridging。特定のプロトコルに対して帯域を確保するための技術)、RSS(Receive Side Scaling。NICの割り込み処理をすべてのCPUで受けることを可能にする技術。R2まではコアグループ内のみ割り込み処理が可能だった)、RDMA(Remote Direct Memory Access。NICドライバ間でのDMA転送)などをサポートしており、従来、ボトルネックになりがちだったネットワーク関連の性能を上げている

 ネットワーク関連では、ファイル共有プロトコルである「SMB 2.0」が採用され、クラスタ内でのファイルサーバーのフェイルオーバーが可能になった。また、ネットワークカードを複数まとめてバンド幅を増やす手法や、プロトコルオフロードが可能なネットワークカード間で直接相手のメモリへとデータを転送する機能、仮想マシンのネットワーク負荷を下げる機能などが搭載されている。

Windows Server 8では、ネットワーク関係の機能強化がかなり取り込まれている。ただし、この中には、仮想環境でのみ利用可能な技術を含む。たとえば、SR-IOVやVMQは、仮想環境向けの機能
NIC Teamingは、複数のネットワークカード(NIC)をまとめて、仮想的なNICとして提供する機能で、実環境、仮想環境の両方から利用できる。複数のNICをまとめることで、転送幅を拡大できる

カテゴリートップへ

この連載の記事
ピックアップ