次の Hyper-V で実現可能な Live Migration


Windows Server 2008 の Hyper-V では、Windows Server 2008 のフェールオーバークラスタ (MSFCとします)機能を利用することで 「Quick Migration」 という仕組みを提供しており、物理サーバーがダウンした時の”仮想マシンのフェールオーバー”や、計画保守実施時の”仮想マシンの物理マシン間移動”に対応していました。

ただ、この Quick Migration 環境は、MSFC がサービスをフェールオーバーさせる際に稼働中の仮想マシンはメモリ上のデータを共有ディスクに書きだす必要があり、仮想マシンは一旦保存状態になります。

要は、数秒から数十秒のダウンタイムが発生していました。

ダウンタイムといっても、コミュニティなどでデモをみてもらったりすると、”これくらいなら使えそうだね”と言ってもらえる事も多かったのですが、やはり他社さんもやっている”仮想マシンが止まらない仕組み”がほしいという声も少なくはありません。

==============

そこで登場するのが、次期サーバーOS Windows Server 2008 R2に搭載される 「Live Migration」 の機能です。

この Live Migration は、Windows Server 2008 R2 の Hyper-V 2.0 とフェールオーバークラスタに追加された新機能「Cluster Shared Volumes (CSV)」の組み合わせで環境を作っていきます。それでは、私が実施した設定の流れを見てみましょう。

※あくまでも、Live Migration のデモをするためだけの環境設定だという事はご理解下さい。

  1. 2台の Hyper-V 2.0 マシンを用意
  2. 1台目の親パーティションに Active Directory ドメインサービスを立ち上げ、もう一台の親パーティションをドメインに参加させる
  3. iSCSI Target を利用して共有ディスク環境を作る
    • 用意した仮想ディスクボリューム (LUN)は2つ
    • ① 1つはフェールオーバークラスタに関する情報を置く場所、② 1つは複数の仮想マシンを配置するCSV用です。
    • ①は大容量である必要はありません。
    • ②は複数の仮想マシンの置き場なので、デモを行う仮想マシンのVHDファイル等が置けるだけの容量を確保して下さい。
    • 今回作った環境は、iSCSI Target マシンを仮想マシン上で実現しました。強引ですがちゃんと動きます。
  4. 2台の Hyper-V 2.0 マシンにてiSCSI イニシエータを起動し、用意した iSCSI Target に接続する。
    • 親パーティションのディスクの構成を見た時に、2つのLUNが見えている事
  5. 2台の Hyper-V 2.0 親パーティションに フェールオーバークラスタ機能を追加
  6. 1台目のフェールオーバークラスタ管理ツールにて、クラスタを追加
    • ウィザードで2台の Hyper-V 2.0 マシンを追加します
    • クラスタ名とクラスタ専用の IPアドレスを設定する程度です
    • ここで LUN を1つ使い始めるので、残りの空きLUNは1つとなります
  7. 1台目のフェールオーバークラスタ管理ツールで何ができそうかザックリ確認
  8. R2 の管理ツールに追加された「Enable Cluster Shared Volumes」というメニューを実行、空いているLUN (共有ストレージ) を追加する
    • 2台の Hyper-V 2.0 マシンのファイルエクスプローラを見ると、Cドライブ直下に Cluster Shared Volumes フォルダができています
    • CSV に LUN を追加すると、Cluster Shared Volumes フォルダ配下にフォルダが追加されていくように見えます
    • 普通のフォルダのように見えていて、実は共有ストレージがマッピングされている
    • しかも、複数のマシンから同時にアクセスできる
      ※ 今までのフェールオーバークラスタでは、共有LUNに対するアクセス可能なアクティブノードが決まっていました
  9. 1台目の Hyper-V 2.0 マシンにて、Hyper-V マネージャを起動し、仮想マシンを作成
    • 仮想マシンの保存先には C:\Cluster Shared Volumes\ フォルダを指定する
    • 仮想マシンにOS をインストール
  10. 1台目のフェールオーバークラスタ管理ツールにて、「Live migrate this virtual machine to another node」という処理を実行

    • 仮想マシンが利用しているメモリ上のデータを移行先の物理マシンにコピーして、最終処理として切り替え作業を実施します
    • よって、仮想マシンそのものは停止せずにサービスを提供し続ける事ができます

=============
Quick Migration の時もそうでしたが、iSCSIの環境設定は初めての人にとってはちょっと敷居が高いかもしれません。

ただ、MSFC も Hyper-V 2.0 も、もちろん CSV も設定は難しくはありませんので、是非チャレンジしてみていただければと思います。

マイクロソフト 高添

 

P.S.
ここまで書いておいてなんですが、先ほどあるスクリーンショットまで載っているブログを見つけました!!
http://blogs.technet.com/windowsserverjp/default.aspx

書いている人達のことはよーく知っているので、ちゃんと案内してよいか聞いてみようと思います。

このブログは私のブログよりはるかに技術情報が充実するはずですから。。。

