特別企画

Windows 10を最大限に生かすWindows Server 2016

 現在、Technical Previewが行われているWindows Server 2016は、コンパクトなNano Serverやコンテナのサポートなどに注目が集まるが、Windows Serverとしてのベース機能も強化が図られている。

 特に、先行してリリースされているクライアント OSのWindows 10を最も生かすようにできている。

 今回は、Windows 10と組み合わせて実現される機能を紹介しつつ、これまでの仮想化道場などの記事で説明できていなかった、そのほかのWindows Server 2016の特徴も紹介する。

Windows Server 2016は、Software Defined DataCenter(SDDC)を実現するために、さまざまな機能が追加されている(FEST2015の資料より。以下同じ)
NanoServerやコンテナ以外にも注目すべき機能が用意されている

ハイブリッドなAD環境を実現するWindows Server 2016

 Windows 10 Enterpriseは、クラウドのMicrosoft Azure上に用意されたID認証システムのAzure Active Directory(以下、Azure AD)を標準で利用することができる。

 Azure ADを利用することで、Salesforce、Office 365などのクラウド上のサービス(SaaS)にシングルサインオン(SSO)を行うことができる。つまり、Windows 10 EnterpriseからAzure ADに一度ログインすれば、ほかのSaaSにいちいち異なるIDやパスワードでログインしなくても、Windowsのログインだけで終えることができる。ユーザーは、Windows 10 Enterpriseにログインすれば、他のサービスをシームレスに利用することができるので、利便性が向上するわけだ。

Azure ADを利用することで、クラウド上のサービスをSSOで利用することができる
Azure ADが利用できるのはWindows 10だけになる
Windows 10のアカウントは、個人ユーザーが使うMicrosoft Account、企業や教育機関が利用するAzure ADとADドメインに分かれる。これらのアカウントが相互認証している

 Azure ADにはWindows Server 2008/R2、2012/R2用にAzure AD Connectorというソフトウェアが用意されており、オンプレミスのActive Directory(AD)サーバーにこれをインストールすれば、クラウド上のAzure ADとの連携を自動的に行ってくれる(Azure ADの詳細は以前の記事を参照)。

 ただ、現行のWindows ServerとAzure AD Connectorの組み合わせでは、Windows 10の機能を最大限生かすことができない。

 例えばWindows 10は、FIDO 2.0に対応した認証プロセスをサポートしており、パスワードの代わりにPINを使用したサインインや、顔認証や指紋認証などの生体認証システムに対応している。

 しかし現状のAzure ADで、Windows 10のPINや生体認証システムを利用してSSOを利用するためには、いくつか制限があるのだが、Windows Server 2016のADは、Azure ADを前提としたハイブリッドAD環境を本格的にサポートすることで、クラウドとオンプレミスADを完全に融合したモノになっている。

 例えば、Azure ADとAzure AD Connectorの組み合わせでは、オンプレミスのADの情報をAzure ADに反映するだけの一方通行だったが、Windows Server 2016とAzure ADの組み合わせでは、これが双方向になる。

 つまり、Azure AD側の情報をオンプレミスのADに反映できるので、Azure ADでユーザーがパスワードを変更しても、オンプレミス側に自動的に反映されるようになる。クラウドのAzure ADとオンプレミスのADが融合して、クラウドとオンプレミスの垣根を越えたID認証システムとして運用することができる。

Windows Server 2012 R2とWindows 10の組み合わせでは、Azure ADとADドメインの利用に制限がある
Windows Server 2012 R2とAzure AD Connectorを使えば、Azure ADにADドメインの情報をレプリケートすることができる
Windows Server 2016とAzure ADを利用すれば、オンプレミスのADとAzure ADとが双方向で連携する

