2012/05/01

System Center 2012 RTM > Server App-V でサービスの更新

System Center 2012 Virtual Machine Manager で Server App-V による Tomcat + JRE の展開をしてみましたが、今回は、仮想アプリケーションとして展開した Tomcat 7.0.26 を Tomcat 7.0.27 に更新する手順を紹介します。Windows Azure みたいにサービスの更新が簡単にできるんです。



今回→) System Center 2012 RTM > Server App-V でサービスの更新
予定) System Center 2012 RTM > VMM でサービスのスケール アウトを試す
予定) System Center 2012 RTM > VMM でアップグレード ドメインを試す

前回、サービスとして展開したのは、Apache Tomcat 7.0.26 を JRE 6 とともにシーケンスした仮想アプリケーションを組み込んだものでした。


今回は、このサービス インスタンスの仮想アプリケーションの部分だけを、Apache Tomcat 7.0.26 から 7.0.27 に更新してみます。

まず、Tomcat 7.0.26 の仮想アプリケーション パッケージ (.srpj) を Server App-V Sequencer にパッケージ更新用に読み込みます。読み込んだら、Tomcat 7.0.27 に更新します。ただし、Tomcat は更新に対応していないので、Q ドライブに読み込まれた Uninstall.exe を使用して 7.0.26 のサービスを削除し、ファイルをすべて削除してから、Tomcat 7.0.27 を Q ドライブの同じパスにインストールして、パッケージ (.srpj) を出力、Virtual Machine Manager のライブラリに保存しました。ここがちょっと手間取りました。




次に、Tomcat 7.0.26 を含むサービステンプレートのコピーを作成し、リリース v2 にします。

サービステンプレートの v2 をデザイナーで開き、仮想アプリケーションを Tomcat 7.0.26 から Tomcat 7.0.27 に差し替えます。ライブラリからパッケージを選択し直すだけです。仮想アプリケーションを入れ替えたら、これを展開するのではなく、「保存と検証」をクリックして、保存しておきます。


展開済みのサービスを選択し、「テンプレートの設定」をクリックして、先ほど保存した v2 のテンプレートを指定します。


仮想マシンを含めて再展開するか、更新部分だけを適用するかを選択します。今回は、仮想マシン部分は変更していないので、「配置済みのバーチャル マシンに更新プログラムを適用する」を選択します。


更新されるアプリケーションを確認します。このサービスはインスタンス 1 つであるため、更新中にサービスが停止するという警告が出ますが無視無視。ここらへんは、Windows Azure みたい。


更新の適用を開始します。


完了しました。Tomcat 7.0.27 に更新されています。仮想マシン部分はそのままなので、更新処理はすぐに完了します。


更新に失敗した場合は、「テンプレートのクリア」で元に戻せます。ありがたい。ちなみに、アプリケーションの新しいバージョンを別のパッケージとして作成し、更新しようとすると、仮想アプリケーションの GUID が違うという理由で更新は失敗します。そのため、Sequencer にパッケージを読み込んで、更新したものを使用する必要があります。


Virtual Machine Manager すげぇ。

0 件のコメント: