2010/01/28

Linux Integration Components Version 2 for Hyper-V "Available Now" or "2009/10" ?

先ほど Microsoft ダウンロード センターを見てみたら、新着ダウンロードに Linux Integration Components Version 2 for Hyper-V (Linux ICs v2) がリストされていました。

Linux Integration Components for Windows Server 2008 Hyper-V R2 - 日本語
http://www.microsoft.com/downloads/details.aspx?displaylang=ja&FamilyID=c299d675-bb9f-41cf-b5eb-74d0595ccc5c
バージョン : 2.0
公開された日付 : 2010/01/27 2010/1/29
言語 : 日本語

これって新しいやつ?...

[2010/1/28] 上記リンクが消えました。現在、Linux ICs v2 のダウンロード元を見失っています。
[2010/1/29] リンク復活しました。Read Me に Red Hat Enterprise Linux 5.2、5.3、5.4 の正式サポートが追加されました。本体 LinuxIC v2.iso は変更ありません。

Linux ICs v2 は、2009年7月に RC2 がリリース され、2009年10月に RTM 版となって、上記 URL で公開されていました。今回、何か新しくなったのかなとダウンロードしてみたところ、2009年10月に公開されたものとまったく同じものでした。 Read Me ドキュメント (Linux Integration Components Read Me.pdf ) のみが差し替えられています。Linux ICs v2 については、以下で書いたことがあります。

徹底検証 Hyper-V 2.0 ―― (10)Linux対応 (COMPUTERWORLD.JP、もともとは Windows Server World 2009年12月号の特集記事)
http://www.computerworld.jp/topics/mws/170889.html

ちょっと言い訳です。上記記事では 「Red Hat Enterprise Linux(RHEL)5.2/5.3が新たに加わった」 と書いてありますが、現在、Linux ICs v2 サポートされている Linux ゲストは SUSE Enterprise Linux Server (SELS) 10/11 x86/x64 だけです。記事に RHEL が入ってしまったのは、Linux ICs v2 RC2 で RHEL のサポートが加わったことが強く印象にあり、RTM のリリースノートをちゃんと確認しなかったからです。とはいえ、Linux ICs v2 RC2 が RHEL で動作するのと同じように、Linux ICs v2 RTM は RHEL でも動作します。何らかの大人の理由で RHEL のサポートが “一時的に” 削除されているようです。Hyper-V でサポートされるゲスト OS には RHEL が含まれていますが、Linux ICs v2 でサポートされていないため「エミュレートされたデバイスのみ」という制限が付いています。

2010/01/29 付けの Linux ICs v2 の Read Me ドキュメントには、 Red Hat Enterprise Linux 5.2、5.3、5.4 x86 および x64 のサポートが追加されました。

Hyper-V 2.0 のゲストとして動作中の SLES 11 x64 および RHEL 5.3 x64
RHEL 5.3 x86_64 と Linux ICs v2 RHEL は Linux ICs v2 のサポート対象外ですが、ちゃんと動きます (以下の画面にはマウス統合も入れてあります)

もう1つ言い訳というか、補足として Linux ICs v1 と v2 の決定的な違いについて触れておきます。Linux ICs v1 では、Hypercall Adapter を挟んで、SLES の Xen 対応カーネルを Hyper-V 上で動かすというのが特徴でした。以下の Web 記事でもそうなっています。このアーキテクチャは、Linux ICs v1 だけのものなのでご注意ください。

Windows Server 2008 R2 ホーム > R2機能概要 > Hyper-V 2.0 の図1
http://www.microsoft.com/japan/windowsserver2008/r2/technologies/hyperv.mspx
MSBC > Linux も Hyper-V
https://www.microsoft.com/japan/msbc/info.aspx?fname=campaign/virtualization/server

Linux ICs v2 では、Xen 対応カーネルは使用せず、通常の32ビットまたは64ビット カーネルで動作します。Linux ICs v2 には Hypercall Adapter は存在せず、仮想マシン バス (vmbus)、統合タイプのネットワーク アダプター (netvsc) 、統合タイプの SCSI ディスク (storevsc)、IDE (ブート デバイス)の高速化 (blkvsc) で構成されます。マウス統合は、GNU GPL ライセンスの関係で Citrix Satori Project からダウンロードできます (ちなみに、マウス統合 (inputvsc) は、SLES 10 や RHEL 5.3 では動作しましたが、SLES 11 ではインストールがエラーになりました。新しい Read Me にもSLES 11 の制限として載っています) 。

Virtual Server 向けの Virtual Machine Additions for Linux に含まれていた最適化されたビデオ ドライバ、シャットダウン連携、時刻同期機能は、残念ながら提供されていません。そのため、Hyper-V で Linux ゲストは、サポートはされていても、機能的な制約が多いです。Linux ゲストを本版環境で検討している場合は、その辺のところを十分に検討、検証する必要があるでしょう。例えば、次のような制約があります。
  • Linux ゲストの仮想マシンでサポートされる仮想プロセッサは、1 つに制限されます。これはパフォーマンスに影響します。
  • ホスト OS と時刻同期ができないので、時間が早く進む、または遅れる可能性があります。そのため、NTP (Network Time Protocol) などで定期的に (しかも頻繁に) 、外部タイム ソースと時刻同期を行う必要があります。
  • ホスト OS と時刻同期ができないので、保存された状態からの復帰やクイック マイグレーションによる移行後、次に NTP などで時刻が調整されるまで、システム時刻が大幅にずれた状態が続きます。
  • シャットダウン連携ができないので、管理ツール (Hyper-V マネージャーや System Center Virtual Machine Manager) から完全に制御できません。起動はできますが、シャットダウンするには Linux ゲストにログインして行う必要があります。
  • VSS Writer によるライブ バックアップ (Windows Server バックアップや System Center Data Protection Manager) はできません。バックアップ時に状態が保存され、ボリューム スナップショット作成後、再開されます。
  • Hyper-V 2.0 のネットワーク最適化機能である LSOv2、Checksum Offload、TCP Chimney Offload、Virtual Machine Queue、Jumbo Frame 機能は利用できません。