SE の雑記

SQL Server の情報をメインに Microsoft 製品の勉強内容を日々投稿

HPC Pack SP2 Beta の新機能:VM Role を HPC のノードとして利用

leave a comment

Windows HPC Server 2008 R2 SP1 では、Windows Azure の Worker Role を HPC クラスターのノードとして利用することが可能でした。

Microsoft エバンジェリストの高添さんのブログをみていたところ、SP2 Beta になり VM Role を HPC クラスターのノードとして追加ができるようになったようです。
高添えはここにいます > Dryad は HPC の SP2 に含まれ、HPC の Azure 連携は SP2 で大幅強化です!

SP2 Beta の新機能はこちらに書かれています。
What’s New in Windows HPC Server 2008 R2 Service Pack 2 Beta

Azure 系では以下の 4 点が追加されているようですね。

  • Add Azure VM Roles to the cluster.
  • Run MPI jobs on Azure Nodes.
  • Connect to Azure Nodes with Remote Desktop
  • Enable Azure Connect on Azure Nodes.

Azure Connect についての新機能もちょっと興味深いですね~。

■Windows HPC Server 2008 R2 のインストール


それではさっそく検証してみたいと思います。

HPC Server 触るのは初めてなので、OS の導入からまとめていきたいと思います。

技術情報としては以下の内容を参考にしています。
Design and Deployment Guide for Windows HPC Server 2008 R2

  1. Windows HPC Server 2008 R2 のインストールメディアを入れて、サーバーを起動します。
    HPC Server のインストールメディアは TechNet サブスクリプションで入手可能です。
  2. [次へ] をクリックします。
    image
  3. [今すぐインストール] をクリックします。
    image
  4. [同意します] を有効にして [次へ] をクリックします。
    image
  5. [新規インストール] をクリックします。
    image
  6. インストールするディスクを選択して、[次へ] をクリックします。
    image
  7. インストールが完了するまで待機します。
    image
  8. [OK] をクリックします。
    image
  9. Administrator のパスワードを設定します。
    image
  10. [OK] をクリックします。
    image

以上で HPC Server の OS 部分のインストールは完了です。

HPC Edition というエディションの一種なので通常の Windows Server 2008 R2 と同じ流れでインストールができますね。
image

 

■HPC Pack のインストール


HPC Edition をインストールした直後の状態では通常の Windows Server 2008 R2 と変わりません。
HPC 特有の機能を使用するためには HPC Pack をインストールする必要があります。

今回は HPC Pack with SP2 Beta を使用しますので、Connect からダウンロードします。

手順 2:ヘッド ノードの展開 によるとヘッドノードはドメインに参加している必要があるとのことでした。

ドメインに参加していない状態では HPC Pack をインストーすることができません。
image
image
image

ドメインに参加し、ローカルの Administrators グループのドメインユーザーでログオンをします。
# 今回は Domain Users のユーザーをローカルの Administrators グループに追加して作業をしています。

  1. ドメインユーザーでログオンをしたら Connect からダウンロードした、[HPCPack-3639.zip] を展開して [setup.exe] を実行します。
  2. [次へ] をクリックします。
    image
  3. インストールするエディションを選択して、[次へ] をクリックします。
    今回は [HPC Pack R2 Enterprise と HPC Pack 2008 R2 for Workstation] を選択しています。
    image
  4. [使用許諾契約書に同意します] を有効にして、[次へ] をクリックします。
    image
  5. [ヘッド ノードを作成することで新しい HPC クラスターを作成する] を選択にして、[次へ] をクリックします。
    image
  6. [次へ] をクリックします。
    image
  7. [次へ] をクリックします。
    image
  8. [次へ] をクリックします。
    image
  9. [次へ] をクリックします。
    image
  10. Windows Update の設定をして、[次へ] をクリックします。
    image
  11. CEIP の設定をして、[次へ] をクリックします。
    image
  12. [インストール] をクリックしてインストールを開始します。
    image
  13. [完了] をクリックします。
    image

