Windows Azure

Enabling Web Deploy for Windows Azure Web Roles with Visual Studioをざっくり意訳した投稿です。

先週、Windows Azure SDKチームは、Windows Azure SDK 1.4.1 refreshをリリースしました。これは、とても重要です。このリフレッシュ版では、Windows Azure用にVisual StudioでWeb Deployのサポートを追加しました。これは、とても重要です。Web Deployは、開発者がWindows AzureのWebロールのコードを頻繁に変更できるようにします。テストの為に、変更したコードをアップデートするのに5分以上待っていた人には朗報です。機能紹介は、Channel 9ビデオで確認できます。

Web Deployは、開発・テスト用にWindows Azureで動作させているWebロールへ、開発者が簡単に変更の増分だけを送信することができます。新しいパッケージを作成しデプロイすることなく、直接対象のロールに変更を適用できます。Production環境へデプロイする最終パッケージを作成する前に、クラウド上でコードや設定を調整するに最適な方法です。

Web Deployを使用する際の、いくつかの制限事項:

  • Webロールは、必ずシングルインスタンスでなければなりません。
  • Webロールに加えた変更は、一時的なものです。ロールインスタンスが再起動すると、変更はなかったことになります。
  • 開発とテスト目的のみに使用できます。Productionでアプリケーションのアップデートへの使用を考えてはいけません。 SDK refreshのダウンロードは、 Web Platform Installer を使用できます:

Windows Azure

この投稿は、「Windows Azure Traffic Manager Configuration Guid」に記載されている「Best Practice for Hosted Services and Polices When Using Windows Azure Traffic Manager」をざっくり意訳した投稿です。

ホストサービス

サービスは同一サブスクリプションを使用する

Windows Traffic Managerで制御したいすべてのホストは、ポリシーを作成するのと同じサブスクリプションでなければなりません。ポリシーに異なるサブスクリプションのホストサービスを追加することはできません。

Productionサービスのみ使用可能

Windows Traffic Managerで制御できるホストサービスは、Production環境だけです。ステージング環境のホストサービスは、ルーティングに追加することはできません。ポリシーでルーティング制御をしているときに、VIP SWAPを実行した場合、ホストサービスがProduction環境になった段階でルーティングに使用することができます。

ホスト名はわかりやすいものにする

Traffic Managerでポリシーを作成したり編集する際に、追加するホストサービスのDNS名を検索することができます。下の画像の①に文字列を入力すると、②の部分がフィルタリングされて表示されます。(複数あって、特定のDNS名を見つけたいときに使用します。)
image
複数の(たとえば、20個とかの)ホストサービスを使用している状態で、命名が悪いと、ホストサービスを追加するのが難しくなります。別のポリシーに追加してしまうなど、ミスを誘発してしまいます。

1つのポリシーに追加するホストサービスはすべて同じ動作とポートにする

ホストサービスが混在していると、リクエストしたサービスとは異なるサービスをクライアントが呼び出してしまう状態が発生してしまいます。サービスAとBが混在していて、ユーザがAを呼び出そうとしたのに実際にはBが返ってくる状態は、良いとは言えないです。

1つのポリシーに追加するすべてのサービスを同じモニタリング方法を使用する

ポリシーで使用するすべてのホストを監視する場合、一つだけパスかファイルを選択することができます。ポリシーからサービスを1つ移動させたり、サービスを異なる方法で監視すると、常にオフライン表示になるサービスがあるかもしれません。オフラインになっていると、ユーザにそのサービスのIPが返されることは無く、トラフィックがホストサービスに振り分けられることはありません。

ポリシー

ポリシーを変更するよりも、ポリシーを無効にするかホストサービスを無効にする

たいていの場合、ホストサービスを除外したり、ポリシーをオフラインにしたくなることがあるかと思います。そんな時は、ポリシーを変更するよりも単純にホストサービスやポリシーを無効化したほうが良いです。
下の図は、ポリシーの無効化するためのボタンを示しています。

image

Traffic Manager ドメイン

(Traffic上で一意の)プレフィックスをわかりやすいものにする