ファイル共有プロトコルの機能強化

 Windowsのファイル共有プロトコルとして有名なSMBも、Windows 10とWindows Server 2016の組み合わせで利用すると、さらなるメリットを得られる。

 SMBは、Windows Server 2012(Windows 8カーネルベース)で3.0にメジャーバージョンアップされた。SMB 3.0の最大の特徴としては、SMBマルチチャンネルによる高速通信、RDMAを使ったSMBダイレクト機能のサポートによる通信の高速化、サーバーの負荷を軽くするオフロードデータ通信(ODX)のサポートなどがあり、SMB 2.1(Windows 7でサポート)に比べると大幅に機能アップされている。

 さらにWindows Server 2012 R2(Windows 8.1カーネルベース)では、SMB 3.02にアップグレードされている。SMB 3.02には、SMB 3.0の機能をベースとして改良が加えられているが、新しい機能を追加したというよりも、SMB 3.0で足らなかった機能や問題になった部分を改良した、というイメージが強い。例えば、SMB上でのHyper-Vライブマイグレーションのサポートなどが挙げられるだろう。

 そして、Windows 10で採用されたSMB 3.11では、SMB 3.02をさらに機能強化している。例えば、暗号化のAES-128 CCM/GCMをサポートしているし、暗号化のネゴシエーションのプロセスを改良してパフォーマンスをアップしている。また、ネゴシエーション自体もセキュアにできるように改良されたほか、Scale-Out File ServerをCluster Rolling Upgradeできるようにした。

 しかしSMB 3.11を利用するするためには、Windows Server 2016とWindows 10という組み合わせが必要になる。クライアントが、Windows 8.1やWindows 8、Windows 7の場合は、各クライアントが持つSMBのバージョンで動作することになるからだ。

 企業にとっては、一挙にWindows Server 2016とWindows 10という環境にアップデートするのは難しいだろう。ただ、SMB 2.xとSMB 3.xではパフォーマンスが大きく異なる。SMBの観点から見れば、サーバーはWindows Server 2012以上、クライアントはWindows 8以上で運用して、徐々にWindows Server 2016とWindows 10という環境に変更していく方針を採るべきだろう。

 Windows 7を中途半端にWindows 8/8.1にアップグレードするのではなく、今後10年を考えて、Windows 10へのアップグレードを前倒しすべきではないか。

可用性と耐障害性の向上

 さて、ここからは、Windows Server 2016単独での機能強化を紹介していく。

 Windows Server 2016には、可用性を高めるために新しいディザスタリカバリのStorage Replicaが用意された。サーバー間でストレージをレプリケーションするだけでなく、クラスターを構成したサイト間でストレージをレプリケーションすることが可能になった。

 Windows Server 2016だけでストレージの複製ができるようになったことで、サードパーティのソフトウェアを購入しなくても、ストレージの災害対策を行えるようになった。なおStorage Replicaは、SR Over SMB3を利用しているため、Windows Server 2016同士でのレプリケーションになる。

 またWindows Server 2016では、複数のサーバー上のストレージを束ねて仮想的なストレージプールとして構成することができる(Storage Spaces Direct)。この機能は、最近注目を集めている分散ストレージやSoftware Defined Storage(SDS)として使うことが可能だ。

 Storage Spaces Directでは、4台以上のサーバーを組み合わせて、1つの仮想ストレージプールを構成する。ローカルストレージとしては、SAS、SATA、NVMeなどのストレージが使えるので、低価格なSATAやNVMeのような高速なフラッシュストレージを利用して、コストメリットのあるストレージプール、高い性能を持つストレージプールなどを自由に構成できる。Windows Server 2016 Technical Previewでは、Hyper-Vのストレージとして想定されているようだ。

Storage Replicaでは、WANを経由してサイト間でストレージのレプリケーションが行える
Storage Spaces Directでは、4台以上のサーバーで分散ストレージが構成できる。ローカルストレージはSAS、SATA、NVMeなどが利用できる

 Windows Server 2016では、可用性を高める機能として、仮想マシンを使用していく上での耐障害性向上、回復機能を提供する、VM Resiliency機能が追加されている。

 具体的には、一時的なサーバーやネットワークなどのノード障害に対しては、VM Compute Resiliency、一時的なストレージ障害に対してはVM Storage Resiliencyが用意されている。

 VM Compute Resiliencyは、一時的なネットワークやノード障害時にも仮想マシンの稼働を継続できるようにする機能。障害のレベルにより、ノードを切り離すIsolateを実行するかどうかを管理者が設定できるようにしており、システム全体でどのように障害に対応するかを管理者が決めることが可能だ。

 一方のVM Storage Resiliencyでは、ストレージの障害を検知しても、すぐにエラーにするのではなく、ある時間の間にストレージが回復すれば、トラブルのログを書き出して、VMの動作を回復する。もし障害が一定時間で回復しなければ、仮想マシンを停止する。何かトラブルがあっても、一定時間で復帰すれば、動作を継続し続けることができるわけだ。

 例えば、ストレージのトラブルが日中に起こっても、VM Storage Resiliencyで回復すれば、日中はそのまま動かしておき、業務終了後にシステムのメンテナンスを行う、といったことができる。