さらっと DHCP サーバーが入っているので展開方法は考えないといけないですね。
インストールが終わったら VM Role をノードとして使用するための準備を行います。

以降の作業については以下に記載されています。
Steps for Deploying Windows Azure VM Nodes in Windows HPC Server 2008 R2 SP2 Beta

 

■VM Role の準備


HPC のノードで使用する VM Role のイメージを準備します。

手順は以下になります。
Step 4: Create a VHD for VM Nodes in Windows HPC Server

VM Role のシステム要件として OS は

  • Windows Server 2008 R2 Standard (English only)
  • Windows Server 2008 R2 Enterprise (English only)

のいずれかを使用する必要があります。

また。Extra Small は使用することができないので、Small / Medium / Large / Extra Large を使用する必要があります。

通常の VM Role で使用するイメージの作成 (VM Role 用統合コンポーネントのインストールをして Sysprep をしていない状態) してから以下の手順を実施します。

  1. Connect からダウンロードした、[HPCPack-AzureVM-3639.zip] を展開し、[HpcAzureVM.msi] を実行します。
  2. [Next] をクリックします。
    image
  3. [I accept the terms in the license agreement] を選択して、[Next] をクリックします。
    image
  4. [Next] をクリックします。
    image
  5. [Install] をクリックします。
    image
  6. [Finish] をクリックします。
    image

VM Role 用の HPC Pack のインストールが終わったら、MPI (Message Passing Interface かな??) 用の Firewall 設定をします。

  1. 管理者として実行したコマンドプロンプトを開きます。
  2. [cd %CCP_HOME%bin] を実行します。
  3. [hpcfwutil reset] を実行します。

MPI で使用するアプリケーションがある場合には、以下のコマンドを実行して個別にファイアウォールを設定します。
[hpcfwutil register <アプリケーション名> "<アプリケーションの EXE のフルパス"]

個別に MPI 用のプログラムを登録しない場合はこの作業は必要ないかもしれないですね。
ファイアウォールのルールとして [HPC ~] というルールがいくつかあり、これが HPC で基本的に必要となるルールのようです。

設定が終わったら Sysprep をして、csupload で Azure 上に VHD をアップロードします。

 

■ヘッドノードの構成


VM Role のイメージのアップロードが終了したらヘッドノードの構成を行います。

ヘッドノードの構成は [HPC Cluster Manager] から実施することができます。
image

手順はこちらの情報に記載されています。
手順 3:ヘッド ノードの構成

  1. ネットワークの構成
    1. NIC が 1 枚の場合は、[エンタープライズ ネットワーク上のみのすべてのノード] しか選択ができないので、[5.] を選択して [次へ] をクリックします。
      image
    2. [次へ] をクリックします。
      image
    3. [次へ] をクリックします。
      image
    4. [構成] をクリックします。
      image
    5. [完了] をクリックします。
      image
  2. インストール資格情報の提供
    1. ノード追加時に使用する資格情報を入力します。
      今回はローカルの Administraotrs グループの Domain Users グループのユーザーを指定しています。
      image
  3. 新しいノードの名前付けの構成
    1. 名前付け系列入力して、[OK] をクリックします。
      image
  4. ノード テンプレートの作成
    Step 4: Create a Windows Azure Worker Node Template
    1. 今回は VM Role で使用するのが目的なので、[Windows Azure node template] を選択して、[次へ] をクリックします。
      image
    2. [次へ] をクリックします。
      image
    3. Windows Azure のサブスクリプション ID と対象のサブスクリプションの管理証明書を選択して、[次へ] をクリックします。
      image
      [Browse] をクリックすると証明書が選べるのですが、ここで選択できる証明書は [ローカルコンピューター] の [信頼されたルート証明機関] にインストールされている証明書になるようです。

      Windows Azure の管理証明書として使用している [.pfx] をローカルコンピューターの信頼されたルート証明機関にインストールしておきます。
      image
      正しく証明書がインストールできていると [Browse] から選択することが可能となります。
      image
      [次へ] をクリックしたタイミングで検証は行われるようです。
      image
      証明書に関しては以下の技術文書で公開されています。
      Step 1: Configure the Management Certificate

      デフォルトでインストールされている証明書が、[%CCP_HOME%binhpccert.cer] にありますので、これを Management Portal で管理証明書として登録して使うこともできます。

    4. Hosted Service と Storage Account を選択して、[次へ] をクリックします。
      image
      ここでも検証が行われます。
    5. ノードで使用するロールを選択して [次へ] をクリックします。
      image
      VM Role の場合は使用する VHD を選択することが可能です。
      HPC Pack 用のモジュールをインストールしている VHD を選択します。
    6. Role のリモートデスクトップで使用するユーザーのユーザー名とパスワードを入力し [次へ] をクリックします。
      image
    7. [次へ] をクリックします。
      image
    8. [作成] をクリックします。
      image

