<?xml version="1.0" encoding="utf-8"?>
<rss xmlns:atom="https://www.w3.org/2005/Atom" xmlns:sy="https://purl.org/rss/1.0/modules/syndication/" xmlns:dc="https://purl.org/dc/elements/1.1/" xmlns:content="https://purl.org/rss/1.0/modules/content/" xmlns:wfw="https://wellformedweb.org/CommentAPI/" xmlns:slash="https://purl.org/rss/1.0/modules/slash/"
  version="2.0">
  <channel>
    <title>More Than One Way</title>
    <atom:link
      href="https://docs.microsoft.com/archive/blogs/ksasaki/feed.xml"
      rel="self"
      type="application/rss+xml" />
    <link>https://docs.microsoft.com/archive/blogs/ksasaki/feed.xml</link>
    <description>HPC, クラウドコンピューティング, 仮想化テクノロジを中心に、マイクロソフトの技術的側面をお伝えします</description>
    <lastBuildDate>Fri, 04 Mar 2016 15:05:58 GMT</lastBuildDate>
    <language>en-US</language>
    <sy:updatePeriod>hourly</sy:updatePeriod>
    <sy:updateFrequency>1</sy:updateFrequency>
    <item>
      <title>AzureにGPUインスタンス登場！ A8-A11の値下げやDV2も来たよ！</title>
      <link>https://docs.microsoft.com/archive/blogs/ksasaki/azuregpu-a8-a11dv2</link>
      <pubDate>Tue, 29 Sep 2015 09:05:26 GMT</pubDate>
      <dc:creator><![CDATA[kuninobu]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.technet.microsoft.com/ksasaki/2015/09/29/azuregpu-a8-a11dv2/</guid>
      <description><![CDATA[Azurecon 2015  このイベント、日本時間では深夜1時開始となかなかつらい時間帯だったのですが、一張羅のHPC Azure...]]></description>
      <content:encoded><![CDATA[<h2>Azurecon 2015 </h2> <p><a href="https://azure.microsoft.com/en-us/azurecon/">このイベント</a>、日本時間では深夜1時開始となかなかつらい時間帯だったのですが、一張羅のHPC Azure Tシャツに着替えて都内某所のパブリック・ビューイング会場へと乗り込みましたよっと。</p> <p>いろいろな新サービスの発表がありましたが、個人的にこれだ！と思ったものをピックアップして紹介します。網羅的な内容は、Jason Zanderのブログ↓などをご覧ください。<br /><a href="https://azure.microsoft.com/en-us/blog/building-the-intelligent-cloud-announcing-new-azure-innovations-to-transform-business/">Building the Intelligent Cloud: Announcing New Azure Innovations to Transform Business</a></p> <h2></h2> <h2>&nbsp;</h2> <h2>GPUインスタンス!</h2> <p>これですよ、これ。このためにHPC Azure Tシャツを着てきたのです。皆さんから多くの要望をいただいていた、GPUインスタンスがAzureにやってきます。<br />その名も<strong><font size="6">「Nシリーズ」</font></strong>です。きっとNVIDIAの”N”ですね。</p> <p>このNシリーズに関しては、Jason ZanderのブログよりもNVIDIAさんの発表のほうに少し詳しく書かかれていますので、そちらを見てみましょう。</p> <p><a href="https://nvidianews.nvidia.com/news/nvidia-gpus-to-accelerate-microsoft-azure">NVIDIA GPUs to Accelerate Microsoft Azure</a></p> <p>これによると、</p> <blockquote> <p>Azure is the first cloud computing platform to provide NVIDIA GRID 2.0 virtualized graphics for enterprise customers.<br />AzureはGPU仮想化ソリューションであるNVIDIA GRID 2.0を企業向けに提供する最初のクラウドコンピューティングプラットフォームです。</p></blockquote> <p>とあるので、RemoteFXで活用できるような「グラフィックのためのGPU」（って変な表現ですが）のインスタンスが提供されるようです。</p> <p>一方、こうも書かれています。</p> <blockquote> <p>Azure will also offer customers supercomputing-class performance, with the addition of the NVIDIA Tesla® Accelerated Computing Platform&#39;s flagship Tesla K80 GPU accelerators, for the most computationally demanding data center and high performance computing (HPC) applications.<br />AzureはTesla GPUの最高峰であるK80による、スーパーコンピューター級のパフォーマンスを、大きな計算能力を必要とするデータセンターや、HPCアプリケーション向けに提供するでしょう。</p></blockquote> <p>つまり、「NVIDA GRID 2.0のvGPUインスタンス」と「計算のためにTesla K80を積んだGPGPUインスタンス」という二つの側面を、この新しいNシリーズは持っているようです。</p> <p>と、ここまで書いたところでわかりやすいスライドが出てきましたよっと。</p> <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/nseries_1D0B4E29.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/nseries_5F00_1D0B4E29.png"><img title="nseries" style="border-left-width:0px;border-right-width:0px;border-bottom-width:0px;float:none;margin-left:auto;display:block;border-top-width:0px;margin-right:auto;" border="0" alt="nseries" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/nseries_thumb_554C55F2.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/nseries_5F00_thumb_5F00_554C55F2.png" width="420" height="202" /></a></p> <p align="center"><font size="5">Tesla M60 と K80 が使えます！</font></p> <p>また、このスライドにあるように、RDMAによる高速ネットワークが搭載されているようです。おそらくA8/A9のようにInfiniBandがついているものと思われます。GPUノードでクラスタ組んでRDMA over InfiniBandで高速並列計算ができるわけですね。これは楽しみです！</p> <p><strong><font color="#ff0000">[更新] </font></strong>朝起きたらインスタンスの情報が出てたことを知りました。じゃじゃーん。</p> <p><a href="https://channel9.msdn.com/Events/Microsoft-Azure/AzureCon-2015/ACON303"><img title="nseries2" style="border-left-width:0px;border-right-width:0px;border-bottom-width:0px;float:none;margin-left:auto;display:block;border-top-width:0px;margin-right:auto;" border="0" alt="nseries2" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/nseries2_7B81CF16.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/nseries2_5F00_7B81CF16.png" width="464" height="225" /></a><a href="https://azure.microsoft.com/en-us/documentation/videos/azurecon-2015-applications-that-scale-using-gpu-compute/">https://azure.microsoft.com/en-us/documentation/videos/azurecon-2015-applications-that-scale-using-gpu-compute/</a></p> <p>すべてCPUはE5-2690 v3.Haswellですねー。GPUはN1がM60、それ以外はK80です。そして、N21にはInfiniBandがついてると。A8/A9はQDRだったので、ここも進化してると良いですね！</p> <p>&nbsp;</p> <h2>既存のHPCインスタンス、値下げ！</h2> <p>現在Azureには下図のような4種類のHPCインスタンスがあるわけですが、これらを2015年10月1日より60%(!)値下げします。詳しくは10/1以降、<a href="https://azure.microsoft.com/en-us/pricing/details/virtual-machines/">価格のページ</a>をご覧ください。<br />(9/30日時点では、まだ新価格が表示されていません)</p> <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/hpc_103388BC.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/hpc_5F00_103388BC.png"><img title="hpc" style="border-left-width:0px;border-right-width:0px;border-bottom-width:0px;float:none;margin-left:auto;display:block;border-top-width:0px;margin-right:auto;" border="0" alt="hpc" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/hpc_thumb_47106DB3.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/hpc_5F00_thumb_5F00_47106DB3.png" width="330" height="187" /></a> </p> <h2>Dシリーズのversion 2が登場！</h2> <p>昨年登場して好評をいただいている D シリーズの次世代バージョンが登場です。DのVersion 2でDV2です。Dシリーズとの大きな違いは、CPUの世代。HaswellのE5-2673 v3が載っています。クロックは2.4GHzで、3.2GHzまでターボブーストします。用途によってはA10/A11より速そうですね。</p> <p>こちらはすでに<a href="https://azure.microsoft.com/en-us/pricing/details/virtual-machines/">価格のページ</a>に反映されています。「D5 v2」というやつ以外は対応するDシリーズのインスタンスと同じコア数、メモリサイズです。D5の「16コア、56GBメモリ」というのはなかなかちょうどよいサイズですねー</p> <p>&nbsp;</p> <h2>File StorageがSMB3.0をサポートしてGA!</h2> <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/files_76CE1632.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/files_5F00_76CE1632.png"><img title="files" style="border-left-width:0px;border-right-width:0px;border-bottom-width:0px;float:none;margin-left:auto;display:block;border-top-width:0px;margin-right:auto;" border="0" alt="files" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/files_thumb_58835F3C.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/files_5F00_thumb_5F00_58835F3C.png" width="408" height="196" /></a> </p> <p>「AzureのストレージがSMBをしゃべる」サービスであるところのFile StorageがGAしました。SMB 3.0をサポートします。そして、今までは「File Storageのストレージアカウントと同じリージョンの仮想マシンからのみSMBアクセス可能」だったのが、オンプレからもアクセス可能に変わったようです。より実用的になりますよね。</p> <p>SMBが3.0になったということは、 クラスタの共有ストレージとして使えるようになったのかな？（つまり、SQL Server AlwaysOn FCIが構成可能になったのかな？）この点についてJason Zanderのセッションでは言及がなかった ので、今後確認しようと思います。</p> <p>&nbsp;</p> <h2></h2> <h2>まとめ</h2> <p><font size="4">Nシリーズ、待ってた。ようこそ！</font></p> <p>&nbsp;</p> <h2>関連情報</h2> <p><a href="https://azure.microsoft.com/en-us/azurecon/">Azurecon 2015</a>&nbsp;</p> <p><a href="https://azure.microsoft.com/en-us/blog/building-the-intelligent-cloud-announcing-new-azure-innovations-to-transform-business/">Building the Intelligent Cloud: Announcing New Azure Innovations to Transform Business</a></p> <p><a href="https://nvidianews.nvidia.com/news/nvidia-gpus-to-accelerate-microsoft-azure">NVIDIA GPUs to Accelerate Microsoft Azure</a></p> <p><a href="https://azure.microsoft.com/en-us/pricing/details/virtual-machines/">Virtual Machines Pricing</a></p> <p>&nbsp;</p> <p>__END__</p>]]></content:encoded>
    </item>
    <item>
      <title>YAPC::Asia Tokyo 2015 に参加してきた話</title>
      <link>https://docs.microsoft.com/archive/blogs/ksasaki/yapcasia-tokyo-2015</link>
      <pubDate>Tue, 25 Aug 2015 19:15:42 GMT</pubDate>
      <dc:creator><![CDATA[kuninobu]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.technet.microsoft.com/ksasaki/2015/08/25/yapcasia-tokyo-2015/</guid>
      <description><![CDATA[YAPC::Asia Tokyo 2015 とそのハッカソンに参加してきました！実は、一昨年の YAPC::Asia Tokyo 2013 のスポンサーセッションで Azure...]]></description>
      <content:encoded><![CDATA[<p><a href="https://yapcasia.org/2015/">YAPC::Asia Tokyo 2015</a> とそのハッカソンに参加してきました！<br />実は、一昨年の <a href="https://www.slideshare.net/SaSakiKuninobu/yapcasia-tokyo-2013">YAPC::Asia Tokyo 2013 のスポンサーセッション</a>で Azure の紹介(に名を借りた自己紹介)をしたことがあるんですが、個人参加は今回が初めてです。</p> <p>なにせ今年でいったんおしまい、という話だったので「これは最後に行っておかねば」と、個人スポンサーにもなってみました。YAPC::AsiaのTシャツとパーカーとタンブラーカッコいいぜ！</p> <p>正直に言って、私にとってYAPC::Asiaはわりとアウェイな世界。多少なりとも面識ある人は同じ会社の @myfinder さんと TDの @repeatedly, @tagomoris 両氏ぐらいでしたが、しかしとても楽しい空間でした。トークを聞きながら Twitter の #yapcasia で実況ツイートを追っかけて、ところどころ自分もコメントしてるとだんだんアウェイ感薄れてきましたよ。</p> <p>というわけで参加したトークは以下の通りです。(1日目は参加できなかったので、土曜日のトークのみ)</p> <p>&nbsp;</p> <h2>1時間目: @kazunori_279 さんの <a href="https://yapcasia.org/2015/talk/show/c5ea5428-fac9-11e4-88c1-8ab37d574c3a">Deep Dive into the &quot;Out of place Artifacts&quot; of Google Cloud Platform</a></h2> <p>この謎技術の話はいつ聞いても面白い。Azureのデータセンターも結構頑張ってるはずなんですが、Googleのはホントに（社畜的に自粛）</p> <p>そういえば、トーク中<br /><strong>「他社のロードバランサは暖機の申請が必要だったりしますがGoogleのは不要です！」<br /></strong>という話がありましたが、Azureのも暖機は不要ですよ！どんと来い！というのを呟いたりしました。</p> <p><a href="https://twitter.com/ksasakims/status/634902336377192448"><img title="image" style="border-left-width:0px;border-right-width:0px;border-bottom-width:0px;display:inline;border-top-width:0px;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_25946593.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_25946593.png" width="244" height="160" /></a>&nbsp;<a href="https://twitter.com/ksasakims/status/634902336377192448">https://twitter.com/ksasakims/status/634902336377192448</a></p> <p>「暖気」って漢字間違ってしまった恥ずかしいわい。</p> <p>あ、こちらでさらに解説されてますね。<br /><a href="https://qiita.com/kazunori279/items/3ce0ba40e83c8cc6e580">YAPC Asia 2015「Google Cloud Platformの謎テクノロジーを掘り下げる」のまとめ</a></p> <p>&nbsp;</p> <h2>2時間目: @myfinder さんの <a href="https://yapcasia.org/2015/talk/show/39a15ad4-0ff5-11e5-a984-d7f07d574c3a">Discover the Microsoft Azure</a>&nbsp;</h2> <p>いつの間にかマイクロソフト社員になってた @myfinder さんによる Microsoft Azure の紹介。これは応援せねばと駆けつけました。Stream AnalyticsやPower BIのような分析系テクノロジ推し。さすが目の付け所がシャープ！です。 <a href="https://doc.co/SosnKc">資料は docs.com にあります。</a></p> <p>本人のブログ: <a href="https://myfinder.hatenablog.com/entry/2015/08/24/131415">YAPC::Asia 2015でAzureの話をした件とハッカソンの運営をした件</a></p> <p>なお、このセッションのQ&amp;Aに割り込んで<br /><strong>「AzureのドキュメントはGitHubで管理されてるから間違ってたらPRください」<br /></strong>と言ったのが私です。<a href="https://github.com/Azure/azure-content">ここですここ。</a></p> <p>&nbsp;</p> <h2>3時間目: @repeatedly さんの <a href="https://yapcasia.org/2015/talk/show/dd8ce20e-fad2-11e4-b6e7-8ab37d574c3a">Technologies for Data Analytics Platform</a></h2> <p>Treasure Data の&nbsp; @repeatedly さんによるデータ分析系テクノロジ・サービスのハイレベルな紹介。とても分かりやすくて勉強になりました。ちらっと Azure にも触れてくださって感謝であります！</p> <p><a href="https://www.slideshare.net/repeatedly/technologies-for-data-analytics-platform"><img title="image" style="border-left-width:0px;border-right-width:0px;border-bottom-width:0px;display:inline;border-top-width:0px;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_30C0808E.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_30C0808E.png" width="244" height="204" /></a>&nbsp;<a href="https://www.slideshare.net/repeatedly/technologies-for-data-analytics-platform">https://www.slideshare.net/repeatedly/technologies-for-data-analytics-platform</a></p> <p>そして、「分散キューは Apache Kafka 以外はだいたい淘汰された」というシーンで泣きながらツイートしたのがこちら。</p> <p><a href="https://twitter.com/ksasakims/status/634952026879725568"><img title="image" style="border-left-width:0px;border-right-width:0px;border-bottom-width:0px;display:inline;border-top-width:0px;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_46AC838F.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_46AC838F.png" width="244" height="234" /></a>&nbsp;<a href="https://twitter.com/ksasakims/status/634952026879725568">https://twitter.com/ksasakims/status/634952026879725568</a></p> <p>天下の @oza_x86 さんがフォローしてくださった。ありがとうございます。 </p> <p>&nbsp;</p> <h2>5時間目、@tsubasaxZZZ さんの <a href="https://yapcasia.org/2015/talk/show/0b669ad8-f616-11e4-90fb-8ab37d574c3a">About Windows for OSS Enginner</a></h2> <p>なんとも珍しい Windows の紹介セッションを発見したので参加してみると、なんとスピーカーは個人参加している弊社のエンジニアでしたよっと。There is more than one way to work at Microsoft! ですな。<br />「UNIXならこうやる操作、Windowsではこう」とマッピングする形での、わかりやすい説明でした。</p> <p>伝統的な UNIX がデバイスやソケットも「ファイル」の形に抽象化することでそれらを統一的に扱える仕組みを提供しているように、Windows NT&nbsp; (今の Windows はすべて NT です)ではあらゆるものが「オブジェクト」という形で統一管理されているのですが、そのオブジェクトのエクスプローラもあるんですよ、とか Windows Vista世代からイベントログの仕組みは大幅に刷新されたんですよ、などと Twitter で加勢しながら聞いてました。</p> <p><a href="https://twitter.com/ksasakims/status/634983972045459456"><img title="image" style="border-left-width:0px;border-right-width:0px;border-bottom-width:0px;display:inline;border-top-width:0px;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_161905D7.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_161905D7.png" width="244" height="147" /></a> <a href="https://twitter.com/ksasakims/status/634983972045459456">https://twitter.com/ksasakims/status/634983972045459456</a></p> <p></p> <p><a href="https://twitter.com/ksasakims/status/634983063815081984"><img title="image" style="border-left-width:0px;border-right-width:0px;border-bottom-width:0px;display:inline;border-top-width:0px;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_73C4010E.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_73C4010E.png" width="244" height="125" /></a>&nbsp;<a href="https://twitter.com/ksasakims/status/634983063815081984">https://twitter.com/ksasakims/status/634983063815081984</a></p> <p>何でもありで楽しいな YAPC は！</p> <p>&nbsp;</p> <h2>日曜日はハッカソン</h2> <p>@myfinder さんが暗躍したおかげで、今年のハッカソンはなんと日本マイクロソフト品川本社のセミナールームで開催されました。こりゃー行くしかない。プログラムあんまり書けないけど…というわけで行ってきました。</p> <p>さて、必ずしも Perl 感ないYAPCですが、せっかくなので Perl で何か書こう。そうだ、昨日つぶやいた Event Hubs と Storm のあたりがいいな、</p> <p><strong>「Azure Event Hubs からデータをガンガン読み取って、それを HDInsight (Azure 上の Hadoop)上の Apache Storm で動かした Perl トポロジで処理する！ 」</strong></p> <p>というのをやってみよう！と思ったわけです。そもそも Perl で Storm のトポロジを書けるのか全然わからなかったので、その調査から始めました。</p> <p>あ、その前に Storm 界の登場人物を整理しておきましょう。</p> <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_355E3D5B.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_355E3D5B.png"><img title="image" style="border-left-width:0px;border-right-width:0px;border-bottom-width:0px;display:inline;border-top-width:0px;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_thumb_591C8657.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_thumb_5F00_591C8657.png" width="244" height="139" /></a> </p> <p>Spout (蛇口) を何らかのデータソースにぶすっと刺してやります。そこから流れ出てくるデータの粒が “Tuple” で、Tuple を処理するプログラムロジックが “Bolt” です。 Bolt は複数定義して多段に構成できますよ。</p> <p>これら、Spout と一連の Bolt の組み合わせが「Topology」と呼ばれるもので、トポロジを Storm クラスタにデプロイしてスタートすることで Storm のメッセージ処理が始まります。</p> <p>さて、Perl で Storm のトポロジを書くには、、、と調査を始めたとこり、ちゃんと CPAN にあるじゃないですか、こういうのが！</p> <p>IO::Storm - IO::Storm allows you to write Bolts and Spouts for Storm in Perl.<br /><a title="https://metacpan.org/pod/IO::Storm" href="https://metacpan.org/pod/IO::Storm">https://metacpan.org/pod/IO::Storm</a></p> <p>これ使えば簡単じゃん！と安心したのですが、そう簡単にはいかないのでした。今回の場合、Azure の Event Hubs からデータを読みたかったのですが、 Event Hubsに対応した Spout は Java で書かれたものしかないんですよね → <a href="https://github.com/apache/storm/tree/master/external/storm-eventhubs">storm-eventhubs</a></p> <p>Java の Spout と Perl の Bolt を組み合わせてハイブリッドなトポロジを作る方法がよくわからず、情けない私はここでギブアップしました。そのうち社内ハッカソンでリベンジしてやる…</p> <p>&nbsp;</p> <h2></h2> <h2>また参加したい！</h2> <p>そんなこんなで YAPC::Asia Tokyo 2015 最高でした。今後、少なくとも YAPC という名前では開催されなくなるのだと思いますが、またぜひ参加したいなと思います。</p> <p>__END__</p>]]></content:encoded>
    </item>
    <item>
      <title>HDInsight のクラスタ作成時にスクリプトを実行する “Script Action”</title>
      <link>https://docs.microsoft.com/archive/blogs/ksasaki/hdinsight-script-action</link>
      <pubDate>Mon, 01 Dec 2014 01:15:13 GMT</pubDate>
      <dc:creator><![CDATA[ksasaki2]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.technet.microsoft.com/ksasaki/2014/12/01/hdinsight-script-action/</guid>
      <description><![CDATA[autoexec.bat あるいは /etc/rc 的なやつ HDInsight...]]></description>
      <content:encoded><![CDATA[<h2></h2> <h2>autoexec.bat あるいは /etc/rc 的なやつ</h2> <p>HDInsight は「ジョブを繰り返し実行する間だけクラスタを動かしておき、使わなくなればクラスタを削除」という使い方が一般的です。「次回も使う(かもしれない)からとっておきたいデータ」はデフォルトファイルシステムである BLOB ストレージへ置いておくわけです。</p> <p>こういう使い方をする以上、頻繁に「クラスタの作成」を繰り返すことになりますが、そうなると「クラスタ作成時に行う環境設定処理を自動化」したくなるのが人情というものです。最近追加された ”Script Action” で、これが可能になりました。</p> <p>&nbsp;</p> <h2>Script Action を試してみる</h2> <p>最近の Azure 新機能の例にもれず、Script Action も現時点(2014/12/01)では管理ポータルから設定できません。Azure PowerShell&nbsp; を使う必要があります。</p> <p>具体的には、下記のように <font face="Consolas">New-AzureHDInsightClusterConfig</font> の出力を <font face="Consolas">Add-AzureHDInsightScriptAction</font> にパイプして、スクリプトのURIなどを指定します。</p> <p><font face="Consolas">New-AzureHDInsightClusterConfig &lt;ゴニョゴニョ&gt; |<br />Add-AzureHDInsightScriptAction `<br />-Name <font color="#ff0000">スクリプト名</font> `<br />-ClusterRoleCollection <font color="#ff0000">実行するノードの指定 (HeadNode|WorkerNode|HeadNode,WorkerNode)</font>`<br />-Uri <font color="#ff0000">スクリプトのURI</font></font></p> <p>-Name はスクリプト定義に対して付ける名前です。スクリプトファイル名ではありません。処理の内容が分かりやすい名前を付けておくのがよいと思います。  <p>-ClusterRoleCollection には、スクリプトを実行したいノードの種別を指定します。”HeadNode”はHadoopのネームノード(HA構成なので2台)、DataNodeはデータノード達です。<br />※ ヘッドノードとデータノードの両方を指定するときは、書き方に注意してください。</p> <ol> <li>○ -ClusterRoleCollection HeadNode,WorkerNode  </li><li>○ –ClusterRoleCollection “HeadNode”, “WorkerNode”  </li><li><font color="#ff0000">× –ClusterRoleCollection “HeadNode,WorkerNode”</font></li></ol> <p>3番目の書き方は、“HeadNode,WorkerNode”という一つの文字列になってしまいますので、正しく解釈されません。このオプションには配列を渡す必要があるのです。</p> <p><font face="Consolas">–Uri&nbsp; </font>にスクリプトのフルパス名、というか URL を指定します。<br />https://アカウント.blob.core.windows.net/scripts/hdistartup.ps1<br />という感じで。</p> <p>スクリプトは、PowerShell で記述してどこか適当な所 (全ノードからHTTPでアクセス可能なところ) に置いておきます。HDInsight なのでデフォルトの BLOB ストレージへ置いておくのが簡単です。私は、<font face="Consolas">Set-AzureHDInsightDefaultStorage</font> で指定するストレージアカウントに、 scripts というコンテナを作成して、そこへ置いています。 内容は、たとえばこんな感じです。(実際今日試したもの)</p> <table cellspacing="0" cellpadding="2" width="400" border="1"> <tbody> <tr> <td valign="top" width="398"><font face="Consolas">setx HADOOP_OPTS &quot;-Dfile.encoding=UTF-8&quot; /M</font></td></tr></tbody></table> <p>全然 PowerShell である必要がない一行ですね…これを “hdistartup.ps1”などと名付けて BLOB ストレージへ置いておくわけです。<br />&nbsp;</p> <h2></h2> <h3>権限！</h3> <p>さて。賢明なる読者諸氏はすでにお気づきかもしれません。先ほどのスクリプト例、 setx に /M をつけて「システム環境変数」をセットしていますが、これは管理者権限が必要な操作です。  <p>HDInsight のヘッドノードへログオンできるユーザーには管理者権限が付与されず、システム環境変数の設定やシステムロケールの変更、あるいはノードの再起動など様々な操作を封じられてしまっていますが、Script Action なら管理者権限が得られるわけです。これはいろいろ応用の幅が広そうですね！  <p>&nbsp; <h3>注意点！&nbsp; </h3> <p>Script Action によって実行されるスクリプトは、Azure の Cloud Services におけるスタートアップタスクと同様に、「何度も実行される」ことがあるという点に留意してください。HDInsight のクラスタは Worker ロールの塊ですから、何らかのタイミングで reimage 処理が走り、ロールインスタンスの再作成が起こることがあります。この際、Script Action のスクリプトも再実行されるわけです。  <p>現在の状態に依存せず、何度実行しても同じ結果が得られる、 idempotent な処理を記述するように心がける必要があります。  <p>&nbsp; <h3>クラスタ作成スクリプトをどうぞ</h3> <p>さて、Azure 管理ポータルからの GUI によるクラスタ作成に比べると、 PowerShell スクリプトによる作成は若干面倒です(特に不慣れなうちは)。そこで、私が Script Action の実行を試す際に作成したクラスタ作成スクリプトを、GitHub へ置いておきました。よろしければご覧ください。  <p><a title="New-HDInsightClusterWithScriptAction.ps1" href="https://github.com/ksasagit/MoreThanOneScript/blob/master/New-HDInsightClusterWithScriptAction.ps1">New-HDInsightClusterWithScriptAction.ps1</a>  <p>Script Action 以外にも、  <ul> <li>クラスタの仮想ネットワークへの配置  </li><li>Hive/Oozie メタストアとしての SQL Database の指定</li></ul> <p>などやっておりますので、パクって使いやすいかと。</p> <p>&nbsp;</p> <h2>関連情報</h2> <p>まだ英語しかないのですが、割とわかりやすい情報がいくつか出ておりますので、ご覧下さい。</p> <p>基本的な使い方は、こちら<br /><a href="https://azure.microsoft.com/ja-jp/documentation/articles/hdinsight-hadoop-script-actions/">Script Action (Preview) Development with HDInsight</a></p> <p>Apache Spark をインストールする例！<br /><a href="https://azure.microsoft.com/ja-jp/documentation/articles/hdinsight-hadoop-spark-install/">Install and use Spark 1.0 on HDInsight clusters (Preview)</a></p> <p>そしてこちらは R をインストールする例！<br /><a href="https://azure.microsoft.com/ja-jp/documentation/articles/hdinsight-hadoop-r-scripts/">Install and use R on HDInsight Hadoop clusters (Preview)</a></p> <p>ぜひ、Script Action をご活用ください。</p> <p>__END__</p></p></p></p></p></p></p></p></p></p></p>]]></content:encoded>
    </item>
    <item>
      <title>HPC Pack 2012 R2 Update 1 Preview 登場！</title>
      <link>https://docs.microsoft.com/archive/blogs/ksasaki/hpc-pack-2012-r2-update-1-preview</link>
      <pubDate>Fri, 15 Aug 2014 09:36:18 GMT</pubDate>
      <dc:creator><![CDATA[ksasaki2]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.technet.microsoft.com/ksasaki/2014/08/15/hpc-pack-2012-r2-update-1-preview/</guid>
      <description><![CDATA[今度はイメージギャラリーにもありますよ HPC Pack 2012 R2の更新版、&quot;Update 1&quot;のプレビューが出ました。今回は、Azure...]]></description>
      <content:encoded><![CDATA[<h2>今度はイメージギャラリーにもありますよ</h2> <p>HPC Pack 2012 R2の更新版、&quot;Update 1&quot;のプレビューが出ました。今回は、Azure IaaSでのクラスタ展開に関する改良点が多いようですが、スケジューラやMPIライブラリなどのコア部分も地味に手が入っています。<br />What&#39;s Newをドキュメントから主なものを抜き書きしてみると: </p> <h3>IaaS関連</h3> <p>Azure IaaSでヘッドノードや計算ノードを作成する、「IaaSクラスタ」関連の新機能です。IaaS計算ノードは、HPC Pack的にはオンプレミスの計算ノードと同じ扱いで、ノードテンプレートもオンプレと同じ奴を使います(Azureノードテンプレートではありません)</p> <ul> <li>Azure IaaSのイメージギャラリーに HPC Pack インストール済みイメージが増えました！  <ul> <li>ヘッドノードをAzure IaaSで作成するためのイメージです。HPC PackとSQL Server 2014 Expressがインストールされています。  </li><li>イメージ名は &quot;96316178b0644ae08bc4e037635ce104__HPC-Pack-2012R2-Update1-4.3.4596.1-WS2012R2-ENU&quot;</li></ul> </li><li>HPC IaaS展開スクリプトの提供  <ul> <li>仮想ネットワーク、ストレージアカウント、クラウドサービス、ドメインコントローラ、SQL Serverデータベース等といった構成要素の作成を自動化し、手間いらずでHPC IaaSクラスターができあがっちゃうスクリプトが付いてきます。</li></ul> </li><li>HPC IaaS管理スクリプトの提供  <ul> <li>ノードの追加・削除、需要に応じた開始・停止用のPowerShellスクリプトも登場。 </li></ul></li></ul> <p></p> <h3>PaaS関連</h3> <p>「 Azureノードテンプレート」でWorkerロールのインスタンスがデプロイされる、PaaS計算ノード関連の新機能です。</p> <ul> <li>新しいロールのサイズを自動認識！  <ul> <li>これまでのHPC Packでは、Azureのインスタンスサイズ一覧を固定的に保持していました。昨年A5,A6,A7が登場したときや、今年A8,A9が追加されたとき、その時点のHPC Packはそれに対応できず、次のバージョンが出るまで新しいインスタンスを計算ノードとして選択できなかったのですが、今後はそういうことがなくなるようです。<br />※ ってことは、またインスタンスが増えるのかもしれませんね！ </li></ul> </li><li>リージョナルVNETへの対応  <ul> <li>かつて、Azureの仮想ネットワーク(VNET)は、VNET作成時に指定したアフィニティグループ内に存在するものでした。現在は、アフィニティグループではなく、リージョン全体をスコープとする仮想ネットワーク=「リージョナルVNET」が標準です。<br />しかし、現在のHPC Packでは、計算ノードを仮想ネットワークに配置する際に「計算ノードを配置するクラウドサービスと同じアフィニティグループに属する仮想ネットワーク」だけを対象とするので、リージョナルVNETは選択肢に出てこず、選ぶことができません。この点が解消されます。</li></ul> </li><li>Azure計算ノードの部分的な起動  <ul> <li>Azureノードテンプレートを使って作成したノード群を開始する際、今まではそのテンプレートで作成した全てのノード(これがAzure的には1デプロイメント)を一度に開始することしかできませんでした。  </li><li>HPC Pack 2012 R2から、「停止」に関しては1ノードずつ個別に操作できるようになりましたが、今回「開始」操作も個別に可能となりました。</li></ul></li></ul> <p>&nbsp;</p> <p></p> <h2>ダウンロード</h2> <p>まだプレビュー版なので、ダウンロードはConnectサイトから。<a href="https://connect.microsoft.com/HPC/Downloads/DownloadDetails.aspx?DownloadID=54095">https://connect.microsoft.com/HPC/Downloads/DownloadDetails.aspx?DownloadID=54095</a></p> <p>とはいえ、Azure上で試す場合は800MBもある&quot;HPCPack2012R2_Update1-Full.zip&quot;をダウンロードする必要はありません。前述の通り、今回から「HPC Packインストール済みAzure VMイメージ」がギャラリーにありますから！</p> <p>&nbsp;</p> <h2> ヘッドノードを作ってみる。</h2> <p>というわけで、早速Azure上ヘッドノードを作ってみました。ヘッドノードがドメインコントローラとデータベースサーバも兼ねるスタンドアロン構成です。管理ポータルでポチポチクリックしても良いのですが、今回はAzure PowerShellでスクリプトを作って実行してみましたよ。 <p>Azure PowerShellを使う準備が面倒！という方。そんなことないのでこちらをご覧ください↓<br /><a href="https://blogs.technet.com/b/ksasaki/archive/2013/11/04/authentication-with-waad.aspx">「Windows Azure PowerShell を使うには」とブログに書くまでもないほど簡単になってしまった話</a><br />※ なお、Azure PowerShellの最新バージョンは0.8.6です。(2014年8月17日現在)</p> <p>では、スクリプトです。前半の変数に適当な値を設定して、実行してみてください。</p> <ul>$storage = &quot;VHDを格納するストレージアカウント名&quot;<br />$imgname = &quot;96316178b0644ae08bc4e037635ce104__HPC-Pack-2012R2-Update1-4.3.4596.1-WS2012R2-ENU&quot; </ul> <blockquote> <p>$vmname&nbsp; = &quot;ヘッドノードのホスト名&quot;<br />$service = $vmname&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # 仮想マシンを配置するクラウドサービス名。ホスト名と同じである必要はない。<br />$vmsize&nbsp; = &quot;仮想マシンのサイズ&quot;&nbsp;&nbsp;&nbsp; # Large以上がオススメ  <p>$location= &quot;配置するリージョン&quot;&nbsp;&nbsp;&nbsp; # 日本(東) なら &quot;Japan East&quot;<br />$vnetname= &quot;仮想ネットワーク名&quot;<br />$subnet&nbsp; = &quot;配置するサブネット名&quot; <br />$ipaddr&nbsp; = &quot;ヘッドノードに指定する内部IPアドレス&quot;  <p>$admin&nbsp;&nbsp; = &quot;管理者ユーザー名&quot;<br />$passwd&nbsp; = &quot;パスワード&quot;  <p>New-AzureVMConfig -Name $vmname -InstanceSize $vmsize -ImageName $imgname -MediaLocation <a>https://${storage}.blob.core.windows.net/vhds/</a>${vmname}-osdisk.vhd `<br />|Add-AzureProvisioningConfig -Windows -AdminUsername $admin -Password $passwd `<br />| Set-AzureSubnet -SubnetNames $subnet `<br />| Set-AzureStaticVNetIP -IPAddress $ipaddr `<br />| New-AzureVM -ServiceName $service -VNetName $vnetname -Location $location </p></p></p></p></blockquote> <ul> <p></p></ul> <p>なお、上のスクリプトですが、</p> <ul> <li> あらかじめ、ストレージアカウントと仮想ネットワークを作っておくことが前提です。<br />※ HPC Packのドキュメントには、スタンドアロンのヘッドノードを作る際には仮想ネットワークは不要的なことが書かれており、確かになくても動くのですが、Azure IaaS上にドメインコントローラーを作る場合は仮想ネットワーク上に構築することが推奨されています。つまりドメインが必須なHPC Pack的には仮想ネットワークも必須と思ってください。</li> <li>クラウドサービスは仮想マシンと一緒に新たに作られます。</li> <li>Set-AzureStaticVNetIP でDIPを指定するのは必須ではありませんが、お勧めします。(ドメインコントローラー兼DNSサーバーにもなりますから、今後IaaSノードを追加したときなんかにアドレスが変わると困ります)</li></ul> <p>10分前後でヘッドノードのできあがり。ここまでは通常のAzure仮想マシンの作成と何も変わらないのですが、便利になったのはここからです。ヘッドノードにログオンして、インストール済みのソフトウェアを一覧してみましょう。</p> <blockquote> <p><font face="consolas">PS C:\&gt; Get-WmiObject win32_product | sort name | ft Name,Version </font></p> <p><font face="consolas">Name&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Version<br />----&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; -------<br />Microsoft HPC Pack 2012 R2 Client Components&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 4.3.4596.0<br />Microsoft HPC Pack 2012 R2 Server Components&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 4.3.4596.0<br />Microsoft HPC Pack 2012 R2 Services for Excel 2010&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 4.3.4596.0<br />Microsoft MPI (5.0.12435.2)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 5.0.12435.2<br />Microsoft ODBC Driver 11 for SQL Server&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 12.0.2000.8<br />Microsoft ReportViewer 2010 SP1 Redistributable&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 10.0.40219<br />Microsoft SQL Server 2008 Setup Support Files&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 10.3.5500.0<br />Microsoft SQL Server 2012 Native Client&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 11.0.2100.60<br />Microsoft SQL Server 2014 RsFx Driver&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 12.0.2000.8<br />Microsoft SQL Server 2014 Setup (English)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 12.0.2000.8<br />Microsoft SQL Server 2014 Transact-SQL ScriptDom&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 12.0.2000.8<br />Microsoft SQL Server Compact 4.0 SP1 x64 ENU&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 4.0.8876.1<br />Microsoft Visual C++ 2010&nbsp; x64 Redistributable - 10.0.40219 10.0.40219<br />Microsoft Visual C++ 2010&nbsp; x86 Redistributable - 10.0.40219 10.0.40219<br />Microsoft VSS Writer for SQL Server 2014&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 12.0.2000.8<br />SQL Server 2014 Common Files&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 12.0.2000.8<br />SQL Server 2014 Common Files&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 12.0.2000.8<br />SQL Server 2014 Database Engine Services&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 12.0.2000.8<br />SQL Server 2014 Database Engine Services&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 12.0.2000.8<br />SQL Server 2014 Database Engine Shared&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 12.0.2000.8<br />SQL Server 2014 Database Engine Shared&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 12.0.2000.8<br />SQL Server Browser for SQL Server 2014&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 12.0.2000.8<br />Sql Server Customer Experience Improvement Program&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 12.0.2000.8 </font></p></blockquote> <p> HPC Pack 2012 R2一式ととSQL Server 2014が入ってますね～。MSMPIはバージョン5になってます。</p> <p>&nbsp;</p> <h2>ドメインコントローラーにする</h2> <p>しかし、この段階ではまだヘッドノードとして機能していません。HPC PackはActive Directoryドメインの存在を前提としていますが、まだそれがありません。そこで、「管理者として実行」したPowerShellで以下のコマンドを実行しました。</p> <p>まず、機能を追加して、</p> <blockquote> <p><font face="consolas">Add-WindowsFeature -name ad-domain-services -IncludeManagementTools </font></p></blockquote> <p>次にドメインを作成。ドメイン名は「hpc2012r2.local」にしてみました。パスワードは何か適当に指定してください。 <blockquote> <p><font face="consolas">Install-ADDSForest -CreateDnsDelegation:$false -DomainName &quot;hpc2012r2.local&quot; -DomainNetbiosName &quot;HPC2012R2&quot; -DomainMode &quot;Win2012R2&quot; -ForestMode &quot;Win2012R2&quot; -InstallDns:$true -NoRebootOnCompletion:$false -Force:$true -SafeModeAdministratorPassword (ConvertTo-SecureString -String パスワード -AsPlainText -Force) </font></p></blockquote> <p>&nbsp; <h2>HPC関連サービスの準備</h2> <p>ドメインコントローラーができあがり再起動が完了したら、もう一つ。HPC Packがどのデータベースを使用するのか指定するためのスクリプトを実行します。これは%CCP_HOME%\binに用意されています。</p> <p>これまた「管理者として実行」したPowerShellで以下のコマンドを。</p> <blockquote> <p><font face="consolas">&amp; $env:CCP_HOME\bin\HPCHNPrepare.ps1 –DBServerInstance “.\ComputeCluster”</font></p></blockquote> <p>すると、DB接続設定ほか諸々の処理が行われ、HPC関連サービスが起動してきます。最後に<br />&quot;HPC head node is now ready for use&quot;<br />と出てくれば準備完了です。</p> <p>アプリ一覧にHPC Cluster Managerがいますから、スタート画面やタスクバーにピン留めしてやってください。</p> <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_35CEEF0F.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_35CEEF0F.png"><img title="image" style="border-top:0px;border-right:0px;border-bottom:0px;float:none;margin-left:auto;border-left:0px;display:block;margin-right:auto;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_thumb_6C3FA111.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_thumb_5F00_6C3FA111.png" width="244" height="227" /></a> </p> <p></p> <p>起動！</p> <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_6A05A906.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_6A05A906.png"><img title="image" style="border-top:0px;border-right:0px;border-bottom:0px;float:none;margin-left:auto;border-left:0px;display:block;margin-right:auto;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_thumb_20765B09.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_thumb_5F00_20765B09.png" width="445" height="281" /></a> 見た目は今まで通りですね、何も変わっていません。</p> <p>最初に実施する必要のある構成タスクについては、以前の記事をご参照ください↓<br /><a href="https://blogs.technet.com/b/ksasaki/archive/2014/02/19/creating-cluster-with-hpc-pack-2012-r2-part2.aspx">HPC Pack 2012 R2で最新のクラスタ！InfiniBandも使えます - その2: 計算ノードデプロイ編</a></p> <p>というわけで、今回は最新のギャラリーイメージによるヘッドノードの構築手順をお伝えしました。</p> <p>&nbsp;</p> <h2></h2> <h2>次回は</h2> <p>IaaS計算ノードの追加方法や、今回提供される新機能の紹介をしたいと思います。お楽しみに！</p> <p>__END__</p></p></p></p>]]></content:encoded>
    </item>
    <item>
      <title>「Azure仮想マシンにログオンできない！」という悲劇からの生還</title>
      <link>https://docs.microsoft.com/archive/blogs/ksasaki/azure1</link>
      <pubDate>Fri, 21 Mar 2014 07:56:27 GMT</pubDate>
      <dc:creator><![CDATA[ksasaki2]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.technet.microsoft.com/ksasaki/2014/03/21/azure1/</guid>
      <description><![CDATA[この記事は、「Windows Azure アドベントカレンダー」の3月21日分です。  Azure仮想マシンの静的IPアドレス設定機能について書こうかと思ったのですが、3月10日の「Windows...]]></description>
      <content:encoded><![CDATA[<h2></h2>  <p>この記事は、「<a href="https://www.windowsazure.com/ja-jp/community/calender/">Windows Azure アドベントカレンダー</a>」の3月21日分です。</p>  <p>Azure仮想マシンの静的IPアドレス設定機能について書こうかと思ったのですが、3月10日の「<a href="https://kentablog.cluscore.com/2014/03/windows-azurestatic-ip.html">Windows Azure仮想マシンのStatic IPアドレス設定</a>」で既に詳しく解説されていますね。</p>  <p>ならば題材を変えて、最近導入された「仮想マシンのゲストエージェント」と、それを使った「リモートデスクトップ接続の再有効化およびパスワードリセット」機能について書こうと思います。</p>  <hr />  <h2>ゲストエージェントと VMAccessAgent 拡張</h2>  <p>先月(2014年2月)から、Azure で仮想マシンを作成すると、ゲストOSに「ゲストエージェント」というプログラムがインストールされるようになりました。これは、Azure仮想マシン環境において、ホスト(Hyper-Vの土台側)とゲスト(我々が利用する仮想マシン)間の緊密な連携を可能にする仕組みです。</p>  <p>ゲストエージェントを持たない旧来の仮想マシンは、そもそも「自分がAzure上で動いている仮想マシンである」ことを意識していません(認識できません、といったほうが良いかもしれません)。そのため、例えば「自分が属しているクラウドサービスの名前」とか、「自分のデプロイメントが持っているパブリックIPアドレス」といった情報を取得することはできませんでした。ゲストエージェントが導入されると、こういった「ホスト側でしか知りえない情報」をゲストへ伝えることができるようになります。</p>  <p>下の図をご覧ください。ゲストエージェントが導入された仮想マシンにログオンすると、デスクトップにこのような情報が表示されるようになっています。<a href="https://technet.microsoft.com/ja-jp/sysinternals/bb897557.aspx" target="_blank">SysinternalsのBgInfo</a> を実行したんだな、というのはすぐわかりますが、単にゲストOSでBgInfoを実行しても、こうはなりません。デプロイメントIDや、パブリックIPアドレス(VIP)は、ゲストOSだけでは取得できない情報です。</p>  <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_263F927B.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_263F927B.png"><img title="image" style="margin-right:auto;margin-left:auto;float:none;display:block;background-image:none;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_thumb_77E89D7E.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_thumb_5F00_77E89D7E.png" width="450" height="210" /></a></p>  <p>このBgInfoは、ゲストエージェントが持つプラグイン機構を利用した BGInfo 拡張(Extension)として動いています。ゲストエージェントからホスト側の情報をもらって、ゲストOSのデスクトップにそれを表示することができているわけです。</p>  <p>そして、デフォルトで登録されているプラグインがもう一つあります。それが今回のお題、 VMAccessAgent 拡張です。   <br />これは、</p>  <ol>   <li>誤ってリモートデスクトップ接続を無効化してしまうと、ログオンできなくなってしまう</li>    <li>ログオンするためのパスワードを忘れると、再設定する方法がない。</li> </ol>  <p>という、Azure仮想マシンの弱点を解消してくれるものなのです。</p>  <hr />  <h2>論より証拠</h2>  <p>では、VMAccessAgent 拡張のご利益を実感してみましょう。</p>  <ol>   <li>RDP接続をわざと無効化してAzure仮想マシンから締め出されてみる。</li>    <li>その後、VMAccessAgentに助けてもらい華麗に再度ログオンをキメる。 ※ この際ついでにパスワードも変えてみる。</li> </ol>  <p>という感じで行きましょう。</p>  <hr />  <h3>Windows Azure PowerShell 0.7.4</h3>  <p>VMAccessAgent によるリモートデスクトップ接続関連操作は、”<strong><font face="Consolas">Set-AzureVMAccessExtension</font></strong>”という新しい PowerShell コマンドレットを使って実行します。(現時点では、管理ポータルからはできません) また、このコマンドレットは、3/11にリリースされた Windows Azure PowerShell 0.7.4 が必要です。まずはこの最新のWindows Azure PowerShellをインストールしてください。</p>  <p>インストール方法は、Windows Azureアドベントカレンダーの3/19分であるこちら「<a href="https://toarudia.hatenablog.com/entry/2014/03/19/002246" target="_blank">Windows Azure PowerShell のコマンドレットを分類してみた</a>」に詳しく解説されていますので、ご覧下さい。</p>  <p>あ、もちろんこっちを見てもらっても良いんですよ。<a href="https://blogs.technet.com/b/ksasaki/archive/2013/11/04/authentication-with-waad.aspx" target="_blank">「Windows Azure PowerShell を使うには」とブログに書くまでもないほど簡単になってしまった話</a>」</p>  <p>とにかく、こういう風に 0.7.4 の Windows Azure PowerShell が入ればOKです。</p>  <p><font face="Consolas">PS C:\work&gt; Get-Module</font></p> <font face="Consolas"></font>  <p><font face="Consolas">ModuleType Version&#160;&#160;&#160; Name&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; ExportedCommands     <br /> ---------- -------&#160;&#160;&#160; ----&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; ----------------      <br /> Binary&#160;&#160;&#160;&#160; 0.7.4&#160;&#160;&#160;&#160;&#160; Azure&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; {Add-AzureAccount, Add-AzureCacheWorkerRole, Add-AzureCert...</font></p>  <hr />  <h3>リモートデスクトップを無効化して締め出されてみる</h3>  <p>まずは、Azure仮想マシンで「あえてリモートデスクトップ接続を無効化する」わけですが、間違ってゲストエージェントの入っていない仮想マシンでこれをやってしまうと大変面倒なことになるので、まずは実験対象の仮想マシンに、確実にVMAccessAgent拡張が入っているか、確認してみましょう。Windows Azure PowerShellでこのようなコマンドを実行します。</p>  <p><font size="3" face="Consolas">Get-AzureVM -ServiceName <em><font color="#ff0000">ksvm01</font></em> -Name <em><font color="#ff0000">ksvm01</font></em> | Get-AzureVMExtension      <br /></font>※ <em><font color="#ff0000">ksvm01</font></em>というのは私の環境での名前なので、適宜置き換えてください。</p>  <p>こんな風に↓ VMAccessAgentが出てくればOKです。</p>  <p><font face="Consolas">ExtensionName&#160;&#160;&#160;&#160;&#160;&#160;&#160; : BGInfo     <br /> Publisher&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; : Microsoft.Compute      <br /> Version&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; : 1.0      <br /> PrivateConfiguration :      <br /> PublicConfiguration&#160; :      <br /> ReferenceName&#160;&#160;&#160;&#160;&#160;&#160;&#160; : BGInfo      <br /> State&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; : enable</font></p> <font face="Consolas"></font>  <p><font face="Consolas"><font color="#ff0000">ExtensionName&#160;&#160;&#160;&#160;&#160;&#160;&#160; : VMAccessAgent       <br /></font> Publisher&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; : Microsoft.Compute</font>    <br /></p>  <p>では、ちょっと緊張しますが、リモートデスクトップ接続を無効にしてみようと思います。</p>  <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_179A07F8.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_179A07F8.png"><img title="image" style="margin-right:auto;margin-left:auto;float:none;display:block;background-image:none;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_thumb_746C9D45.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_thumb_5F00_746C9D45.png" width="306" height="352" /></a></p>  <p>さて、「OK」をクリックしますよ…</p>  <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_5F7DAB83.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_5F7DAB83.png"><img title="image" style="margin-right:auto;margin-left:auto;float:none;display:block;background-image:none;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_thumb_1D0D99FE.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_thumb_5F00_1D0D99FE.png" width="462" height="139" /></a></p>  <p align="center"><font color="#ff0000" size="5">ｷﾞｬｰ!</font></p>  <p>あまり心臓によくありませんね。</p>  <hr />  <h2>リモートデスクトップ接続を有効にする</h2>  <p>では、この状態を修復してみたいと思います。簡単です。VMAccessAgentがあればね。</p>  <p><font size="3" face="Consolas">Get-AzureVM -ServiceName <em><font color="#ff0000">ksvm01</font></em> -Name <font color="#ff0000"><em>ksvm01</em></font> | Set-AzureVMAccessExtension | Update-AzureVM</font></p>  <p>※ 例によって<em><font color="#ff0000">ksvm01</font></em>部分は適宜置き換えてください。</p>  <p><font face="Consolas">OperationDescription&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; OperationId&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; OperationStatus     <br />--------------------&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; -----------&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; ---------------      <br />Update-AzureVM&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; 7323d775-f63b-8a3d-994a-c412b542c0ec&#160;&#160;&#160; Succeeded</font></p>  <p>こんな風に”Succeeded”と表示されれば完了です。</p>  <p>ただし、VMAccessAgentの効果を発揮させるには、仮想マシンを再起動する必要があります。</p>  <p><font size="3" face="Consolas">Get-AzureVM -ServiceName <em><font color="#ff0000">ksvm01</font></em> -Name <font color="#ff0000"><em>ksvm01</em></font> | Restart-AzureVM</font></p>  <p>※ 例によって<em><font color="#ff0000">ksvm01</font></em>部分は適宜置き換えてください。</p>  <hr />  <h2>リモートデスクトップ接続を有効にし、管理者のユーザー名とパスワードを再設定する</h2>  <p>さて、これで「誤ってリモートデスクトップを無効化した」ケースからは生還できることがわかりました。では、「パスワード忘れちゃった」ケースはどうでしょうか。</p>  <p>実はこれも、先ほどと同じ Set-AzureVMAccessExtension コマンドレットで対処できます。管理者ユーザー名とパスワードを、こんな風に再設定できるのです。</p>  <p><font size="3" face="Consolas">Get-AzureVM -ServiceName ksvm01 | Set-AzureVMAccessExtension -UserName <font color="#ff0000">ユーザー名</font> -Password <em><font color="#ff0000">パスワード</font></em>&#160; | Update-AzureVM</font></p>  <p>「パスワード忘れちゃったんだけど、どうしたら復活できる？」というお問い合わせは、実際何度か頂いたことがあります。これからは簡単に復旧できますね。</p>  <hr />  <h2>関連情報</h2>  <p>ゲストエージェントとVMAccessAgentに関しては、下記の二つのブログ記事に非常に詳しく、わかりやすく書かれています。こちらもぜひご参照ください。</p>  <p><a href="https://blogs.msdn.com/b/wats/archive/2014/02/17/bginfo-guest-agent-extension-for-azure-vms.aspx" target="_blank">VM Agent available for Azure VMs</a></p>  <p><a href="https://blogs.msdn.com/b/wats/archive/2014/03/06/enable-rdp-or-reset-password-with-the-vm-agent.aspx" target="_blank">Enable RDP or Reset Password with the VM Agent</a></p>    <p>__END__</p>]]></content:encoded>
    </item>
    <item>
      <title>HPC Pack 2012 R2で最新のクラスタ！InfiniBandも使えます - その2: 計算ノードデプロイ編</title>
      <link>https://docs.microsoft.com/archive/blogs/ksasaki/hpc-pack-2012-r2infiniband-2</link>
      <pubDate>Wed, 19 Feb 2014 04:49:00 GMT</pubDate>
      <dc:creator><![CDATA[ksasaki2]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.technet.microsoft.com/ksasaki/2014/02/19/hpc-pack-2012-r2infiniband-2/</guid>
      <description><![CDATA[いよいよクラスタ構築
前回の記事では、Azure上に仮想ネットワークと仮想マシンを作成して、HPC Pack 2012...]]></description>
      <content:encoded><![CDATA[<h2>いよいよクラスタ構築</h2>
<p>前回の記事では、Azure上に仮想ネットワークと仮想マシンを作成して、HPC Pack 2012 R2をインストールし、ヘッドノードを構築するところまでを解説しました。今回は、計算ノードをデプロイしてMPI診断テストを流すところまでです。</p>
<h2>証明書設定</h2>
<p>Windows Azure計算ノードをデプロイするためには、Windows Azureの「サービス管理API」というやつを呼び出す必要があります。この、面倒なAPI呼び出しそのものはHPCクラスタマネージャがやってくれるので楽ちんなのですが、サービス管理APIを呼び出すためには、クライアント証明書による認証が必要です。</p>
<blockquote>
<p><em><span>Windows Azure サービス管理 API では、サービスに対して行われた要求が安全であることを保証するために、SSL を介した管理証明書の相互認証が必要です。匿名の要求は許可されません。 <br /></span></em><a href="https://msdn.microsoft.com/ja-jp/library/windowsazure/ee460782.aspx"><em><span>https://msdn.microsoft.com/ja-jp/library/windowsazure/ee460782.aspx</span></em></a></p>
</blockquote>
<p>そのため、</p>
<ul>
<li>APIを呼び出す主体を表す公開鍵証明書と、それに対応する秘密鍵を準備する。</li>
<li>上記証明書を、Azure管理ポータルに「管理証明書」として追加する。</li>
</ul>
<p>という二つの作業が必要です。面倒ですね。しかしご安心ください。「とりあえず簡単に試してみたい」という方のために、HPC Packのインストールと同時に自己署名証明書がWindowsの証明書ストアにインストールされるようになっています。今回はこれを使いましょう。</p>
<h3>証明書の確認</h3>
<p>まずは、証明書の存在を確認してみましょうか。PowerShellで。あ、GUIじゃないと...っていう人は、certlm.mscを使ってください。</p>
<p><span style="font-family:Consolas;font-size:xx-small;">PS C:\&gt; dir Cert:\LocalMachine\My | ?{$_.Subject -match &quot;HPC Azure&quot;} | ft Subject,Thumbprint,HasPrivateKey -AutoSize</span></p>
<p><span style="font-size:xx-small;"><span style="font-family:Consolas;">Subject&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Thumbprint&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; HasPrivateKey <br />-------&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ----------&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ------------- <br /></span><span style="font-family:Consolas;"><span style="color:#ff0000;">CN=Default Microsoft HPC Azure Management B6D115671BBD3E6C028803AF9E9DE8DBC0DDD6F2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; True <br /></span>CN=Microsoft HPC Azure Client&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 4D1664C80F2233F8C226DB1866CDD2CD496E26F0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; True</span></span></p>
<p><br /><span style="font-family:Consolas;font-size:xx-small;">PS C:\&gt; dir Cert:\LocalMachine\Root | ?{$_.Subject -match &quot;HPC Azure&quot;} | ft Subject,Thumbprint,HasPrivateKey -AutoSize</span></p>
<p><span style="font-size:xx-small;"><span style="font-family:Consolas;">Subject&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Thumbprint&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; HasPrivateKey <br />-------&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ----------&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ------------- <br /></span><span style="font-family:Consolas;"><span style="color:#ff0000;">CN=Default Microsoft HPC Azure Management B6D115671BBD3E6C028803AF9E9DE8DBC0DDD6F2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; False <br /></span>CN=Microsoft HPC Azure Client&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 4D1664C80F2233F8C226DB1866CDD2CD496E26F0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; False <br />CN=Microsoft HPC Azure Service&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1F679606346CC62187600E7CD6AA4966EB83EA90&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; False</span></span></p>
<p>赤字部分の&rdquo;<span style="color:#ff0000;">Default Microsoft HPC Azure Management</span>&rdquo;がHPC Packと共にインストールされた、テスト用証明書です。LocalMachine\Myに鍵ペアが、LocalMachine\Rootに公開鍵証明書が入ってます。</p>
<h3>証明書のエクスポート</h3>
<p>Rootに入っている方を.cerファイルにエクスポートして、Azure管理ポータルにアップロードします。このコマンドは「管理者として実行」したPowerShellでお願いします。あ、GUIじゃないと...っていう人は、またしてもcertlm.mscを使ってください。</p>
<ul>
<li>証明書のThumbprint部分は、環境に応じて適切に置き換えてください。</li>
<li>&rdquo;<em>c:\sasahpc.cer</em>&rdquo;の部分は出力されるファイル名です。これも適切に置き換えてください。</li>
</ul>
<p><span style="font-family:Consolas;">PS C:\&gt; Get-Item Cert:\LocalMachine\Root\<em><span style="color:#ff0000;">B6D115671BBD3E6C028803AF9E9DE8DBC0DDD6F2</span></em> | Export-Certificate -Type CERT -FilePath <em><span style="color:#ff0000;">c:\sasahpc.cer</span></em></span></p>
<p><span style="font-family:Consolas;">&nbsp;&nbsp;&nbsp; Directory: C:\</span></p>
<p><span style="font-family:Consolas;">Mode&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; LastWriteTime&nbsp;&nbsp;&nbsp;&nbsp; Length Name <br />----&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; -------------&nbsp;&nbsp;&nbsp;&nbsp; ------ ---- <br />-a---&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 2/19/2014&nbsp;&nbsp; 9:54 AM&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 822 sasahpc.cer</span></p>
<p>エクスポートできましたか？</p>
<h3>証明書のアップロード</h3>
<p>次に、これをアップロードするためにブラウザで<a href="https://manage.windowsazure.com">Windows Azure管理ポータル</a>へアクセスし、「設定」&rarr;「管理証明書」タブで「アップロード」ボタンをクリックします。</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_42C6FD19.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_42C6FD19.png"><img width="408" height="373" title="image" style="background-image:none;float:none;padding-top:0px;padding-left:0px;margin-left:auto;display:block;padding-right:0px;margin-right:auto;border-width:0px;" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_thumb_5CBD4DEC.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_thumb_5F00_5CBD4DEC.png" border="0" /></a></p>
<p>先ほどエクスポートした.cerファイルを選択します。</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_000F63F4.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_000F63F4.png"><img width="403" height="285" title="image" style="background-image:none;float:none;padding-top:0px;padding-left:0px;margin-left:auto;display:block;padding-right:0px;margin-right:auto;border-width:0px;" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_thumb_3D35B02A.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_thumb_5F00_3D35B02A.png" border="0" /></a></p>
<p>こうなれば完了です。</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_3E3030B8.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_3E3030B8.png"><img width="512" height="65" title="image" style="background-image:none;padding-top:0px;padding-left:0px;display:inline;padding-right:0px;border-width:0px;" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_thumb_447997F7.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_thumb_5F00_447997F7.png" border="0" /></a></p>
<h2>クラウドサービスとストレージアカウントの準備</h2>
<p>Azure管理ポータルを開いたついでに、HPC用のクラウドサービスとストレージアカウントを作っておきましょう。Windows Azure計算ノードはAzureの「クラウドサービス」機能(PaaS)におけるWorkerロールのインスタンスとしてデプロイされます。それを配置するためのクラウドサービスです。ストレージアカウントは、そのパッケージファイルなどを置くために使われます。</p>
<p>作り方は非常に簡単なので詳しく書きませんが、一つ大事な大事な注意点があります。</p>
<p align="center"><span style="color:#ff0000;font-size:large;">HPC用インスタンスであるA8,A9は、（いまのところ） <br />US North Central（米国中北部）と <br />Europe West（西ヨーロッパ）にしかありません！</span></p>
<p>というわけで、計算ノードを収めるクラウドサービスは、上記2リージョンのどちらかに作ってください。私はUS North Centralに作ってみました。これはシカゴです。シカゴのHPCインスタンスといえば、<a href="/b/ksasaki/archive/2012/11/14/windows-azure-top500.aspx">TOP500に載ったクラスタ</a>そのもの！(だと思います)</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_5;0C4.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_53B000C4.png"><img width="542" height="141" title="image" style="background-image:none;float:none;padding-top:0px;padding-left:0px;margin-left:auto;display:block;padding-right:0px;margin-right:auto;border:0px;" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_thumb_7531C104.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_thumb_5F00_7531C104.png" border="0" /></a></p>
<p>同様に、ストレージアカウントも作成します。</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_3DBAFEEE.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_3DBAFEEE.png"><img width="542" height="147" title="image" style="background-image:none;float:none;padding-top:0px;padding-left:0px;margin-left:auto;display:block;padding-right:0px;margin-right:auto;border:0px;" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_thumb_73C20EAC.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_thumb_5F00_73C20EAC.png" border="0" /></a></p>
<p>これでAzure側の準備は完了です。</p>
<h2>HPCクラスタの初期設定</h2>
<p>ようやくHPCの設定ができまね。ヘッドノードでHPCクラスタマネージャを起動します。</p>
<p>&ldquo;Required deployment tasks (Incomplete)&rdquo;というのが出ているかと思います。これをすべてクリアしなければ、使い始めることができません。面倒ですね。</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_404C6DDA.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_404C6DDA.png"><img width="437" height="220" title="image" style="background-image:none;float:none;padding-top:0px;padding-left:0px;margin-left:auto;display:block;padding-right:0px;margin-right:auto;border-width:0px;" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_thumb_404EFE8B.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_thumb_5F00_404EFE8B.png" border="0" /></a></p>
<p>サクサクと片付けましょう。</p>
<h3>ネットワーク構成 (Configure your network)</h3>
<p>まず、ネットワーク構成の選択です。ヘッドノードはNICを一枚しか持っていませんので、ここはトポロジ5しか選択できません。このまま進んでください。</p>
<blockquote>
<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_06624C50.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_06624C50.png"><img width="384" height="265" title="image" style="background-image:none;float:none;padding-top:0px;padding-left:0px;margin-left:auto;display:block;padding-right:0px;margin-right:auto;border-width:0px;" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_thumb_6C2473DC.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_thumb_5F00_6C2473DC.png" border="0" /></a></p>
</blockquote>
<p>次の画面もこれしか選択しようがありませんので、そのまま進みます。</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_26A20462.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_26A20462.png"><img width="368" height="254" title="image" style="background-image:none;float:none;padding-top:0px;padding-left:0px;margin-left:auto;display:block;padding-right:0px;margin-right:auto;border-width:0px;" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_thumb_4170BB1F.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_thumb_5F00_4170BB1F.png" border="0" /></a></p>
<p>次にファイアウォールの設定が出てきますが、これはオンプレミスのクラスタ用で、Windows Azure計算ノードにはあまり関係がありません。デフォルトのまま進みましょう。</p>
<p align="center"><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_32C89FEB.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_32C89FEB.png"><img width="355" height="245" title="image" style="background-image:none;padding-top:0px;padding-left:0px;display:inline;padding-right:0px;border-width:0px;" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_thumb_3FC510AD.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_thumb_5F00_3FC510AD.png" border="0" /></a></p>
<p>完了！</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_05D85E72.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_05D85E72.png"><img width="342" height="236" title="image" style="background-image:none;float:none;padding-top:0px;padding-left:0px;margin-left:auto;display:block;padding-right:0px;margin-right:auto;border-width:0px;" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_thumb_36FA29C3.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_thumb_5F00_36FA29C3.png" border="0" /></a></p>
<p>次行きましょう。</p>
<h3>インストール資格情報 (Provide installation Credentials)</h3>
<p>これも実はWindows Azure計算ノードを使うだけならあまり関係ありません。ここではドメインの管理者を入力してみました。</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_51C8E080.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_51C8E080.png"><img width="287" height="241" title="image" style="background-image:none;float:none;padding-top:0px;padding-left:0px;margin-left:auto;display:block;padding-right:0px;margin-right:auto;border-width:0px;" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_thumb_2A9127FC.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_thumb_5F00_2A9127FC.png" border="0" /></a></p>
<h3>新規ノードの命名規則 (Configure the naming of new nodes)</h3>
<p>これまたオンプレミス用の設定です。WDSで計算ノードにOSを注入するときのホスト名生成規則です。Windows Azure計算ノードには適用されませんので、デフォルトのままでも構いません。</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_77577F43.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_77577F43.png"><img width="280" height="289" title="image" style="background-image:none;float:none;padding-top:0px;padding-left:0px;margin-left:auto;display:block;padding-right:0px;margin-right:auto;border-width:0px;" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_thumb_3CFE9A13.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_thumb_5F00_3CFE9A13.png" border="0" /></a></p>
<h3>ノードテンプレートの作成(Create a node template)</h3>
<p>さぁ、ようやくWindows Azureに関係する設定です。Windows HPCでは、計算ノードをデプロイするために「ノードテンプレート」というものを使うのですが、Windows Azure計算ノードをデプロイするためには、「Windows Azure計算ノードテンプレート」というものを作ります。</p>
<p>&rdquo;Windows Azure node template&rdquo;を選びます。</p>
<p align="center"><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_2C1C86D4.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_2C1C86D4.png"><img width="493" height="320" title="image" style="background-image:none;padding-top:0px;padding-left:0px;display:inline;padding-right:0px;border-width:0px;" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_thumb_124AE156.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_thumb_5F00_124AE156.png" border="0" /></a></p>
<p>つぎに、ノードテンプレートに名前を付けます。</p>
<ul>
<li>後々コマンドラインで打つこともある(かもしれない)名前なので、英数字で短めにつけておくことをお勧めします。</li>
</ul>
<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_3A7FAB19.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_3A7FAB19.png"><img width="473" height="307" title="image" style="background-image:none;float:none;padding-top:0px;padding-left:0px;margin-left:auto;display:block;padding-right:0px;margin-right:auto;border:0px;" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_thumb_773733A9.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_thumb_5F00_773733A9.png" border="0" /></a></p>
<p>さて、ここからが肝心です。</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_7257109E.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_7257109E.png"><img width="462" height="300" title="image" style="background-image:none;float:none;padding-top:0px;padding-left:0px;margin-left:auto;display:block;padding-right:0px;margin-right:auto;border:0px;" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_thumb_2378DBF0.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_thumb_5F00_2378DBF0.png" border="0" /></a></p>
<ul>
<li>Subscription IDはAzureのサブスクリプションIDです。管理ポータルからコピペしましょう。</li>
</ul>
<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_2B9298F6.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_2B9298F6.png"><img width="244" height="115" title="image" style="background-image:none;float:none;padding-top:0px;padding-left:0px;margin-left:auto;display:block;padding-right:0px;margin-right:auto;border:0px;" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_thumb_28EC6DF6.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_thumb_5F00_28EC6DF6.png" border="0" /></a></p>
<p>管理証明書は、先ほどの&rdquo;Default Microsoft HPC Azure Management&rdquo;を選択します。</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_3F42133B.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_3F42133B.png"><img width="206" height="244" title="image" style="background-image:none;float:none;padding-top:0px;padding-left:0px;margin-left:auto;display:block;padding-right:0px;margin-right:auto;border:0px;" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_thumb_2C237740.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_thumb_5F00_2C237740.png" border="0" /></a></p>
<p>次の画面に進んで、クラウドサービスとストレージアカウントの選択をします。先ほど作成したやつを選んでください。</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_78E9CE87.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_78E9CE87.png"><img width="425" height="276" title="image" style="background-image:none;float:none;padding-top:0px;padding-left:0px;margin-left:auto;display:block;padding-right:0px;margin-right:auto;border:0px;" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_thumb_05E63F4A.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_thumb_5F00_05E63F4A.png" border="0" /></a></p>
<p>次に、プロキシノードの配置ポリシーを設定します。プロキシノードとは、ヘッドノードと計算ノードのやり取りを仲立ちする役目を果たすものですが、良くわからなければつまりデフォルトが最善です。</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_607EDC8C.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_607EDC8C.png"><img width="433" height="281" title="image" style="background-image:none;float:none;padding-top:0px;padding-left:0px;margin-left:auto;display:block;padding-right:0px;margin-right:auto;border:0px;" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_thumb_1B68A007.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_thumb_5F00_1B68A007.png" border="0" /></a></p>
<p>今度は計算ノードのゲストOSのバージョンを選択します。</p>
<p>ここもぜひ最新バージョンで！といいたいところなのですが、一つ注意点があります。</p>
<p><strong><span style="color:#ff0000;font-size:large;">A8,A9を使う場合は、Windows Server 2012 <span style="font-size:x-large;">R2</span>を選択しないでください。</span></strong></p>
<p>残念なことに、2012 R2ではInfiniBandが使えないのです。ここでは2012を選んでみました。</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_634C4392.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_634C4392.png"><img width="434" height="282" title="image" style="background-image:none;float:none;padding-top:0px;padding-left:0px;margin-left:auto;display:block;padding-right:0px;margin-right:auto;border:0px;" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_thumb_574CE40F.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_thumb_5F00_574CE40F.png" border="0" /></a></p>
<p>次にスタートアップスクリプトの設定です。これは、計算ノードの起動時に毎回実行されるバッチファイルを指定できる、という項目です。今回は特に設定せずに進みます。</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_63DD21DC.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_63DD21DC.png"><img width="445" height="289" title="image" style="background-image:none;float:none;padding-top:0px;padding-left:0px;margin-left:auto;display:block;padding-right:0px;margin-right:auto;border:0px;" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_thumb_3519F9EB.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_thumb_5F00_3519F9EB.png" border="0" /></a></p>
<p>次は、Windows Azure仮想ネットワーク (VNET)への参加設定です。今回は計算ノードをVNETに参加させませんので、空欄のまま進みます。</p>
<p>まだあるんです。今度はリモートデスクトップの資格情報設定。これを設定しておくと、計算ノードにRDPでログオンできるようになります。新しいA8,A9にログオンしてタスクマネージャとか見てみたいですよね！というわけで設定しました。</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_569BBA2B.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_569BBA2B.png"><img width="434" height="282" title="image" style="background-image:none;float:none;padding-top:0px;padding-left:0px;margin-left:auto;display:block;padding-right:0px;margin-right:auto;border:0px;" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_thumb_4A9C5AA8.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_thumb_5F00_4A9C5AA8.png" border="0" /></a></p>
<p>もうすぐ終わりです。計算ノードを任意のタイミングで手動起動・停止するか、あるいはスケジュールに従って自動起動・停止するか、という選択です。ここはデフォルトの「手動」のままいきます。</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_455004A8.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_455004A8.png"><img width="431" height="280" title="image" style="background-image:none;float:none;padding-top:0px;padding-left:0px;margin-left:auto;display:block;padding-right:0px;margin-right:auto;border:0px;" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_thumb_0AF71F78.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_thumb_5F00_0AF71F78.png" border="0" /></a></p>
<p>ようやく完了です！&rdquo;Create&rdquo;をクリッキングしてください。</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_2C78DFB8.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_2C78DFB8.png"><img width="411" height="267" title="image" style="background-image:none;float:none;padding-top:0px;padding-left:0px;margin-left:auto;display:block;padding-right:0px;margin-right:auto;border:0px;" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_thumb_527120BF.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_thumb_5F00_527120BF.png" border="0" /></a></p>
<h2>Azure計算ノードのデプロイ</h2>
<p>いよいよ！計算ノードをデプロイしてみましょう。HPC用の新インスタンスA9を！</p>
<p>HPCクラスタマネージャの左ペインで&rdquo;Node Management&rdquo;をクリックし、今度は右ペインから&rdquo;Add Node&hellip;&rdquo;をクリックします。</p>
<p>&ldquo;Add Windows Azure nodes&ldquo;を選んで次へ。<a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_0C543CAE.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_0C543CAE.png"><img width="461" height="305" title="image" style="background-image:none;float:none;padding-top:0px;padding-left:0px;margin-left:auto;display:block;padding-right:0px;margin-right:auto;border:0px;" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_thumb_24E66AAF.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_thumb_5F00_24E66AAF.png" border="0" /></a></p>
<p>A9行っちゃいましょう！(でもちょっとビビッて4ノード&hellip;)</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_038955C4.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_038955C4.png"><img width="456" height="302" title="image" style="background-image:none;float:none;padding-top:0px;padding-left:0px;margin-left:auto;display:block;padding-right:0px;margin-right:auto;border:0px;" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_thumb_09D2BD03.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_thumb_5F00_09D2BD03.png" border="0" /></a></p>
<p>&rdquo;Finish&rdquo;でウィザードを完了させると、ノード一覧に今追加したノードが出てきましたね。しかし、&rdquo;Not-Deployed&rdquo;となっている通り、この状態ではまだAzureにデプロイされていません。課金も発生しません。</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_723DA040.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_723DA040.png"><img width="350" height="193" title="image" style="background-image:none;float:none;padding-top:0px;padding-left:0px;margin-left:auto;display:block;padding-right:0px;margin-right:auto;border:0px;" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_thumb_36146549.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_thumb_5F00_36146549.png" border="0" /></a></p>
<p>ノードを右クリックして、&rdquo;Start&rdquo;します。</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_5729F294.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_5729F294.png"><img width="410" height="165" title="image" style="background-image:none;float:none;padding-top:0px;padding-left:0px;margin-left:auto;display:block;padding-right:0px;margin-right:auto;border:0px;" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_thumb_0204E758.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_thumb_5F00_0204E758.png" border="0" /></a></p>
<p>次に出てくる確認画面で&rdquo;Start&rdquo;をクリックすると、Azureへのデプロイが始まります。</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_1F1026D1.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_1F1026D1.png"><img width="411" height="181" title="image" style="background-image:none;float:none;padding-top:0px;padding-left:0px;margin-left:auto;display:block;padding-right:0px;margin-right:auto;border:0px;" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_thumb_3C18D599.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_thumb_5F00_3C18D599.png" border="0" /></a></p>
<p>たぶん10分くらいはかかるので、プロビジョニングログでも眺めながら待ちましょう。</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_4B51CF17.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_4B51CF17.png"><img width="361" height="284" title="image" style="background-image:none;float:none;padding-top:0px;padding-left:0px;margin-left:auto;display:block;padding-right:0px;margin-right:auto;border:0px;" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_thumb_2C9D75DD.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_thumb_5F00_2C9D75DD.png" border="0" /></a></p>
<p>Windows Azure管理ポータルのほうから覗いてみるのも良いですね。プロキシノードと計算ノード、2種類のロールが定義されていることがわかります。</p>
<p>っていうか、HPCインスタンスの場合はプロキシノードもA8にグレードアップされるんですね！(課金が怖い&hellip;)</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_7AC7EFF6.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_7AC7EFF6.png"><img width="407" height="340" title="image" style="background-image:none;float:none;padding-top:0px;padding-left:0px;margin-left:auto;display:block;padding-right:0px;margin-right:auto;border:0px;" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_thumb_414770B0.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_thumb_5F00_414770B0.png" border="0" /></a></p>
<p>あ、できました。10分かかりませんでしたね！</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_2E28D4B5.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_2E28D4B5.png"><img width="443" height="132" title="image" style="background-image:none;float:none;padding-top:0px;padding-left:0px;margin-left:auto;display:block;padding-right:0px;margin-right:auto;border:0px;" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_thumb_66D60F73.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_thumb_5F00_66D60F73.png" border="0" /></a></p>
<h2>MPI診断テストを実行してみる</h2>
<p>Windows HPCにはクラスタの状態を診断する様々なテストが内蔵されています。その中に、Azure計算ノードのMPI性能テストがあります。これを試してみましょう。</p>
<p>下の図のように、Diagnostics &rarr; Windows Azure &rarr; Windows Azure MPI Communication Test をダブルクリックします。</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_5EE0FDC2.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_5EE0FDC2.png"><img width="401" height="378" title="image" style="background-image:none;float:none;padding-top:0px;padding-left:0px;margin-left:auto;display:block;padding-right:0px;margin-right:auto;border:0px;" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_thumb_0E3503FE.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_thumb_5F00_0E3503FE.png" border="0" /></a></p>
<p>Azure計算ノードたちは、&rdquo;Azures Nodes&rdquo;というノードグループに所属していますので、このグループを選択して&rdquo;Run&rdquo;します。</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_5135F3CD.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_5135F3CD.png"><img width="392" height="251" title="image" style="background-image:none;float:none;padding-top:0px;padding-left:0px;margin-left:auto;display:block;padding-right:0px;margin-right:auto;border:0px;" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_thumb_22DEFED1.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_thumb_5F00_22DEFED1.png" border="0" /></a></p>
<p>こんなダイアログが出てきたら、&rdquo;ドメイン名\ユーザー名&rdquo;形式のユーザー名と、そのパスワードを入力してください。</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_7B3B1357.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_7B3B1357.png"><img width="244" height="214" title="image" style="background-image:none;float:none;padding-top:0px;padding-left:0px;margin-left:auto;display:block;padding-right:0px;margin-right:auto;border:0px;" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_thumb_4CE41E5B.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_thumb_5F00_4CE41E5B.png" border="0" /></a></p>
<p><strong><span style="font-size:large;">見せてもらおうか。InfiniBand QDR with RDMAの性能とやらを！</span></strong></p>
<p>正常に完了したらここ(下図)の&rdquo;Success&rdquo;が増えますので、わかります。</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_609398A0.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_609398A0.png"><img width="244" height="206" title="image" style="background-image:none;float:none;padding-top:0px;padding-left:0px;margin-left:auto;display:block;padding-right:0px;margin-right:auto;border:0px;" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_thumb_0B6E8D64.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_thumb_5F00_0B6E8D64.png" border="0" /></a></p>
<p>テスト結果には、各ノードで計測された「もっとも遅延の大きかった(＝成績悪かった)」結果が報告されます。おおむね4マイクロ秒前後だからなかなかやるじゃなぁい！仮想マシンのくせに。</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_1CE17EED.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_1CE17EED.png"><img width="418" height="308" title="image" style="background-image:none;float:none;padding-top:0px;padding-left:0px;margin-left:auto;display:block;padding-right:0px;margin-right:auto;border:0px;" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_thumb_23971921.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_thumb_5F00_23971921.png" border="0" /></a></p>
<h2>MPIピンポンもやってみる</h2>
<p><a href="https://technet.microsoft.com/ja-jp/library/cc972824(v=ws.10).aspx">mpipingpong</a>というのは、HPC Packに含まれるツールで、MPI通信の遅延と帯域を計測してくれます。これをジョブとしてクラスタに投入してみましょう。</p>
<p>ヘッドノードでコマンドプロンプトを開いて、次のコマンドを実行してください。</p>
<p><span style="font-family:Consolas;font-size:small;">job submit /numnodes:4 /nodegroup:azurenodes mpiexec -c 1 -affinity mpipingpong -pb -op -s nul</span></p>
<p>すると、クラスタへジョブが投入されますので、HPCクラスタマネージャで確認してみましょう。左ペインで&rdquo;Job Management&rdquo;をクリックします。</p>
<p>動いてますね！(ジョブID 13が&rdquo;Running&rdquo;です)</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_023A0436.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_023A0436.png"><img width="436" height="155" title="image" style="background-image:none;float:none;padding-top:0px;padding-left:0px;margin-left:auto;display:block;padding-right:0px;margin-right:auto;border:0px;" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_thumb_42067B6C.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_thumb_5F00_42067B6C.png" border="0" /></a></p>
<p>先ほどのジョブはすぐ終わって&rdquo;Finished&rdquo;になります。ダブルクリックして結果を確認してみましょう。</p>
<p>&ldquo;View Tasks&rdquo;でジョブの出力を確認できます。</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_4F02EC2E.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_4F02EC2E.png"><img width="408" height="304" title="image" style="background-image:none;float:none;padding-top:0px;padding-left:0px;margin-left:auto;display:block;padding-right:0px;margin-right:auto;border:0px;" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_thumb_6E4823B2.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_thumb_5F00_6E4823B2.png" border="0" /></a></p>
<p>クリップボードにコピーする機能もあるので、ここに貼ってみましょうか。パケットサイズを変えて2回のテストが行われています。</p>
<p>1回目は4バイト、遅延が3マイクロ秒ぐらい。なかなかやるじゃなぁい！</p>
<blockquote>
<p><span style="font-family:Consolas;">Testing packet size 4 (1024 iterations per link)</span></p>
<p><span style="font-family:Consolas;">Ping Node&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Pong Node&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Latency&nbsp;&nbsp;&nbsp;&nbsp; Throughput <br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (usec)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (MB/sec) <br />----------------------------------------------------------------------- <br />AZURECN-0001&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; AZURECN-0002&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 3.151&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1.211 <br />AZURECN-0001&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; AZURECN-0003&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 3.112&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1.226 <br />AZURECN-0001&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; AZURECN-0004&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 3.131&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1.218 <br />AZURECN-0002&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; AZURECN-0003&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 3.246&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1.175 <br />AZURECN-0002&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; AZURECN-0004&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 3.196&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1.194 <br />AZURECN-0003&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; AZURECN-0004&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 3.170&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1.203</span></p>
</blockquote>
<p>2回目は４Mバイト、スループットが3.6GB/sでてますね。QDR InfiniBandで実効帯域が32Gbps(=4GB/s)なので、なかなかやるじゃなぁい！</p>
<blockquote>
<p><span style="font-family:Consolas;">Testing packet size 4194304 (16 iterations per link)</span></p>
</blockquote>
<blockquote>
<p><span style="font-family:Consolas;">Ping Node&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Pong Node&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Latency&nbsp;&nbsp;&nbsp;&nbsp; Throughput <br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (usec)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (MB/sec) <br />----------------------------------------------------------------------- <br />AZURECN-0001&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; AZURECN-0002&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1101.581&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 3631.144 <br />AZURECN-0001&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; AZURECN-0003&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1100.841&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 3633.587 <br />AZURECN-0001&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; AZURECN-0004&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1100.122&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 3635.961 <br />AZURECN-0002&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; AZURECN-0003&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1100.263&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 3635.496 <br />AZURECN-0002&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; AZURECN-0004&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1102.538&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 3627.995 <br />AZURECN-0003&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; AZURECN-0004&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1100.262&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 3635.496 <br /></span></p>
</blockquote>
<p>というわけで、次回はLizardでLinpack流してみましょうか！</p>
<h2></h2>
<h2>関連情報</h2>
<ul>
<li>HPC Pack 2012 R2 - 日本語 <br /><a href="https://www.microsoft.com/ja-jp/download/details.aspx?id=41630">https://www.microsoft.com/ja-jp/download/details.aspx?id=41630</a></li>
<li>Run MPI Applications with HPC Pack on the A8 and A9 Compute Intensive Instances <br /><a href="https://msdn.microsoft.com/library/windowsazure/dn592104.aspx">https://msdn.microsoft.com/library/windowsazure/dn592104.aspx</a></li>
<li>Microsoft MPI <br /><a href="https://msdn.microsoft.com/en-us/library/bb524831(v=vs.85).aspx">https://msdn.microsoft.com/en-us/library/bb524831(v=vs.85).aspx</a></li>
</ul>
<p>__END__</p>]]></content:encoded>
    </item>
    <item>
      <title>HPC Pack 2012 R2で最新のクラスタ！InfiniBandも使えます - その1: ヘッドノード構築編</title>
      <link>https://docs.microsoft.com/archive/blogs/ksasaki/hpc-pack-2012-r2infiniband-1</link>
      <pubDate>Mon, 17 Feb 2014 03:26:00 GMT</pubDate>
      <dc:creator><![CDATA[ksasaki2]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.technet.microsoft.com/ksasaki/2014/02/17/hpc-pack-2012-r2infiniband-1/</guid>
      <description><![CDATA[HPC Pack 2012 R2とA8,A9計算ノード登場！ HPC Pack 2012 R2 が登場しました。今回の目玉はズバリこれです。 Windows Azureの新インスタンス A8 と A9...]]></description>
      <content:encoded><![CDATA[<h2>HPC Pack 2012 R2とA8,A9計算ノード登場！</h2> <p>HPC Pack 2012 R2 が登場しました。今回の目玉はズバリこれです。</p> <p align="center"><span style="font-size:large;">Windows Azureの新インスタンス A8 と A9 に対応！</span></p> <p>A8,A9とは、コアあたり7GBのメモリと40GbpsのInfiniBandを備えた、HPC用の新インスタンスです。そう、<a href="/b/ksasaki/archive/2012/11/14/windows-azure-top500.aspx">2012年11月のTOP 500ランキングに登場</a>したやつですよ！ずいぶん時間がかかってしまいましたが、ようやく皆さんにお使いいただけるようになりました。</p> <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_5455E3C2.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_5455E3C2.png"><img title="image" style="background-image:none;float:none;margin-left:auto;display:block;margin-right:auto;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_thumb_6D5444B8.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_thumb_5F00_6D5444B8.png" width="501" height="282" /></a></p> <p>というわけで今回は、HPC Pack 2012 R2でWindows Azure上にクラスタを作り、A8, A9のInfiniBandを試す！という手順をお伝えします。</p> <h2>この記事で作成するクラスタの概要</h2> <p>オンプレミスとクラウドにまたがるハイブリッドクラスタを構築できるのがHPC Packの特徴ですが、今回はヘッドノードも含めてすべてAzure上に配置する「完全クラウド構成」を作ってみます。構成要素は次の通り。</p> <ul> <li>ヘッドノード </li></ul> <ul> <ul> <li>「Windows Azure 仮想マシン (WAVM)」機能で作ります。 </li></ul> <ul> <li>ゲストOSは最新のWindows Server 2012 R2を使います。 </li></ul> <ul> <li>HPC Packでのクラスタ構築にはActive Directoryのドメインが必須なので、ヘッドノードはドメインコントローラも兼務します。 </li></ul></ul> <ul> <li>Windows Azure仮想ネットワーク (VNET) </li></ul> <ul> <ul> <li>WAVMでドメインコントローラを作成する場合、VNETへの配置がMUSTです。 </li></ul></ul> <ul> <li>計算ノード </li></ul> <ul> <ul> <li>Windows Azureの「クラウドサービス (PaaS)」機能で作ります。 </li></ul> <ul> <li>IaaS (WAVM)で作成する仮想マシンを計算ノードにすることもできますが、A8,A9は今のところPaaSでのみ利用可能であるため、今回はIaaS計算ノードは利用しません。 </li></ul></ul> <p>絵にするとこんな感じです↓ 計算ノードを仮想ネットワークへ配置することも可能ですが、必須ではありません。</p> <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_75D7A402.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_75D7A402.png"><img title="image" style="float:none;margin-left:auto;display:block;margin-right:auto;" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_thumb_1E76100A.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_thumb_5F00_1E76100A.png" width="478" height="247" /></a></p> <p></p> <p></p> <p></p> <h2>仮想ネットワークの作成</h2> <p>ヘッドノードを作る前に、仮想ネットワークを作成する必要があります。</p> <p>Windows Azure管理ポータルの「新規」ボタンから「ネットワークサービス」→「仮想ネットワーク」→「カスタム作成」とたどります。 <br /><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_151CDB87.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_151CDB87.png"><img title="image" style="float:none;margin-left:auto;display:block;margin-right:auto;" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_thumb_3E277A83.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_thumb_5F00_3E277A83.png" width="310" height="128" /></a></p> <p>仮想ネットワークの名前や配置場所を決めます。</p> <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_5240970C.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_5240970C.png"><img title="image" style="float:none;margin-left:auto;display:block;margin-right:auto;" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_thumb_3F8B9D55.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_thumb_5F00_3F8B9D55.png" width="396" height="137" /></a></p> <ul> <li>名前は、ここでは”vnet-hpc2012r2”としました。  </li><li>アフィニティグループは、既存のものを再利用できないこともありませんが、特にその必要がない限り、「新しいアフィニティグループの作成」をしたほうが面倒がありません。  </li><li>リージョンは、ヘッドノードの配置場所としてだけ考えればどこでもOKです(なにせヘッドノードはAzure上にある必要すらないので)。が、A8やA9のインスタンスをこの仮想ネットワークに配置したい(＝ヘッドノードとLANで結びたい)場合は、注意が必要です。A8,A9は今のところ「米国中北部(US North Central)」, 「西ヨーロッパ (Europe West)」の2か所でしか使えませんので、仮想ネットワークもそのどちらかに作る必要があります。 <br />今回はA8,A9を仮想ネットワークに配置する予定はないので、ここではリージョンとして「東アジア」を選択しました。 </li></ul> <p>次に、DNSとVPNの設定ですが、はっきり言って不要です。何せ今回仮想ネットワークに乗っかるのはヘッドノード1台きりなので… <br />(じゃ、なぜ仮想ネットワークが必要かといえば、Active Directoryのためで、なぜ一台のためにADが必要かといえば、オンプレミスのHPCクラスターでは計算ノードをすべてドメインへ参加させるため、HPC PackはAD必須なのです。)</p> <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_5AC3F656.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_5AC3F656.png"><img title="image" style="float:none;margin-left:auto;display:block;margin-right:auto;" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_thumb_1CCA6598.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_thumb_5F00_1CCA6598.png" width="387" height="158" /></a></p> <p>ここが肝心のところです。仮想ネットワークのアドレス空間とサブネットを定義します。</p> <ul> <li>今回は、192.168.0.0/16というアドレス空間の中を確保し、  </li><li>192.168.10.0/24というサブネットを一つだけ定義しました。ここにヘッドノードを載せます。 </li></ul> <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_25B9F7D7.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_25B9F7D7.png"><img title="image" style="float:none;margin-left:auto;display:block;margin-right:auto;" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_thumb_4EC496D3.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_thumb_5F00_4EC496D3.png" width="377" height="173" /></a></p> <p>出来上がるまで数分かかりますのでお待ちください。</p> <p>&nbsp;</p> <h2>ヘッドノードの仮想マシン作成</h2> <p>では、いよいよヘッドノードを作ります。</p> <p>Windows Azure管理ポータルの「新規」ボタンから「コンピューティング」→「仮想マシン」→「ギャラリーから」とたどります。</p> <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_1610BB20.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_1610BB20.png"><img title="image" style="float:none;margin-left:auto;display:block;margin-right:auto;" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_thumb_77C60429.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_thumb_5F00_77C60429.png" width="345" height="141" /></a></p> <p>せっかく最新のHPC Packと最新のA8,A9インスタンスを使うので、土台になるOSも最新のWindows Server 2012 R2にしましょう。</p> <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_72E3506D.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_72E3506D.png"><img title="image" style="float:none;margin-left:auto;display:block;margin-right:auto;" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_thumb_5BB7D5EF.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_thumb_5F00_5BB7D5EF.png" width="512" height="252" /></a></p> <p>仮想マシンの名前やインスタンスサイズを決めます。</p> <ul> <li>サイズは、Lにしてみました。 </li></ul> <ul> <li>ヘッドノードではSQL Serverも動きますので、Mサイズ以上が良いと思います。 </li></ul> <ul> <li>「新しユーザー名」のところは、このマシンの管理者となるユーザー名を決めます。 </li></ul> <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_1294BAE7.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_1294BAE7.png"><img title="image" style="float:none;margin-left:auto;display:block;margin-right:auto;" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_thumb_46C8E42D.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_thumb_5F00_46C8E42D.png" width="325" height="428" /></a></p> <p>次に、クラウドサービス名や配置場所を決めます。</p> <ul> <li>「リージョン/アフィニティグループ/仮想ネットワーク」の項目で、先ほど作成した仮想ネットワークを選んでください。  </li><li>「仮想ネットワーク サブネット」は、今回はサブネットが一つしかないので自動的に決まります。  </li><li>「ストレージ アカウント」は自動生成でOKです。(もちろん、既存のものを使ってもかまいません)  </li><li>「可用性セット」は、今回はマシンを一台しか作りませんので「なし」でOKです。 </li></ul> <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_08CF536F.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_08CF536F.png"><img title="image" style="float:none;margin-left:auto;display:block;margin-right:auto;" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_thumb_4AD5C2B0.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_thumb_5F00_4AD5C2B0.png" width="319" height="385" /></a></p> <p>最後に、エンドポイント設定となりますが、これはデフォルトでOKです。</p> <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_53C554EF.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_53C554EF.png"><img title="image" style="float:none;margin-left:auto;display:block;margin-right:auto;" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_thumb_47C364BB.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_thumb_5F00_47C364BB.png" width="373" height="171" /></a></p> <p>仮想マシンが出来上がるまで10分程度お待ちください。</p> <p>&nbsp;</p> <h2>ドメインコントローラにする</h2> <p>さて、出来上がったWindows Server 2012 R2で最初に行うべき作業は、こいつをドメインコントローラにすることです。「管理者として起動」したPowerShellで、次のようにコマンドを入力してください。</p> <p><span style="font-size:medium;font-family:consolas;">Add-WindowsFeature -name ad-domain-services -IncludeManagementTools</span></p> <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_5AD9563E.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_5AD9563E.png"><img title="image" style="float:none;margin-left:auto;display:block;margin-right:auto;" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_thumb_712EFB83.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_thumb_5F00_712EFB83.png" width="538" height="69" /></a></p> <p>これで、AD DSの機能がインストールされたので、次にこのマシンをドメインコントローラにして新しいフォレストを作ります。</p> <p>Install-ADDSForestコマンドレットを使います。下記の通りそのまま実行すると、</p> <ul> <li>ドメイン名: hpc2012.local  </li><li>ドメインの機能レベル: Windows Server 2012 R2  </li><li>フォレストの機能レベル: Windows Server 2012 R2 </li></ul> <p>で作成されます。最新ピカピカですね。</p> <p><span style="font-size:medium;font-family:consolas;">Install-ADDSForest -CreateDnsDelegation:$false -DomainName &quot;hpc2012r2.local&quot; -DomainNetbiosName &quot;HPC2012R2&quot; -DomainMode &quot;Win2012R2&quot; -ForestMode &quot;Win2012R2&quot; -InstallDns:$true -NoRebootOnCompletion:$false -Force:$true</span></p> <p>実行すると、こんな風に管理者パスワードの設定を求められますので、適当に設定してください。</p> <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_777862C2.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_777862C2.png"><img title="image" style="background-image:none;float:none;margin-left:auto;display:block;margin-right:auto;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_thumb_4A859098.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_thumb_5F00_4A859098.png" width="744" height="50" /></a></p> <p>放っておくと自動的にサーバーが再起動されます。再起動したら、再びログオンして下さい。</p> <p>※ なお、ここに書いたドメイン構築コマンドは<a href="/b/ksasaki/archive/2012/09/15/hpc-pack-2012-windows-azure-vm.aspx">以前の記事</a>からほぼコピペしました。</p> <p>&nbsp;</p> <h2>HPC Packをインストールする</h2> <p>いよいよ、HPC Packをインストールしてこのマシンをヘッドノードにします。方法そのものはいつも通りなので、<a href="/b/ksasaki/archive/2012/09/15/hpc-pack-2012-windows-azure-vm.aspx">以前の記事</a>を参考にして適当にインストールしてください。</p> <p>・・・</p> <p>というのもあまりといえばあんまりなので簡単に書きます。まずは下記のページからHPCPack2012R2-Full.zipをダウンロードしてください。680MBほどあるので、そこそこ時間がかかるかもしれません。</p> <p><a href="https://www.microsoft.com/ja-jp/download/details.aspx?id=41630">HPC Pack 2012 R2 - 日本語</a></p> <p>ダウンロードできたらZIPを展開します。私はD:\HPCPack2012R2-Fullに展開しました。</p> <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_6C7383CD.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_6C7383CD.png"><img title="image" style="background-image:none;float:none;margin-left:auto;display:block;margin-right:auto;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_thumb_3BE00615.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_thumb_5F00_3BE00615.png" width="413" height="144" /></a></p> <p>次に、setup.exeを実行します。簡単に済ませたいので、これも無人インストールしましょう。CMDでもPowerShellでも良いですが、とにかくこういうコマンドを打ちます。(ここではPowerShellを使いました)</p> <p><span style="font-size:large;font-family:consolas;">PS D:\HPCPack2012R2-Full&gt; .\<span>setup.exe -unattend -headnode</span></span></p> <p>時間はそこそこかかります。DHCPやWDSのようなWindows Serverの機能を有効化したり、SQL Serverをインストールしたりしますから。(WDSなんかはAzure上では無意味なのですが、オンプレのクラスタではノード展開に大活躍するのです)</p> <p>-unattend を付けた無人インストールでは「終わりました」というお知らせは特にありません(誰も見てないのが前提ですから)。インストーラのウィンドウが消えたら、完了しています。アプリケーション一覧に、”Microsoft HPC Pack 2012”というカテゴリができていますので、そこの”HPC Cluster Manager”をスタート画面とタスクバーにピンしておいてください。</p> <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_38CDA820.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_38CDA820.png"><img title="image" style="background-image:none;float:none;margin-left:auto;display:block;margin-right:auto;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_thumb_52C689A4.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_thumb_5F00_52C689A4.png" width="218" height="356" /></a></p> <p>さて、少し長くなってしまったので、HPC Packのインストールが完了したところで一旦区切ります。次回は計算ノードをデプロイするための証明書設定から解説します！</p> <p><a href="https://blogs.technet.com/b/ksasaki/archive/2014/02/19/creating-cluster-with-hpc-pack-2012-r2-part2.aspx">次回: 計算ノードデプロイ編！</a></p> <p>__END__</p>]]></content:encoded>
    </item>
    <item>
      <title>use RA-GRS;</title>
      <link>https://docs.microsoft.com/archive/blogs/ksasaki/use-ra-grs</link>
      <pubDate>Mon, 23 Dec 2013 06:53:38 GMT</pubDate>
      <dc:creator><![CDATA[ksasaki2]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.technet.microsoft.com/ksasaki/2013/12/23/use-ra-grs/</guid>
      <description><![CDATA[メリークリスマス！(まだ早い)  この記事は Windows Azure Advent Calendar 2013 の23日目です。  さて。今年は @dankogai...]]></description>
      <content:encoded><![CDATA[<h2>メリークリスマス！(まだ早い)</h2>  <p>この記事は <a href="https://qiita.com/advent-calendar/2013/azure">Windows Azure Advent Calendar 2013</a> の23日目です。</p>  <p>さて。今年は @dankogai さんにお会いできたり、<a href="https://www.slideshare.net/SaSakiKuninobu/yapcasia-tokyo-2013">YAPC::Asia Tokyo 2013で話す機会</a>を頂いたり したために、実に久しぶりにPerl熱が(自分の中で)再燃した年でした。また、 @junnama さんが <a href="https://search.cpan.org/~junnama/Net-Azure-StorageClient-0.5/lib/Net/Azure/StorageClient.pm">Net::Azure::StorageClient なるモジュールをCPANに登録する</a>という嬉しい出来事もあったのです。これは、 Perl 版の Azure ストレージクライアントライブラリです。私もさっそくこれを使って、「<a href="https://blogs.technet.com/b/ksasaki/archive/2013/10/21/calling-blob-service-rest-api-using-perl.aspx">ページBLOBの割り当て済みサイズを取得するツール</a>」という小さなスクリプトを書いてみたりしました。</p>  <h2>RA-GRS is here!</h2>  <p>ところで、Azureのストレージといえば、<a href="https://blogs.msdn.com/b/windowsazurej/archive/2013/12/19/blog-windows-azure-storage-redundancy-options-and-read-access-geo-redundant-storage.aspx">「読み取りアクセス地理冗長」(RA-GRS)</a> のプレビューが始まりましたね。今までは、地理冗長(同一ジオ内への別リージョンへの自動的な複製)がデフォルトで有効になっていたものの、セカンダリ側のデータに普段はアクセスできず、ジオフェールオーバーが発生しない限り複製は役に立たなかったわけですが、RA-GRS を使うとセカンダリ側のデータをいつでも読み取ることができます。(セカンダリ側には書き込めません。それ故 ”RA”-GRS)</p>  <p>プレビュー機能ページからの申し込みが有効になっていれば、ストレージアカウントの「構成」タブでこんな風に設定できます↓</p>  <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_43561759.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_43561759.png"><img title="image" style="border:0px currentcolor;margin-right:auto;margin-left:auto;float:none;display:block;background-image:none;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_thumb_3E73639D.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_thumb_5F00_3E73639D.png" width="509" height="263" /></a></p>  <p>すると、セカンダリエンドポイントが使えるようになります。ストレージアカウント名に ”-secondary” を付けたホスト名となります。</p>  <p>また、「最終の同期時刻」(LastSyncTime)という項目も増えます。セカンダリへの同期は非同期ですから、「どの時点の内容までは伝わっているのか」をこれで示しているわけです。</p>  <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_1975A324.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_1975A324.png"><img title="image" style="margin-right:auto;margin-left:auto;float:none;display:block;background-image:none;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_thumb_5052881B.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_thumb_5F00_5052881B.png" width="597" height="210" /></a></p>  <p><font color="#cccccc"># 23日の内容なのにギリギリになってから慌てて書いているのがバレバレですね。</font></p>  <h2>There is more than one way to do it.</h2>  <p>となれば、<strong><font color="#ff0000">業界標準かつクロスプラットフォームでアワードウィニングなスクリプト言語</font></strong>であるところの Perl で RA-GRS してみようと思うのは極めて自然であると言えましょう。もちろん、<a href="https://github.com/WindowsAzure/azure-storage-net">.NET版のストレージクライアントライブラリ</a> 等を使えば簡単にアクセスできるわけですが、それではオモシロミに欠けるというものです。</p>  <p>そこでまずは、前述の「<a href="https://blogs.technet.com/b/ksasaki/archive/2013/10/21/calling-blob-service-rest-api-using-perl.aspx">ページBLOBの割り当て済みサイズを取得するツール</a>」である <a href="https://github.com/ksasagit/AzureBlobUtils/blob/master/get-usedsize.pl">get-usedsize.pl</a> を使って、自分のストレージアカウントのセカンダリ側を調べてみることにしました。なお、@junnama さんのストレージクライアントモジュールの名前が、当初の WindowsAzure::Blob から Net::Azure::StorageClient::Blob へ変わっているので、それに合わせて <a href="https://github.com/ksasagit/AzureBlobUtils/blob/master/get-usedsize.pl">get-usedsize.pl</a> も直しました。</p>  <p>さて、試してみます。get-usedsize.pl は第1引数としてストレージアカウント名をとるのですが、ここに ”-secondary” を付けた名前を指定してみます。</p>  <p><font face="Consolas">C:\&gt;perl get-usedsize.pl ksasiaeast02c<strong><font color="#ff0000" size="3">-secondary</font></strong> <font color="#000000"><em>アクセスキー</em></font> vhds       <br /> ERROR: 400: ・ｿ&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt;&lt;Error&gt;&lt;Code&gt;<font color="#ff0000">OutOfRangeInput</font>&lt;/Code&gt;&lt;Message&gt;<font color="#ff0000">One of the request inputs is out of range.        <br /></font><font color="#000000">RequestId:xxxxxxxx-e22f-43a2-xxxx-8df6717a4e7e        <br /> Time:2013-12-23T05:08:57.9803639Z</font>&lt;/Message&gt;&lt;/Error&gt; at get-usedsize.pl line 22.</font></p>  <p>あれ、エラー・・・</p>  <p>最初に疑ったのは<a href="https://msdn.microsoft.com/en-us/library/windowsazure/dd894041.aspx">プロトコルバージョン</a>です。RA-GRS はリクエストの x-ms-version フィールドに ”<strong>2013-08-15</strong>” を指定しなければ使えません。そこで、Net::Azure::StorageClient::Blob のコンストラクタで api_version を指定してみました。</p>  <p><font face="Consolas">my $client = Net::Azure::StorageClient::Blob-&gt;new(     <br />&#160;&#160;&#160; account_name&#160;&#160;&#160;&#160;&#160;&#160;&#160; =&gt; $account_name,      <br />&#160;&#160;&#160; primary_access_key&#160; =&gt; $primary_access_key,      <br />&#160;&#160;&#160; container_name&#160;&#160;&#160;&#160;&#160; =&gt; $container_name,      <br /><strong><font color="#ff0000">&#160;&#160;&#160; api_version&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; =&gt; &#39;2013-08-15&#39;,</font>        <br /></strong> );</font></p>  <p>が、同じエラー・・・</p>  <p>しかし ”-secondary” を付けずにいつも通りプライマリ側へアクセスする場合は何の問題も起きないので、やはり ”-secondary” の指定が関係していると思わざるを得ません。はてどこを直せば、、、もしかしてセカンダリ側へアクセスするときには何か追加の設定が必要なのかも、と<a href="https://msdn.microsoft.com/en-us/library/windowsazure/dd179355.aspx">ストレージサービスのREST APIリファレンス</a>を調べてみたりしたのですが、特にそういうものはなさそうです…</p>  <p>接続先としては ”-secondary” を指定しなければ意味が無い、しかし、どこかに ”-secondary&quot; を指定してはいけない場所がある気がする…</p>  <p>あ、もしかして？</p>  <h2>ストレージの認証ヘッダ</h2>  <p>Windows Azureストレージ の REST API を呼び出す際は、Authorization ヘッダフィールドに<a href="https://msdn.microsoft.com/en-us/library/windowsazure/dd179428.aspx">複雑怪奇な呪文を唱えながら生成した署名</a>をくっつけてやる必要があるのですが、これは以下のような形をしています。</p>  <p><font face="Consolas">Authorization: SharedKey <font color="#ff0000">ストレージアカウント名</font>:署名</font></p>  <p>この「ストレージアカウント名」というのは、ひょっとして “-secondary” 付きの名前では無く、<a href="https://msdn.microsoft.com/ja-jp/library/windowsazure/ee460787.aspx">List Storage Accounts</a>が返してくるアカウント名そのものなのでは、と推測したわけです。現状のNet::Azure::StorageClientは <a href="https://account.blob.core.windows.net">account.blob.core.windows.net</a> のようなFQDNから、「最初のピリオドより前」を切り取ってストレージアカウント名としているので、”-secondary” がくっついてきちゃうのです。</p>  <p>試しに、ストレージアカウント名を取り出している部分のコードを、ちょびっといじってみました。</p>  <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_67146055.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_67146055.png"><img title="image" style="margin-right:auto;margin-left:auto;float:none;display:block;background-image:none;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/image_thumb_545F669E.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/image_5F00_thumb_5F00_545F669E.png" width="452" height="108" /></a></p>  <p>赤い部分を緑部分のように変えたわけです。文字クラス \w に ’-‘ (ハイフン) は含まれませんので、\w+ は ’-‘ の直前までを消費して $1 には ”-secondary” を除いたストレージアカウント名が入ります。</p>  <p><font color="#ff0000" size="1">※ なお、簡単な文字列処理も全部正規表現でやっちゃうのはPerl星人のごく一般的な習慣です。indexofとかsubstringとかめんどくさくて…</font></p>  <p>さぁ、これでうまく動くようになりました！</p>  <p><font face="Consolas">C:\&gt;perl get-usedsize.pl ksasiaeast02c<font color="#ff0000" size="3">-secondary</font> vhds      <br /> 3637658112/32212255232 3.4/30 (11.3% used) 0nl5kzo5.2cz201308300518360065.vhd      <br /> 1677476352/68719477248 1.6/64 (2.4% used) centdb01-centdb01-0706-1.vhd      <br /> 68712944128/68719477248 64.0/64 (100.0% used) centdb01-centdb02-0706-1.vhd      <br /> 3271582208/32212255232 3.0/30 (10.2% used) keazt1ai.g5h201307031712170126.vhd</font></p>  <p>“vhds” というコンテナの中にある BLOB 達すべてにつき、BLOB のサイズのうち実際にページが書き込まれているのはどの程度なのか、数え上げるスクリプトです。上記実行例ではセカンダリ側にアクセスしてこの数え上げ処理をやっています。</p>  <p>@junnama さんに <a href="https://github.com/junnama/net-azure-storageclient-perl/pull/2">pull request</a> 出しておきました。正規表現をちょびっと直すだけなのですが、Gitあまり使ったこと無かったので、pull requestというのをやってみたかったのです…</p>    <h2>RA-GRS情報取得API</h2>  <p>さて、セカンダリエンドポイント目がけて API を呼び出せるようになったところで、もう一つ何か試してみたいと思います(もちろん Perl でね！)</p>  <p>題材としては、RA-GRSの登場とともに増えたAPI <a href="https://msdn.microsoft.com/en-us/library/windowsazure/dn495326.aspx">Get Blob Service Stats (REST API)</a> を使って、セカンダリ側の状態を問い合わせてみるというのはどうでしょうか。これを呼び出すと、以下のようなレスポンスが返って来るようです。</p>  <p><font face="Consolas">&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt;     <br />&lt; StorageServiceStats&gt;      <br />&#160; &lt;GeoReplication&gt;&#160;&#160;&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160;&#160; &lt;Status&gt;live|bootstrap|unavailable&lt;/Status&gt;      <br />&#160;&#160;&#160;&#160;&#160; &lt;LastSyncTime&gt;sync-time|&lt;empty&gt;&lt;/LastSyncTime&gt;      <br />&#160; &lt;/GeoReplication&gt;      <br />&lt; /StorageServiceStats&gt;</font>    <br /></p>  <p>この API を呼び出し、返ってくる XML を解析し、Status と LastSyncTime を表示する簡単なスクリプト “get-blobstats.pl” を書いてみましょう。</p>  <p>まず、スクリプト冒頭に以下の2行。これはお約束。</p>  <blockquote>   <p><font face="Consolas">use strict;       <br /> use warnings;</font></p> </blockquote>  <p>次に、必要なモジュールをuseします。</p>  <blockquote>   <p><font face="Consolas">use LWP::UserAgent;       <br /> use XML::Simple;        <br /> use Net::Azure::StorageClient::Blob;</font></p> </blockquote>  <p><a href="https://msdn.microsoft.com/en-us/library/windowsazure/dn495326.aspx">Get Blob Service Stats (REST API)</a>はかなり新しいAPIなので、まだNet::Azure::StorageClientには対応するメソッドが存在しません。そこで、Net::Azure::StorageClientはその一部の機能を使い、実際のAPI呼び出し処理と結果の解析は自前で行います。とはいえ、HTTP は LWP::UserAgent に、XML 解析は XML::Simple に任せてしまえるので、楽なものです。</p>  <p>では、処理開始、まずはストレージクライアントをインスタンス化します。コマンドライン引数で、対象のストレージアカウント名(“-secondary”を付けて)と、アクセスキーを指定する想定です。</p>  <blockquote>   <p><font face="Consolas">my ($account_name, $access_key) = @ARGV;</font></p>   <font face="Consolas"></font>    <p><font face="Consolas">my $client = Net::Azure::StorageClient::Blob-&gt;new(       <br />&#160;&#160;&#160; account_name&#160;&#160;&#160;&#160;&#160;&#160;&#160; =&gt; $account_name,        <br />&#160;&#160;&#160; primary_access_key&#160; =&gt; $access_key,        <br />&#160;&#160;&#160; api_version&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; =&gt; &#39;2013-08-15&#39;,        <br /> );</font></p> </blockquote>  <p>次に、HTTP::Request オブジェクトを作ります。赤字部分で呼び出し API を指定しているわけです。</p>  <blockquote>   <p><font face="Consolas">my $req = new HTTP::Request(&quot;GET&quot;, &quot;</font><font face="Consolas">https://${account_name}.blob.core.windows.net/<font color="#ff0000" size="3"><strong>?restype=service&amp;comp=stats</strong></font>&quot;);</font> </p> </blockquote>  <p>そして、次に Net::Azure::StorageClient の便利機能を活用します。sign メソッドが面倒な Authorization ヘッダを作ってくれるので楽ちん。</p>  <blockquote>   <p><font face="Consolas">$req = $client-&gt;<font color="#ff0000">sign</font>($req);</font></p> </blockquote>  <p>いよいよ API を呼び出します。HTTP レスポンスは $res に返ってきます。</p>  <blockquote>   <p><font face="Consolas">my $res = LWP::UserAgent-&gt;new-&gt;request($req); </font></p> </blockquote>  <p>返ってきた $res はいろんな要素が詰まったハッシュ(のリファレンス)なのですが、この中の {_content} キーに HTTP のレスポンスボディが入っています。これは前述の通り XML 形式なので、XML::Simple を使って扱いやすい Perl のデータ構造に変換してやります。</p>  <blockquote>   <p>my $result = XML::Simple-&gt;new-&gt;XMLin($res-&gt;{&quot;_content&quot;}); </p> </blockquote>  <p>これで、$result には API のレスポンスを表すハッシュリファレンスが入ります。こんなの↓</p>  <blockquote>   <p><font face="Consolas">0&#160; HASH(0x48ac208)       <br />&#160;&#160; &#39;GeoReplication&#39; =&gt; HASH(0x48b01a0)        <br />&#160;&#160;&#160;&#160;&#160; &#39;LastSyncTime&#39; =&gt; &#39;Mon, 23 Dec 2013 14:46:00 GMT&#39;        <br />&#160;&#160;&#160;&#160;&#160; &#39;Status&#39; =&gt; &#39;live&#39;</font></p> </blockquote>  <p>後はこれを整形して表示するだけですね。</p>  <blockquote>   <p><font face="Consolas">print &quot;Status: $result-&gt;{GeoReplication}-&gt;{Status}\n&quot;;       <br /> print &quot;LastSyncTime: $result-&gt;{GeoReplication}-&gt;{LastSyncTime}\n&quot;;</font></p> </blockquote>  <p>では、実行してみましょう。</p>  <blockquote>   <p><font face="Consolas">C:\&gt;perl&#160; get-blobstats.pl ksasiaeast02c-secondary <em>アクセスキー</em>        <br /><font color="#0000ff">Status: live         <br /> LastSyncTime: Mon, 23 Dec 2013 14:47:41 GMT</font></font></p> </blockquote>  <p>RA-GRS は有効(live)で、最終同期時刻は日本時間の 23:47 だということがわかります。</p>  <p>いやー！やっぱり Perl で書くと簡単ですね!?</p>  <p>   <br /></p>  <h2>関連情報</h2>  <p><a href="https://blogs.msdn.com/b/windowsazurej/archive/2013/12/19/blog-windows-azure-storage-redundancy-options-and-read-access-geo-redundant-storage.aspx">Windows Azure ストレージの冗長オプションと読み取りアクセス地理冗長ストレージ</a></p>  <p><a href="https://msdn.microsoft.com/en-us/library/windowsazure/dd179428.aspx">Authentication for the Windows Azure Storage Services</a></p>  <p><a href="https://msdn.microsoft.com/en-us/library/windowsazure/dn495326.aspx">Get Blob Service Stats (REST API)</a></p>  <p><a href="https://junnama.alfasado.net/online/2013/12/netazurestrageclientcpan.html">Net::Azure::StrageClientモジュールを書いてCPANデビューした話。</a></p>  <p><a href="https://strawberryperl.com/">Strawberry Perl</a></p>  <p>__END__</p>]]></content:encoded>
    </item>
    <item>
      <title>Windows Azure 管理ポータルへのアクセスに多要素認証を適用する - Microsoft アカウント編</title>
      <link>https://docs.microsoft.com/archive/blogs/ksasaki/windows-azure</link>
      <pubDate>Sat, 09 Nov 2013 08:08:00 GMT</pubDate>
      <dc:creator><![CDATA[ksasaki2]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.technet.microsoft.com/ksasaki/2013/11/09/windows-azure/</guid>
      <description><![CDATA[この記事では、 Windows Azure 管理ポータルへのログオンに「多要素認証」を適用することで安全性を高める方法を説明します。  どんな ID...]]></description>
      <content:encoded><![CDATA[<p>この記事では、 Windows Azure 管理ポータルへのログオンに「多要素認証」を適用することで安全性を高める方法を説明します。</p>  <p>どんな ID で管理ポータルへアクセスするかによって設定方法が異なるのですが、まずは今のところ多数派であると思われる Microsoft アカウント (旧称: Windows Live ID) を利用する場合の方法について説明します。</p>  <p>今後は、 Windows Azure Active Directory のアカウントを利用することも増えてくると思いますので、それに関してはまた別の記事で説明します。</p>  <h2>Microsoft アカウントの2段階認証設定方法</h2>  <p>Microsoft アカウントで「2段階認証」という認証方式を有効にすると、ユーザーは、通常のユーザー名、パスワードの他に何らかの手段で受け取った「セキュリティコード」（ワンタイムパスワード）を入力することで初めてログオンできるようになります。具体的に方法を見ていきましょう。</p>  <p>まずは <a href="https://account.live.com/">https://account.live.com/</a> へアクセスします。</p>  <p>「概要」→「セキュリティ情報」から「2段階認証のセットアップ」をクリックします。</p>  <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/5383.image_18267715.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/5383.image_5F00_18267715.png"><img title="image" style="margin-right: auto; margin-left: auto; float: none; display: block; background-image: none;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/5736.image_thumb_3CBA954A.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/5736.image_5F00_thumb_5F00_3CBA954A.png" width="642" height="243" /></a></p>  <p>次の画面では単に「次へ」をクリックします。</p>  <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/5861.image_4C5D310C.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/5861.image_5F00_4C5D310C.png"><img title="image" style="margin-right: auto; margin-left: auto; float: none; display: block; background-image: none;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/1104.image_thumb_074463D6.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/1104.image_5F00_thumb_5F00_074463D6.png" width="565" height="261" /></a></p>  <p>認証アプリのセットアップ画面が出てきます。</p>  <p>「認証アプリ」というのは何かといえば、スマートフォンにこのアプリケーションを導入して、Microsoft アカウントと関連付けると、スマートフォンがセキュリティコード（ワンタイムパスワード）の生成器になるのです。Windows Phone用には<a href="https://www.windowsphone.com/ja-jp/store/app/authenticator/021dd79f-0598-e011-986b-78e7d1fa76f8">マイクロソフト製の認証アプリ</a>があります。</p>  <p>iPhoneやAndroid用は、マイクロソフト製のものはありませんがご安心ください。これは要するに TOTP (<a href="https://tools.ietf.org/html/rfc6238">Time-based One-time Password Algorithm</a>) 準拠のワンタイムパスワード生成アプリであれば良いので、例えば <a href="https://itunes.apple.com/jp/app/google-authenticator/id388497605">Google Authenticator</a> 等が利用できます。それらのアプリで下図の画面の QR コードを読み取れば、関連付けができます。</p>  <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/1106.image_0BBD754E.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/1106.image_5F00_0BBD754E.png"><img title="image" style="margin-right: auto; margin-left: auto; float: none; display: block; background-image: none;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/2045.image_thumb_7491FACF.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/2045.image_5F00_thumb_5F00_7491FACF.png" width="510" height="413" /></a></p>  <p>次にこんな画面が出てきます。</p>  <p>「アプリパスワード」というのは、Web ブラウザ以外の「セキュリティコードを入力できない既存のアプリケーション」を使うときに、代わりに利用するパスワードです。例えばスマートフォンのメールアプリ等で利用します。ブラウザで Windows Azure 管理ポータルへアクセスすることだけを考えるなら、ひとまずこれは無視してかまいません。</p>  <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/2465.image_0F5E20DC.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/2465.image_5F00_0F5E20DC.png"><img title="image" style="margin-right: auto; margin-left: auto; float: none; display: block; background-image: none;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/7762.image_thumb_112E76A3.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/7762.image_5F00_thumb_5F00_112E76A3.png" width="488" height="266" /></a></p>  <p>以上で2段階認証のセットアップは完了です。早速、<a href="https://manage.windowsazure.com">Windows Azure管理ポータル</a>へアクセスしてみましょう。</p>  <h2>2段階認証を使用したログオン</h2>  <p>通常通り、まずは Microsoft アカウントログオン画面へ。<a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/4555.image_61072BDF.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/4555.image_5F00_61072BDF.png"><img title="image" style="margin-right: auto; margin-left: auto; float: none; display: block; background-image: none;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/4405.image_thumb_3C096B66.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/4405.image_5F00_thumb_5F00_3C096B66.png" width="436" height="202" /></a></p>  <p>次に、こんなのが出てきます。ここに「セキュリティコード」を入力するわけです。</p>  <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/8737.image_0BE220A3.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/8737.image_5F00_0BE220A3.png"><img title="image" style="margin-right: auto; margin-left: auto; float: none; display: block; background-image: none;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/5432.image_thumb_401649E9.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/5432.image_5F00_thumb_5F00_401649E9.png" width="291" height="177" /></a></p>  <p>先ほどの手順でスマホに認証アプリをセットアップ済みであれば、アプリの画面に表示されているコードを入力します。(iPhone で前述の <a href="https://itunes.apple.com/jp/app/google-authenticator/id388497605">Google Authenticator</a> を使った場合の画面です）</p>  <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/1643.image_3729485B.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/1643.image_5F00_3729485B.png"><img title="image" style="margin-right: auto; margin-left: auto; float: none; display: block; background-image: none;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/2742.image_thumb_7FE2C11F.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/2742.image_5F00_thumb_5F00_7FE2C11F.png" width="244" height="181" /></a></p>  <p>これで、めでたく管理ポータルへのログオンが完了します。</p>  <h2>認証アプリ以外の方法</h2>  <p>なお、セキュリティコード入力欄の隣にある「別の確認オプションを使う」をクリックすると、コードを取得する別の方法が選択できます。</p>  <ul>   <li>「電話をかける」を選ぶと、あらかじめ Microsoft アカウントに登録しておいた携帯電話番号に自動音声電話がかかってきて、コードを(機械の)お姉さんが教えてくれます。</li>    <li>「メールを送信」を選ぶと、これもあらかじめ登録しておいたメールアドレス宛に、 <a href="mailto:account-security-noreply@account.microsoft.com">account-security-noreply@account.microsoft.com</a> からコードを知らせるメールが来ます。</li> </ul>  <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/5383.image_62043D1E.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/5383.image_5F00_62043D1E.png"><img title="image" style="margin-right: auto; margin-left: auto; float: none; display: block; background-image: none;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/3362.image_thumb_5D218962.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/3362.image_5F00_thumb_5F00_5D218962.png" width="416" height="207" /></a></p>  <p>いずれにせよ、Microsoft アカウントとパスワードを「知っている」ということのほかに、パスコードを生成ないしは受け取ることができる『デバイスを持っている』という別の要素を組み合わせて認証の安全性を高めているわけです。設定も以上の通り簡単なので、ぜひお試しください。</p>  <h2>関連情報</h2>  <p><a href="https://blogs.technet.com/b/microsoft_blog/archive/2013/04/17/microsoft-account-gets-more-secure.aspx">Microsoft Account Gets More Secure</a></p>  <p>__END__</p>]]></content:encoded>
    </item>
    <item>
      <title>「Windows Azure PowerShell を使うには」とブログに書くまでもないほど簡単になってしまった話</title>
      <link>https://docs.microsoft.com/archive/blogs/ksasaki/windows-azure-powershell-31777</link>
      <pubDate>Sun, 03 Nov 2013 10:20:00 GMT</pubDate>
      <dc:creator><![CDATA[ksasaki2]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.technet.microsoft.com/ksasaki/2013/11/03/windows-azure-powershell-31777/</guid>
      <description><![CDATA[怠惰は美徳  Windows Azure PowerShell は実に便利です。  例えば「動いてる VM...]]></description>
      <content:encoded><![CDATA[<h2>怠惰は美徳</h2>  <p>Windows Azure PowerShell は実に便利です。</p>  <p>例えば「動いてる VM 全部シャットダウンしたい」時、管理ポータルで一台ずつポチポチしてると空しくなりますよね。コンピュータに使われている気がして。そこで、PowerShell です。</p>  <p><font face="Consolas">Get-AzureVM | ?{$_.Status -eq &quot;ReadyRole&quot;} | Stop-AzureVM -Force</font></p>  <p>これで「あとやっとけよ、お前ら」と機械をこき使うことができるわけです。</p>  <p>また、以前「<a href="https://blogs.technet.com/b/ksasaki/archive/2013/06/04/endpoint-acl-is-coming.aspx">エンドポイントに ACL を！</a>」で書いたエンドポイントACLのように、PowerShell を使わねければ（今のところ）設定できない機能もあったりします。</p>  <h2>証明書の設定が面倒だった</h2>  <p>この Windows Azure PowerShell、便利なのは前述の通りなのですが、使い始めるまでがちょっと面倒でした。マイクロソフトアカウントでログオンするだけの Azure 管理ポータルと違って、サービス管理 API を呼び出すためにクライアント証明書による認証の準備が必要だったからです。</p>  <blockquote>   <p><em><font face="游ゴシック">Windows Azure サービス管理 API では、サービスに対して行われた要求が安全であることを保証するために、<font color="#ff0000">SSL を介した管理証明書の相互認証が必要です</font>。匿名の要求は許可されません。 </font>        <br /><a href="https://msdn.microsoft.com/ja-jp/library/windowsazure/ee460782.aspx">https://msdn.microsoft.com/ja-jp/library/windowsazure/ee460782.aspx</a></em></p> </blockquote>  <p>このために、</p>  <ol>   <li>鍵ペアを生成して、</li>    <li>公開鍵証明書を証明書ストアからエクスポートして</li>    <li>それを Azure 管理ポータルへアップロードして</li>    <li>Set-AzureSubscription で設定する</li> </ol>  <p>という作業をする必要がありました。</p>  <p>また、これを楽に行うために <a href="https://msdn.microsoft.com/en-us/library/dn408501.aspx">Get-AzurePublishSettingsFile</a> と<a href="https://msdn.microsoft.com/en-us/library/dn408491.aspx">Import-AzurePublishSettingsFile</a> というコマンドレットが用意されていたのですが、これは実行するたびに新たな証明書を生成するので、テキトーにあちこちのコンピュータで実行した結果、</p>  <p align="center"><font color="#ff0000" size="4">管理ポータルが管理証明書だらけになる</font></p>  <p>という残念な現象が起きがちでした。こんなふうに:</p>  <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/5353.image_3F37EE4F.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/5353.image_5F00_3F37EE4F.png"><img title="image" style="margin-right: auto; margin-left: auto; float: none; display: block; background-image: none;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/6761.image_thumb_280C73D1.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/6761.image_5F00_thumb_5F00_280C73D1.png" width="395" height="263" /></a></p>  <p>こんな面倒とも、もうおさらばです。Windows Azure PowerShell が</p>  <p align="center"><font color="#ff0000" size="4">Windows Azure Active Directory (WAAD) 認証に対応した</font></p>  <p>からです。実際にやってみましょう。</p>  <h2>最新の Windows Azure PowerShell をインストール</h2>  <p>まずは、Windows Azure Active Directory 認証に対応した最新の Windows Azure PowerShell (0.7.0) が必要です。<a href="https://www.microsoft.com/web/downloads/platform.aspx">WebPI</a> でインストールしてください。Azure SDK 2.2 など必要なもの一式が同時に入りますから、インストールはそこそこ時間がかかりますがお待ちください。</p>  <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/3058.image_30FC0610.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/3058.image_5F00_30FC0610.png"><img title="image" style="margin-right: auto; margin-left: auto; float: none; display: block; background-image: none;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/0777.image_thumb_00D4BB4D.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/0777.image_5F00_thumb_5F00_00D4BB4D.png" width="514" height="350" /></a></p>  <p>インストールが完了するとこんな感じです。   <br />※ 余談ですが、Windows Azure Storage Tools も一緒に入っていますね。これには便利な azcopy コマンドが含まれています。</p>  <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/2055.image_777B86C9.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/2055.image_5F00_777B86C9.png"><img title="image" style="margin-right: auto; margin-left: auto; float: none; display: block; background-image: none;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/5100.image_thumb_006B1909.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/5100.image_5F00_thumb_5F00_006B1909.png" width="473" height="238" /></a></p>  <p>バージョンを確認するには、次のコマンドを実行してください。Azure が 0.7.0 であれば OK です。   <br /><font size="3" face="Consolas">Get-Module | ft name,version</font></p>  <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/5582.image_32BD8978.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/5582.image_5F00_32BD8978.png"><img title="image" style="margin-right: auto; margin-left: auto; float: none; display: block; background-image: none;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/2870.image_thumb_348DDF3F.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/2870.image_5F00_thumb_5F00_348DDF3F.png" width="464" height="116" /></a></p>  <h2>Windows Azure PowerShell初期設定</h2>  <p>さて、今までならここで証明書の設定をするところですが、これからは簡単です。Windows Azure PowerShell を起動して、次のコマンドを打ち込んでください。</p>  <p><font size="3" face="Consolas">Add-AzureAccount</font></p>  <p>するとこんなのが出てきますので、Windows Azure管理ポータルへログオンする際に使っているアカウントでログオンしてください。マイクロソフトアカウントだけでなく、Windows Azure Active Directoryのアカウントや、フェデレーションしてる企業アカウントでもOKです。</p>  <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/3884.image_023B6ED0.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/3884.image_5F00_023B6ED0.png"><img title="image" style="margin-right: auto; margin-left: auto; float: none; display: block; background-image: none;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/8015.image_thumb_0B2B010F.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/8015.image_5F00_thumb_5F00_0B2B010F.png" width="383" height="276" /></a></p>  <p>こんなふうに出れば成功です。</p>  <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/4810.image_141A934E.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/4810.image_5F00_141A934E.png"><img title="image" style="margin-right: auto; margin-left: auto; float: none; display: block; background-image: none;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/4747.image_thumb_2180A654.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/4747.image_5F00_thumb_5F00_2180A654.png" width="431" height="82" /></a></p>  <p>じゃ、一つコマンド打ってみましょう。</p>  <p><font size="4" face="Consolas">Get-AzureVM</font></p>  <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/4341.image_7563A962.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/4341.image_5F00_7563A962.png"><img title="image" style="margin-right: auto; margin-left: auto; float: none; display: block; background-image: none;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/5367.image_thumb_17BB3EDC.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/5367.image_5F00_thumb_5F00_17BB3EDC.png" width="484" height="118" /></a></p>  <p>無事に実行できましたね。以前に比べると簡単に Windows Azure PowerShell を活用できるようになりました。</p>  <h2>※ 補足: 「既定のディレクトリ」について</h2>  <p>さて、WAAD で認証ができるようになったとはいっても、</p>  <p align="center"><font color="#ff0000" size="3">WAAD にユーザーなんか作った覚えはない</font>&#160; </p>  <p>という方が多いのではないでしょうか。実は、この機能を有効に活用していただくために、次のような変更が行われています。</p>  <p>その 1</p>  <ul>   <li>現在のアカウント (管理ポータルにログオンするときに利用しているマイクロソフトアカウントなど) に WAAD のディレクトリ(テナント) がなければ、「既定のディレクトリ」という名前で新規作成。</li> </ul>  <blockquote>   <p>管理ポータルをご確認ください。こんな「既定のディレクトリ」というやつができていると思います。</p> </blockquote>  <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/0508.image_6793F418.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/0508.image_5F00_6793F418.png"><img title="image" style="margin-right: auto; margin-left: auto; float: none; display: block; background-image: none;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/6886.image_thumb_62B1405C.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/6886.image_5F00_thumb_5F00_62B1405C.png" width="628" height="218" /></a></p>  <p>その 2</p>  <ul>   <li>現在のアカウントを、WAAD のテナントに登録</li>    <ul>     <li>既存のテナントがあればそちらに、無い場合は自動的に作成された「既定のディレクトリ」に登録</li>   </ul> </ul>  <blockquote>   <p>私の場合、下図のようにマイクロソフトアカウントが登録されています。<!--EndFragment--></p> </blockquote>  <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/2308.image_0466947C.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/2308.image_5F00_0466947C.png"><img title="image" style="margin-right: auto; margin-left: auto; float: none; display: block; background-image: none;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/67/89/metablogapi/1727.image_thumb_26BE29F5.png" original-url="https://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-67-89-metablogapi/1727.image_5F00_thumb_5F00_26BE29F5.png" width="579" height="167" /></a></p>  <p>「勝手にディレクトリとユーザーなんか作りやがって課金はどうなる！」と思われるかもしれませんが、 WAAD は 500,000 オブジェクトまでは無料、標準状態ではそもそも 150,000 オブジェクト以上は作れないようになっているので、今回自動作成された「既定のディレクトリ」による課金が発生することはありません。</p>  <p>それでは、Windows Azure PowerShellをご活用ください。</p>  <h2>関連情報</h2>  <p><a href="https://www.windowsazure.com/en-us/manage/install-and-configure-windows-powershell/?fb=ja-jp">How to install and configure Windows Azure PowerShell</a></p>  <p><a href="https://weblogs.asp.net/scottgu/archive/2013/10/22/windows-azure-backup-services-release-hyper-v-recovery-manager-vm-enhancements-enhanced-enterprise-management-support.aspx">Windows Azure: Backup Services Release, Hyper-V Recovery Manager, VM Enhancements, Enhanced Enterprise Management Support</a></p>  <p><a href="https://msdn.microsoft.com/en-us/library/windowsazure/dn459835.aspx">Windows Azure SDK for .NET 2.2 Release Notes</a></p>  <p><a href="https://msdn.microsoft.com/en-us/library/windowsazure/hh531793.aspx">Manage Windows Azure accounts, subscriptions, and administrative roles</a></p>  <p>__END__</p>]]></content:encoded>
    </item>
  </channel>
</rss>