Traffic Managerドメインは、一意です。ドメインの一番最初のパートのみを設定することができます。

設定出るのは、CTPの前の部分だけです。

image

Traffic Managerドメインは、証明とルーティング目的で使用します。クライアントマシン(エンドユーザ)では、決して使用しないドメインなので、ドメイン名を読みやすくする必要性はありません。しかし、このドメインでポリシーを確認するので、重要です。管理ポータル上で、ほかのドメインから参照できるかを簡単に設定できます。

ドットを使用して、読みやすいドメインを作る

ドメイン名プレフィックスは、ピリオド記号を使用してパーツを分けることができます。

たとえば、メインドメイン名がwww.contoso.com の場合で、ポリシーでアジアとUSとヨーロッパにポリシーを設定した課金サービスに使用する名前には、billing.asia.us.europe.contoso.ctp.trafficmgr.comのようなプレフィックスを設定することができます。しかし、いくつかの制限事項があります。(ピリオドで分割された各部分をラベルと呼称します。 label.label.label.ctp.trafficmgr.com)

  • 各ラベルには63文字しか使用できません。
  • 127以上のラベルを使用できません。
  • URLは全部で263文字でなければなりません。ctp.trafficmgr.comの部分で18文字使用しています。

DNS TTL(Time-to-Live) 生存時間

Windows Traffic ManagerにDNSエントリを更新するためにクエリを、クライアントとセカンダリDNSサーバが、どれぐらいの頻度でクエリを投げるかをDNS Time-To-Liveの値で設定します。

推奨は規定値の300秒(5分)です。値を小さくするとTraffic Managerへのトラフィック量が増え、パフォーマンスへの影響がでてしまいます。

Windows Azure

Windows Azure News from MIX11 – Windows Azure – Site Home – MSDN Blogsをざっくり意訳した投稿です。

ラス・ベガスで開催しているMIX11でWindows Azure platformのいくつかのアップデートを発表しました。開発者のデプロイを早くし、アプリケーションのパフォーマンス向上に寄与し、マイクロソフトやFacebook、Googleなどが提供する主要な認証サービスを使用してアプリケーションにアクセスできるようになります。

新しいサービスと機能

多数のWindows Azureの新しいサービスと機能を今日、公開しました。たとえば次のようなものがあります。

  • Windows Azure SDKを更新しました。IIS Web サーバやWebアプリケーション、Webサイトを簡単にマイグレーションし、管理し配置する為のWebデプロイツールが同梱されています。新しいツールは、VS2010に統合されていたり、Web Platformインストーラーで提供されています。この更新は今日の午後以降提供されます。
  • Windows Azure AppFabric Access Controlサービスを更新しました。 Windows AzureアプリケーションへのエンタープライズディレクトリやWeb認証によるシングルサインオン体験を提供します。
  • Windows Azure AppFabricキャッシュサービスのリリースを30日以内にします。Windows AzureとSQL Azureアプリケーションのパフォーマンス向上につながります。
  • Windows Azure Traffic ManagerのCTP版リリース。Windows Azureの顧客に複数のロケーションを通してアプリケーションのパフォーマンスをもっと簡単にバランスをとれるようにする新しいサービスです。
  • Internet Information Services (IIS) Smooth Streaming用のWindows Azure Content Delivery Network (CDN)のプレビュー版を提供します。 開発者は、Windows AzureストレージアカウントにIIS Smooth Streamingにエンコードされたビデオをアップロードし、Silverlightや iOS 、Androidクライアントにビデオを提供することができます。

Windows Azure Platform のオファー内容の変更