仮想マシンの一時的な障害からの回復機能(VM Resiliency機能)として、VM Compute ResiliencyとVM Storage Resiliencyが用意されている
VM Compute Resiliencyでは、ノードやネットワークの障害が起こっても、仮想マシンの稼働を続ける
VM Storage Resiliencyは、一時的なストレージ障害に備えた回復機能だ

サーバーOSのアップグレードを順次に行うローリングアップデート

 Windows Server 2016では、Cluster OS Rolling Upgradeがサポートされた。この機能を使えば、クラスタを構成しているサーバーを全面的に停止せず、サーバーごとにOSのアップグレードを行うことができる。

 具体的には、新しいWindows Server 2016サーバーを用意し、アップグレードするサーバーの仮想マシンをライブマイグレーションで移行。この作業をすべてのサーバーで行う(玉突きのように、順番にWindows Server 2016に変えていく)。このときは、クラスタレベルはWindows Server 2012 R2のままだ。すべてのサーバーがWindows Server 2016にアップグレードされた段階で、クラスタレベルをWindows Server 2016にアップグレードする。

 この機能で注意が必要なのは、Windows Server 2012 R2からWindows Server 2016へのローリングアップグレードしかサポートされていない点だ。このため、Windows Server 2012やWindows Server 2008からWindows Server 2016へのアップグレードは、Cluster OS Rolling Upgradeを用いて一気に行うことはできない。

Cluster OS Rolling Upgradeにより、サービスを止めずにOSのアップグレードが行える
Cluster OS Rolling Upgradeは、Windows Server 2012 R2からWindows Server 2016へのアップグレードになるため、Windows Server 2012 R2より前のOSは、いったんWindows Server 2012 R2にアップグレードする必要がある
Windows Server 2016サーバーを追加し、ここにライブマイグレーションでWindows Server 2012 R2の仮想マシンを移行する
すべてのサーバーをWindows Server 2016にアップグレードした後に、クラスタレベルをWindows Server 2016にアップする。それまでは、Windows Server 2012 R2モード

仮想環境の機能強化

 Windows Server 2016のHyper-Vは、Host Fuardian ServiceとShielded VMという、信頼された環境でのみ仮想マシンを動かすことができる機能が追加された。Host Fuardian ServiceとShielded VMは、サーバーのハードウェアとしてTPMをサポートしていることが前提になる。サーバーのTPMをハイパーバイザーのHyper-V上で仮想TPM(vTPM)として利用し、各VMに提供する。各VMは、Bitlockerベースで高いセキュリティを持って動作することになる。

 Windows Server 2016のHyper-Vには、このほか、静的メモリの変更機能、仮想NICの追加/削除などの機能が追加されている。

仮想マシンもTPMで保護することで、セキュアな仮想マシンを実現する
Windows Server 2016のHyper-Vでは、静的メモリの変更や仮想NICの追加/削除などの機能が追加された

*******

 一般的に、Windows Server 2016はNanoServerやコンテナなどが目立つが、サーバーの機能としても着実に機能強化されている。今回紹介した機能以外にも、DNSやDHCPなどにも新しい機能が追加されているのだ。

 先日、Windows Server 2016 Technical Preview 4が公開されたが、新しいHyper-Vコンテナを搭載するなど、リリースに向けて順調に開発が進んでいるようだ(Windows Server 2016 Technical Preview 4のレビューに関しては、近々中に行う予定にしている)。

 なおWindows Server 2016を見ていると、多くの機能がSystem Centerで管理することが前提になっているようだ。確かに、サーバーOS単体でもある程度の管理は行えるが、より高度な管理や、多数のクラスタ、サーバー群を管理することを考えると、System Centerが必須になってくる。

 今後は、サーバーOSだけでなく、System Centerを利用することも考えていく必要があるだろう。

山本 雅史