HPC Pack 2012 Beta を Windows Azure VM で試す! - ヘッドノード構築編

さて、いよいよ HPC Pack 2012 で新しいクラスターを作ってみたいと思います。

ではまず、

Windows Server 2012 のマシンをご用意ください

そう。 HPC Pack 2012 でクラスターを作る場合、ヘッドノードの OS は Windows Server 2012 が必要です。(計算ノードは Windows Server 2008 R2 や Windows 7 でも OK) とはいえ今月 RTM したばかりの最新サーバー OS 。すぐには環境が準備できないという方も多いと思います。

そこで、Windows Server 2012 がインストールされた仮想マシンを簡単にゲットできる Windows Azure VM を利用するってのはいかがでしょう。これは、 Windows Azure における IaaS 機能で、現在プレビュー中なのです。

 

Windows Azure のアカウントありますか

あるよ、使ってるよという方、この節は読み飛ばしてください。

Windows Azure を使ったことない、アカウント持ってないという方は、下記のリンクから無料評価版をぜひお申し込みください。

Windows Azure サブスクリプション申し込み Step by Step

※ 「Step 1 - Windows Azure のサブスクリプション購入」とありますが、無料評価版の申し込み手順です。ご安心を。

※ 手順9.のプレビュー機能申し込みは重要です。"Virtual Machines & Virtual Networks"というやつを必ず申し込んでください。

 

Windows Server 2012 の仮想マシンを作成

では、ヘッドノードとして使用する仮想マシン (VM) を作成します。