今日、いくつかのオファーの変更を発表しました。変更には次のようなものがあります。

  • Windows Azure特別導入プランの有効期限と無料で使用できるストレージ量、ストレージ転送量、出た転送量をふやします。このプロモーションには、エクストラスモール750時間とスモールサービス25時間と、ストレージ20GBとデータ転送量40GBとストレージ転送量50kを2011年9月30日まで、毎月無償提供します。詳細は、ここを参照してください。
    • 特別導入プランの既存の顧客は、今日から無料でアップグレードできます。ほかのプランを使用している既存の顧客は、特別導入プランをサインアップする必要があります。
  • MSDN Ultimate と Premiumサブスクライバは、Windows Azure用のコンピュート、ストレージ、帯域の特典を強化しました。詳細については、ここを参照してください。.
  • マイクロソフトのパートナー用のCloud Essentials Packでは、エクストラスモール750時間とスモールサービス25時間と、ストレージ20GBとデータ転送量50GBを無償提供します。さらに、Cloud Essentials Packには、他のクラウドサービスであるSQL Azure, Windows Azure AppFabric, Microsoft Office 365, Windows Intune and Microsoft Dynamics CRM Onlineが含まれています。詳細は、ここを参照してください。

今日、MIX11で発表した内容について、さらに知りたい場合は、 プレスリリースを読むか、MIX11 Virtual Press Roomを参照して下さい。 Windows Azure AppFabricの発表についての詳細情報は、 Windows Azure AppFabric blogの"Announcing the Commercial Release of Windows Azure AppFabric Caching and Access Control"を参照してください。

@MIXEvent をフォローするか#MIX11を参照してください。日本では、#mixjpです。

Windows Azure, ダウンロード

Windows Azure MVP がBlogに投稿した「Announcing Windows Azure Migration Scanner」をざっくり意訳した投稿です。

Windows Azure へアプリケーションをマイグレーションするための新しいコミュニティツールであるWindows Azure Migration Scanner(略称:WAMS)をリリースしたことを発表できてとても嬉しいです。WAMSは、ソースコードをスキャンし、潜在的なマイグレーション時の課題を提示します。

wams01

Windows Azure

Windows Azure Commandlets installation Issues with Windows Azure SDK 1.4 and Windows 7 SP1を意訳した投稿です。

Windows Azure SDK1.4をインストールしたWindows 7 SP1にWindows Azure Commandlets(コマンドレット)をインストールすると次の2つのエラーが発生します。

  1. You will get an error that installer is not Compatible with your OS (Windows 7 SP1).
  2. You will get an error that a depend component Windows Azure SDK 1.3 is missing.

Windows Azureコマンドレットの入手:Windows Azure Service Management CmdLets

Windows 7 SP1に関わるエラーの解決方法

  1. C:\Azure\WASMCmdlets\setupディレクトリを開き、notepadで、Dependencies.depファイルを開きます。
    インストールスクリプトからOSバージョンの記載を探します。すると次のように、Windows 7 SP1のビルド番号7601が記載されていないことを確認できます。

    <dependencies>
    <os type="Vista;Server" buildNumber="6001;6002;6000;6100;6200;7100;7600">

  2. OS Type文字列にWindows 7のビルド番号7601を追加します。

    <dependencies>
    <os type="Vista;Server" buildNumber="6001;6002;6000;6100;6200;7100;7600;7601">

  3. ファイルを保存します。

Windows Azure SDK 1.4に関わるエラーの解決方法

  1. C:\Azure\WASMCmdlets\setup\scripts\dependencies\checkディレクトリを開き、notepadeで、CheckAzureSDK.ps1ファイルを開きます。
    Windows Azure SDKバージョン1.3.11122.0038 を探します。

    $res1 = SearchUninstall -SearchFor ‘Windows Azure SDK*’ -SearchVersion ‘1.3.11122.0038‘ -UninstallKey ‘HKLM:SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\’;
    $res2 = SearchUninstall -SearchFor ‘Windows Azure SDK*’ -SearchVersion ‘1.3.11122.0038‘ -UninstallKey ‘HKLM:SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\’;

  2. この文字列を1.4.20227.1419に置き換えます。

    $res1 = SearchUninstall -SearchFor ‘Windows Azure SDK*’ -SearchVersion ‘1.4.20227.1419‘ -UninstallKey ‘HKLM:SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\’;
    $res2 = SearchUninstall -SearchFor ‘Windows Azure SDK*’ -SearchVersion ‘1.4.20227.1419‘ -UninstallKey ‘HKLM:SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\’;

  3. ファイルを保存します。

上記2つを対応することで、インストールエラーを解消することができます。