ここまでの作業で VM Role をノードとして使用するためのテンプレートが作成できました。
image

あとはこのテンプレートを使用して VM Role のインスタンスを作成します。

■HPC クラスターのノード追加


それでは作成したテンプレートを使用して HPC のクラスターノードとして VM Role を追加してみたいと思います。

技術情報はこちらを参照。
Step 5: Add Windows Azure Worker Nodes to the HPC Cluster

  1. [ノード管理] から [ノードの追加] をクリックします。
    image
  2. [Add Windows Azure nodes] を選択して、[次へ] をクリックします。
    image
  3. 使用する [Azure node template] と [Azure のインスタンスノード数] [インスタンスサイズ] を選択して、[次へ] をクリックします。
    選択肢が [小規模] (Small) からとなっているので、Extra Small は使うことができません。
    image
  4. [完了] をクリックします。
    image
  5. 作成したノードを選択して、[開始] をクリックします。
    image
  6. [開始] をクリックします。
    image
  7. VM Role のデプロイが開始されます。
    image

デプロイが開始されたときに Management Portal を開くとこちらでもデプロイ中なのが確認できます。
HPC 用のサービス証明書がデプロイ時にアップロードされるみたいですね。
# リモートデスクトップを使うための証明書ってどうするんだろうと気になっていたのですが、HPC 用のデフォルトの証明書を使っているみたいですね。
image

VM Role のインスタンスだけかと思ったら [HpcProxy] というインスタンスが 2 インスタンス起動してくるみたいですね。

アップロード時には [.cskpg] を Azure Storage 上に配置しているようです。
image

 

デプロイが完了すると HPC クラスターマネージャーからインスタンスの状態を確認することができるようになります。
image
image

Remote Desktop も有効な状態となっています。
image

Input Endpoint は自動で設定されているみたいですね。
image

 

追加直後のノードはオフラインになっているようなので、[オンライン] にする必要がありそうです。
image

 

Azure のインスタンスのパフォーマンスがメトリックで確認できるのが面白いですね。

imageimageimageimageimageimage
image

Azure のインスタンスが不要になった場合はクラスターマネージャーで [オフライン] にしてから  [削除] することで削除可能です。
imageimage
image
image
image

サービス証明書に関しては削除されないようなので自分で削除しないといけないようですね。
image

HPC を触ったことがないので Wokrer Role と VM Role をどう使い分けるかというのはイメージがついてないのですが、ひとまず VM Role をノードとして利用する方法のさわりの部分だけまとめてみました。

Written by masayuki.ozawa

5月 8th, 2011 at 6:48 pm

Posted in Windows Azure,Windows HPC

Tagged with ,

No Responses to 'HPC Pack SP2 Beta の新機能:VM Role を HPC のノードとして利用'

Subscribe to comments with RSS or TrackBack to 'HPC Pack SP2 Beta の新機能:VM Role を HPC のノードとして利用'.

  1. […] HPC Pack SP2 Beta の新機能:VM Role を HPC のノードとして利用 の続きです。 […]

Leave a Reply

*