Comments (9)

  1. Ichiro Arai より:

    残念ながら、ニンバスは、iSCSIターゲットを引っ張っていたし、それをダウンロードすることはできません任意の詳細… iSCSIのケーキサポートフォーラムは、スパムと氾濫していない開発はかなりの時間のための… StarWindのソフトウェアは無料で、iSCSIターゲットと良い仕事をして.

    一郎

  2. お返事ありがとうございます。

    私も確認ができてよかったです。

    実は私も他のソフトを調べたことがあるんですが、.NETが必須になっているのはこれでしょうか

    http://www.nimbusdata.com/products/mysan.php

    今はなぜかサイトにアクセスできませんが、こんなものもありました。

    http://www.iscsicake.com/index.html

    理由は忘れてしまったんですが、結局どれもうまくいかなかった気がします。

    ****

    ちょっと余談なのですが、このやり取りを見て「ちょうど知りたかったのでありがたかった」というメールを別の方から頂きました。

    横山さん、chouさん、ありがとうございます!!

  3. masayuki.ozawa@live.jp より:

    丁寧なご回答ありがとうございます。

    私がダウンロードしたのは記載いただいた URL からになります。

    他の人がブログに投稿されているのをみて初めて通常のサイト以外でダウンロードができるのを知りました。

    >通常のダウンロードサイトやTechNet/MSDNでは提供していないと思っていたのですが。

    確かに書かれていらっしゃるとおりです。評価版の意味をはやとちりしておりました。

    TechNet/MSDNで提供されるソフトも評価版ですね。失礼いたしました。

    最近、Windows Storage Server がインストールされている安価な NAS もありますがiSCSI ターゲットは入っていませんので、TechNet/MSDNから期限のない評価版の提供が実現されるととてもうれしいです。

    Windows 上で使用できるソフトウェアターゲットは私も Storage Server と StarWind ぐらいしか分らないですね。

    # .NET Framework ベースで開発された英語のソフトウェアターゲットもあったはずなのですが名前を忘れてしまいました…。

  4. chou さん、コメントありがとうございます!!

    (OEM 製品のことは詳しくないので、間違ってたらご指摘くださいね)

    現在提供している評価版というのは、こちらだという認識をしているのですが同じでしょうか?

    http://microsoft.download-ss.com/default.aspx?PromoCode=&PromoName=&h=www

    通常のダウンロードサイトやTechNet/MSDNでは提供していないと思っていたのですが。

    それから、OEMメーカー様経由でのみ提供している製品なので、提供形態はいろいろあるかもしれませんが、基本的にiSCSIターゲットはStorage Server のオプション扱い、Windows Unified Data Storage Server 2003 なら同梱されているとの認識です。

    そして、上記評価版は一般向けというよりもStorage Server を担いでいただけるようなハードメーカー様向けに提供しているものなのだと思うので、もっと一般的に手に入りやすくしたいというのが私の目論見だったりします。

    それから、(OEM様向けに提供されているものがどうかはわかりませんが)、iSCSI ターゲットはOSに最初から組み込まれた機能ではなく、現時点ではインストールすれば使えるアプリケーションのような形でパッケージ化できています。

    世界にいるマイクロソフトのエンジニアの中には、Storage Server を使っていたり、他の会社が提供しているiSCSI ターゲット(Rocket Division Software のStarWindはよく名前が出てきます)を使っていたりといろいろですが、私の場合はDEMOがとりあえず動けばよいという程度の要件なので、仮想マシンにiSCSIターゲットをインストールして使っています。

    ということなのですが、もし私が知らないだけで、すぐに使えるものがあれば、私がお願いするのも申し訳ないのですが教えていただけるとありがたいです。

    どうぞよろしくお願いします。

  5. masayuki.ozawa@live.jp より:

    初めてコメントさせていただきます。

    「iSCSIターゲットの評価版提供」ですがマイクロソフトから提供されている iSCSI ターゲットは Storage Server 2003 R2 以外にもあるのでしょうか?

    Storage Server 2003 R2 のものでしたら評価版をダウンロードすることが可能でしたので…。

    (ブログでダウンロード先等をまとめたことがありましたのでその投稿を名前のリンクに設定させていただいております。)

    的外れな質問でしたら申し訳ございません。

  6. 横山さん、いつもありがとうございます。

    Tech Days もお疲れ様でした。

    そっか、ファイバチャネルSAN も iSCSI も無しで動きましたか。

    実は私も、共有フォルダによるLive Migration を試してからブログに書こうと思いつつ、SBSの仕事が入ったり2月20日のイベントのPPT社内締切が近かったりでそのままになっていました。

    iSCSI ターゲット無しでできるデモ環境という点では、多くの方に知っておいていただきたいと思っていたので、タイムリーに情報共有していただいて本当にありがとうございました。

    ちなみに、ご要望いただいている「iSCSIターゲットの評価版提供」について私からも要望はあげているのですが、今のところ難しいかなと思っています。

    期待させてダメだったというのは私も辛いので、あまり期待をしないでもらって、もし良い返答が返ってくるようでしたら連絡をさせていただきます。

    (すっきりしない日本語ですいません)

    高添

  7. yokoyamat より:

    横山です。

    iSCSIターゲットを用意するのは大変なので、共有フォルダを使ったクラスタを作ってみました。

    ポイントは、クラスタを追加したあと、ファイル共有witness付きのクラスタに属性を変更することです。

    これにより、以下の環境でQuick Migrationが実現できます。

    1. ドメインコントローラ兼ファイルサーバー

    2. クラスタノードA

    3. クラスタノードB

    ポイントは、仮想サーバーの構成ファイルと仮想ディスクの両方をUNCで指定することです。

    アクセス許可は、SYSTEMとコンピュータアカウントに変更の権限が必要なようです(きちんと確認していません)。

    共有フォルダが単一障害点になるので実用的ではありませんがテストは可能です。

    同様の構成で、Windows Server 2008 R2 ベータ(Build 7000)でLive Migrationも成功しました。

  8. Anonymous より:

    今日は Hyper-V 3 連発です。 先ほど Hyper-V 2.0 の目玉機能でもある Live Migration の設定方法 と、 Live Migration は万能かどうか について投稿しました。

  9. Anonymous より:

    先ほど Hyper-V 2.0 の目玉機能でもある Live Migration について投稿 しました。 Live Migration はデモ受けもしますし、「Dynamic な IT を目指そう!!」と言い続けている私としてはとっても嬉しい機能です。

Skip to main content