Windows Azure 管理ポータル (https://manage.windowsazure.com/) へアクセスして、画面左下の "NEW" をクリックし、 "VIRTUAL MACHINE"→"FROM GALLERY" と進んでください。

そして、"Windows Server 2012, August 2012" を選択して「→」をクリック。

image

 

仮想マシンにつける名前と、Administrator のパスワード、仮想マシンのサイズを設定します。一台のマシンでドメインコントローラーも兼ね、HPC Pack が利用する SQL Server もインストールしますので、サイズは M 以上がおすすめです。この例では L サイズを指定しています。

image

 

"VM Mode" なる設定画面へ移ります。

まず、"STANDALONE VIRTUAL MACHINE" か、"CONNECT TO EXISTING VIRTUAL MACHINE"  の選択。今回はお試しで一台だけ作りますから、 "STANDALONE VIRTUAL MACHINE" を選びます。

次に、"DNS NAME"です。 さっきの画面でVMに名前つけたのに、こりゃなんだと思われるでしょう。 Windows Azure ではインターネットからのアクセスに対する負荷分散機構が自動的に用意されます。そのために「n台のサーバーを束ねたファームに対する、代表アドレス」が必要で、この DNS NAME がそれです。今回は一台だけですが、これも「サーバーファームの一台目」なので DNS NAME は必要です。なお、出来上がった仮想マシンに対してリモート デスクトップ接続をする際には、このアドレスに対して接続することになります。

"STORAGE ACCOUNT" というのは、仮想マシンの仮想ハードディスクファイル (VHD) ファイルを格納するための領域を指定する項目です。既存のストレージアカウントがある場合はそれを指定しても良いですし、まだストレージアカウントがない場合はデフォルト値の "Use Automatically Generated Storage Account" のままにしておいてください。自動的に作成されます。

”REGION/AFFINITY GROUP/VIRTUAL NETWORK” は、仮想マシンを配置する場所の指定です。”EAST ASIA” あたりがネットワーク的に近くて良いと思います。

”SUBSCRIPTION” 項目は、サブスクリプションを複数使い分けていない限り、変更不要(不能)です。

image

 

管理ポータルの "VIRTUAL MACHINES" を見ると、今作成した VM の状態を確認できます。"STATUS" 欄が "Running" になるまで少々お待ちください。

image

 

いざログオン

では、出来上がった Windows Server 2012 マシンへログオンしてみましょう。管理ポータルで仮想マシンを選択して、下の黒帯の "CONNECT" をクリック。

image

リモートデスクトップ用の接続ファイル(.rdp)が降ってくるので、開いてください。なお、画面サイズの調節やローカルドライブのリダイレクトなど、設定を調節したい場合はいったん保存してから編集してください。

image

 

パスワードを聞かれます。仮想マシンを作成するときに指定したパスワードを入力してください。

image

 

こんな風に聞かれますが、これは仮想マシンが提示してくる証明書がオレオレだからです。「はい」でお願いします。

image

 

ログオンできたー

image

※ ちなみに、リモート デスクトップは「全画面」で接続することをおススメします。"Windows + R" とか "Windows + X" のような便利ショートカットが使いやすいので。(全画面表示でなければ、Windows キーは「手前」の Windows に取られちゃう)

 

ドメインコントローラーにする

Windows HPC のクラスターを作るには Active Directory ドメインが必須です。まずはこの Azure 上の仮想マシンをドメインコントローラーに仕立てます。

なお、Azure 上に作成された仮想マシンは、同じ DNS 名を共有する仮想マシン達の間に閉じた専用のネットワークに配置されています。「よその人」とは全く別の空間にいますから、ドメインコントローラなんか立てて大丈夫?といった心配は無用です。

では、こいつをドメインコントローラーに仕立てるべく、いつも通り dcpromo しましょうか。まずは Windows + X を押してください。左下に出てきたメニューから "Command Prompt (Admin)" を選択します。
# このメニュー、便利でしょ?

image

 

秘技 dcpromo!

image

な、なにぃ! dcpromo が効かない。だと・・・

 

PowerShell で Active Directory Domain Service を追加

はい。残念ながら dcpromo は退役しました。しかし、Windows Server 2012 の大きな特徴が、なんでも PowerShell でできるようになったことです。ADDS 機能の追加も PowerShell でやってしまいましょう。タスクバーのアイコンをクリックして Power Shell を起動し、次のコマンドを実行してください。

こんな感じ。 

PS C:\Users\Administrator> Add-WindowsFeature -name ad-domain-services -IncludeManagementTools

Success Restart Needed Exit Code Feature Result
------- -------------- --------- --------------
True No Success {Active Directory Domain Services, Group P...

PS C:\Users\Administrator>

では、次にドメインを (新規なのでフォレストごと) 作りましょう。

 

PowerShell で新たなフォレストを作る

Install-ADDSForest コマンドレットを使います。今回、ドメイン名は "hpc2012.local" 、機能レベルは最新の Windows Server 2012 で作ってみました。

  Install-ADDSForest -CreateDnsDelegation:$false -DomainMode "Win2012" -DomainName "hpc2012.local" -DomainNetbiosName "HPC2012" -ForestMode "Win2012" -InstallDns:$true -NoRebootOnCompletion:$false -Force:$true

最初のドメインの作成と、DNS の構成が行われた後、自動的に Windows が再起動されます。ここでリモート デスクトップ接続が切れてしまいますので、しばらくたってから再度接続してください。

 

HPC Pack 2012 をダウンロード

さて、ドメインコントローラーとしての構成が終わったので、いよいよ HPC Pack 2012 をインストールしてクラスターを作成できるわけですが、そのためには Azure 上で稼働しているこの仮想マシンに、何とかして HPC Pack 2012 のインストールモジュールを持ってこなければなりません。方法はいくつかありますが、ここでは単純に Azure 上の仮想マシンから Microsoft Connect サイトへアクセスして、ダウンロードすることにします。

ダウンロード手順は先日のブログに書いた通りです。どこか適当なフォルダへダウンロードしてください。

私はこんな感じにしました。

PS C:\Users\Administrator\Downloads\HPC Pack 2012 Beta> Get-ChildItem |ft Name,Length -AutoSize

Name Length
---- ------
easytuner-beta.zip 4021
HPC Pack 2012 Beta SDK.zip 1327751
HPC Pack 2012 Beta.zip 1825230719
Release Notes for Microsoft HPC Pack 2012 Beta.docx 63832
SchedulerWhitepaper.beta.docx.zip 723361
What's New in Microsoft HPC Pack 2012 Beta.docx 66252

いくつかファイルがありますが、HPC Pack 2012 の本体は、ひときわサイズが大きい "HPC Pack 2012 Beta.zip" というやつです。

これをどこか適当なところへ展開してください。私は C:\tmp\HPC Pack 2012 Beta にしました。

こんな感じ。

 

PS C:\tmp\HPC Pack 2012 Beta> ls

    Directory: C:\tmp\HPC Pack 2012 Beta

Mode LastWriteTime Length Name
---- ------------- ------ ----
d---- 9/17/2012 2:45 PM amd64
d---- 9/5/2012 9:18 AM DotNetFramework
d---- 9/17/2012 2:46 PM en-us
d---- 9/17/2012 2:48 PM i386
d---- 9/17/2012 2:49 PM ja-jp
d---- 9/17/2012 2:50 PM ReportViewer
d-r-- 9/17/2012 2:50 PM setup
d---- 9/17/2012 2:50 PM zh-cn
-ar-- 8/23/2012 1:12 PM 29 autorun.inf
-ar-- 8/23/2012 1:12 PM 1572713 HPCGettingStarted.rtf
-ar-- 8/23/2012 1:12 PM 1768875 HPCGettingStarted_chs.rtf
-ar-- 8/23/2012 1:12 PM 1981324 HPCGettingStarted_jpn.rtf
-a--- 9/4/2012 11:57 AM 101104 setup.exe
-a--- 9/4/2012 11:57 AM 87280 UpgradeEval.exe
 

いざインストール

さて、賢明なる読者諸兄はすでにお気づきの通り、 AD DS の追加あたりからコマンドライン作業が増えてきました。ええ、スクリーンショットを取って貼るのがメンドーになってきたんです。というわけで HPC Pack 2012 のインストール(ヘッドノードの構築)もコマンド一発で済ませてしまいましょう。

これ。

PS C:\tmp\HPC Pack 2012 Beta> .\setup.exe -unattend -headnode

 

ここから、しばらく時間がかかります。現在の Windows Azure VM は、プレビュー期間中ということもあってちょっとディスクが遅いのです。

こんなのが出てきたら、もう一息です。

image

完了したら、次のようにしてインストールされたモジュールを確認してください。 4.0.3710.0 というのが、v4 Beta のバージョン番号です。

PS C:\tmp\HPC Pack 2012 Beta> gwmi -class win32_product | ?{$_.Name -match "HPC"} | ft Name, Version

Name Version
---- -------
Microsoft HPC Pack 2012 MS-MPI Redistributable Pack 4.0.3710.0
Microsoft HPC Pack 2012 Client Components 4.0.3710.0
Microsoft HPC Pack 2012 Server Components 4.0.3710.0
Microsoft HPC Pack 2012 Services for Excel 2010 4.0.3710.0

 

スタート画面を開いてみると、 HPC Cluster Manager, HPC Job Manager などが確認できます。Cluster Manager を起動してみましょう。

image

 

おおっと!画像が 2008 R2 のままですね。まだベータなので許してください。

image

 

そして、これが v4 のクラスターマネージャーです。ぱっと見はあんまり変わってないですね・・・

image

 

最低限の初期設定

初期構成タスク (Required Deployment Tasks) をやっつけないと、最初の画面から一歩も進めないので、ここはささっとクリアしてしまいましょう。

ネットワーク構成 (Configure your network)

今のところ、 Windows Azure VM は複数のネットワークに足を出すことができません。必然的にトポロジ 5になります。

image

次の画面もネットワークが一つしかないので迷いようがありません。

image

 

ファイアウォール設定もデフォルトで。

image

 

インストール資格情報 (Provide installation Credentials)

ドメインの Administrator を設定してみました。

image

 

新規ノードの命名規則 (Configure the naming of new nodes)

これはまぁ、適当に。

image

 

ノードテンプレートの作成(Create a node template)

これも、とりあえず OS なしの計算ノードテンプレートを一つ作っておきます。何か作らないと先に進めないので・・・

image

 

準備完了

これで、ようやくクラスター マネージャーが使えるようになりました。いろいろ試す準備は完了というところです。

image

 

次回は Windows Azure の Worker ロールを計算ノードとして追加する方法をお伝えしようと思います。

 

※ 重要な注意事項: インストール終わってからこんなこと書くのもなんですが、 Windows Azure VM 上にヘッドノードを作るこの構成は、 HPC Pack 2012 のリリース時点でサポートされるかどうか、現時点ではわかりません。あくまで「試しに使ってみる」という形でお願いします。なお、 Windows Azure VM 上でサポートされる製品の一覧は、KB2721672 にまとめられていますので、ご参照ください。

[2013-02-08 更新] HPC Pack 2012 正式版が、2012年の12月にリリースされました。そして、Windows Azure VM 上のヘッドノードは正式サポート構成となりました!こちらもご覧ください → 「HPC Pack 2012 (=v4) 出てます!

 

関連情報

HPC Pack 2012 ベータ版をお試しください

HPC Pack 2012 Beta を試すには? - Microsoft Connect サイト

Microsoft server software support for Windows Azure Virtual Machines (KB2721672)

 

__END__