Windows Azure アップデート祭り

先ほどのエントリとも関係ありますが、Windows Azure 管理ポータルその他もろもろアップデートされています。

上述の日本語訳みたほうがわかりやすい気もします。とりあえずわかりますw

 

Cloud Servicesの更新

Cloud Servicesはそんなに大きなアップデートではなくて(涙)、今まで秘密鍵付きのpfx形式しかアップロードできなかった証明書が普通の証明書(.cer)もアップロードできるようになりました。

証明書ページのUploadメニューからできます。

.cerを選択した場合はパスワードで保護する必要がないので、ファイルを選ぶだけですね。

アップロード完了後は通常通り管理することができます。

使いたい場合はサービス定義ファイルに利用する証明書を指定しましょう。

GUIで指定するとこんな感じです。

実際にデプロイして確認すると、ちゃんと.cerな証明書が指定したストアに保存(デプロイ)されます。

これで相互TLSとか、チェーン証明書の配布とかいろいろしやすくなりましたね。

Blob管理の拡張

Blobのコンテンツを直接ダウンロード+プロパティやメタデータの編集が管理ポータル上で可能になりました。

ダウンロードメニューで選択したBlobのダウンロード、編集でプロパティを編集することができます。

 

一部プロパティはアップロード時等でしか設定できないので編集不可ですがだいぶ便利ですね。

言語の追加

管理ポータルで表示できる言語が5言語増えました。それに伴い独立したメニューになりました。

新たな地域でWindows Azure Storeをサポート

22の地域でWindows Azure Storeが利用できるようになりました。今時点で利用できる国は33国ですね。

 

Mobile Services

モバイル向けのアプリに便利なWindows Azure Mobile ServicesがAndroidをサポートするようになりました。Android Client SDKはこちらのGitHubから入手できます。またMobile ServicesのダッシュボードではAndroid向けに簡単なチュートリアルが表示されるようになりました。

Eclipse用のパッケージの雛形がGetできるのですぐに開発はじめられそうですね。ちなみにチュートリアルはこれだけじゃなくて、ちゃんと纏まっていますので安心を。まだ英語しかありませんが。

もちろん他のiOSやWindows Phone、Windows 8向けと同様にPush通知もサポートです。

まだまだPreviewですが、東アジアもMobile Servicesのデプロイ可能地域になったり、iOS開発者向けに素晴らしいビデオシリーズがあったりと結構な気合の入れようです。今後が楽しみですね。

SQL Reporting Services

今のHTML5ベースの管理ポータルで管理できるようになりました。このあたりは蒼の王座さんの 「SQL Reportingのサーバー管理が管理ポータルで可能に!」を見るのがいいかと思います。

Service Bus

ServiceBusのキュー/トピックも管理ポータル側が拡張されました。今まで既定のメッセージ生存期間など作成時に決めたら変更できなかった(気がする)のですが、構成タブで変更できるようになりました。

またキュー/トピック単位で有効・無効・送信は無効・受信は無効など状態を変えることができるようになっています。

何気に便利ですね。

ダッシュボードで見ることができる項目も増えたので必要に応じて表示項目を変えましょう。(同時に6項目までなので注意)

あ、サンプルとかクイックスタートのページが拡充されてるみたいなので、こちらも要チェックです。

※リンク先はもれなく英語ですが。

Media Services

オンデマンドストリーミングに関する監視項目が追加されました。

これでストリーミングの状態もちょっとはわかりやすくなりましたね。今はLive Streamingがないですけど、将来に期待です。

クイックスタートガイドも拡充されて、簡単にアップロードタスクやエンコードタスクのコードを実装することができるようになっています。

アプリケーションキーも埋め込まれてるので、本当に貼り付けるだけ!w

 

Windows Azure Active Directory統合

やっとこさWindows Azure Active Directoryの管理がWindows Azureの管理ポータルに統合されました。ちょっと特殊ですけど、Office 365やIntune、もしくは別途Windows Azure Active Directoryのテナントのユーザーを使用してWindows Azureを契約してるアカウントであれば、Windows Azureの管理ポータルのActive Directoryにエンタープライズ ディレクトリというのが増えます。

従来のACSは「Access Control名前空間」タブのほうですね。

エンタープライズのほうでは既存のActive Directoryドメインとの同期設定やユーザー・グループのメンテナンス、ドメインの管理などが行えます。

あとこれはWindows Azure Active Directory側のアップデートですが、多要素認証(電話/SMSによる追加認証)などもできるようになっています。やったね!エンタープライズで使えないとかもう言わせないですよ!

 

という感じです。

 

あとWebエンドポイントの監視については先ほどのエントリで触れたとおりですね。

とまぁだいたいこんな感じです。\ノ’∀ン ヒャッホウ

[Preview] Webエンドポイントの監視機能

 

さらっとWindows Azureの管理ポータルに機能が追加されました。(まだPreviewですよ)

・Windows Azure Cloud Services、VMs(仮想マシン)、WebSites(Webサイト)のWebエンドポイントをポータル上から監視できます

さっそく見てみましょう。

管理ポータルの「構成」ページ内の監視カテゴリに「エンドポイント」欄が増えています。

 

説明欄には

エンドポイントの監視のヘルプ

エンドポイントの監視を使用すると、HTTP または HTTPS エンドポイントの可用性を地理的に分散した場所から監視できます。最大 3 か所の地理的に分散した場所からエンドポイントをテストできます。HTTP 応答コードが 400 以上であるか、または応答に 30 秒を超える時間がかかった場合、監視テストは失敗となります。すべての指定した場所から監視テストが成功した場合、エンドポイントは利用可能と見なされます。

とあります。

400以上ってざっくりですけど、まぁそんな感じで2つのURLを監視対象として指定できます。

説明欄にもある通り、1つのエンドポイント(URL)に対して3か所からチェックすることができます。4つ目チェックしようとすると怒られます。

 

さてさて、設定してしばらく経てばダッシュボードや監視タブで結果を見ることができます。(監視そのものは5分に1回実行されるようです。)

こんな感じでwebエンドポイントの状態という欄が増えました。問題なければグリーンのチェックで、何か異常な応答だったら(30秒以上かかったとか、ステータスコードが400以上で返ってきたとか)ビックリマークになります。それぞれクリックすると、詳細な結果(直近5回分)が見れます。

 

グラフも応答時間をサマリとしてだしてくれてます。(なんだか微妙な気もするけど)

もちろん監視ページではもう少し詳しく見ることができます。(メトリックの追加でアップタイムも選択できます)

まぁまだプレビューということで一歩足りないところではありますがお手軽に見ることができるのは嬉しいですね。今後に期待です。

2月23日の空は雷雨でした

 

というわけで2月23日は盛大にWindows Azureが落ちてました。正確にはWindows Azure Storageの証明書の問題で、Storageに引っ張られてACS、管理ポータル、Media Services、ServiceBus、Web Sitesなどが軒並みアウトという状況。

ダッシュボードの様子は Windows Azure Armageddon で見れます。(アルマゲドンとか言われてるし)

まぁ自分管理のサービスはなかったにせよ、多数の悲鳴が聞こえてきたわけで、アルマゲドンとか言われるのもわかります。

事の発端というか認識はこのツイートから。

image

 

で。ダッシュボードみたらあれよという感じです。原因はStorageで仕様している証明書の期限切れです。(またか)

 

このあたりPKIやってると基本のキみたいなところですが、どうも手動オペレーションっぽいところはまだまだノウハウたまってないというか共有できてないのか、不十分っぽいですね。これを気によりよくしてもらいたいです。

※誰かが言っていましたが原因がわかっている障害だけにまだましとも言えますが「ダサい」障害なのは間違いない…

細かい対応の経緯とかはこちらで見れます。

Feb 22 2013 8:44PM – We are experiencing an issue with Storage Worldwide and this is impacting all dependent services. We are actively investigating this issue and working to resolve it as soon as possible. Further updates will be published to keep you apprised of the situation. We apologize for any inconvenience this causes our customers.

Feb 22 2013 9:30PM – We identified that HTTPS operations (SSL transactions) on Storage accounts worldwide are impacted. We are actively investigating this issue and working to resolve it as soon as possible. Further updates will be published to keep you apprised of the situation. We apologize for any inconvenience this causes our customers.

Feb 22 2013 9:45PM – Access Control v2, Service Bus, WindowsAzure.com and WebSites services are impacted by Storage service degradation worldwide. We are actively validating the recovery steps to resolve it as soon as possible. Further updates will be published to keep you apprised of the situation. We apologize for any inconvenience this causes our customers.

Feb 22 2013 10:15PM – We are currently validating the repair steps in our test environment. Further updates will be published to keep you apprised of the situation. We apologize for any inconvenience this causes our customers.

Feb 23 2013 12:15AM – We have initiated the recovery on some of the impacted clusters. This is expected to take a few hours. We are also validating faster recovery options. Further updates will be published within 2 hours to keep you apprised of the situation. We apologize for any inconvenience this causes our customers.

Feb 23 2013 2:15AM – The test deployments on two of the impacted storage clusters are making steady progress. We are evaluating accelerated repair options to mitigate the impact as soon as possible. We expect to finalize the repair steps within 2 hours, at which time we’ll be able to provide more details. We apologize for any inconvenience this causes our customers.

Feb 23 2013 4:15AM – The test deployments on two of the impacted storage clusters are making steady progress. We finalized the accelerated recovery steps and will execute them on remaining Storage clusters. Further updates will be published within 2 hours to keep you apprised of the situation. We apologize for any inconvenience this causes our customers.

Feb 23 2013 5:30AM – We executed repair steps to update the SSL certificate and majority of our customers are likely to notice recovery. Further updates will be published to keep you apprised of the situation. We apologize for any inconvenience this causes our customers.

Feb 23 2013 7:30AM – Restoration of Storage service is complete on majority of the clusters in the sub-region and we are monitoring SSL traffic. We will continue to monitor the health of the service and address any intermittent failures before declaring the sub-region fully recovered. We apologize for any inconvenience this causes our customers.

Feb 23 2013 9:00AM – We have executed repair steps to update SSL certificate on the impacted clusters and have recovered to over 99% availability across all sub-regions. We will continue monitoring the health of the Storage service and SSL traffic for the next 24 hrs. Customers may experience intermittent failures during this period. We apologize for any inconvenience this causes our customers.

 

あと話変わりますがWadeが証明書が期限切れかどうか確認するコード書いてるので参考まで。

結局、9~12時間ほど止まってたのかな。今はもちろん復旧していますがだいぶ泥臭い対応したようで、今後恒久対策など終われば公式発表がちゃんとあると思います。

→ RCA (根本原因解析)でました

今回たまたまAvakashのツイートみてわかりましたけど、日本語での対応状況をツイートしたりどこかに載せてもらえると嬉しいですね。

というわけで2月は毎年晴天じゃないAzureさんでした。来年以降は快晴に期待。FeedBackとか手伝えることがあればやりますけども。

Windows Azure Media ServicesがGAしました

GAは唐突に。そう唐突に。

ScottGu’s Blog日本語訳)にもある通り、Windows Azure Media Servicesが一般提供(General Availability)されました。

一般提供が開始されたということは、SLAが付いたということです。ちょっと日本語のフォントがおかしいですがSLAはこちらから入手できます。

※フォント指定しなおしたらちゃんと見えます。

SLAは2種類あって1つはオンデマンドストリーミングの月間稼働時間、もう1つはメディアサービスのエンコードREST APIのトランザクション数のようです。どちらも99.9%を下回ると10%返金のようですね。気になる人はちゃんと読みましょう。

気になるお値段ですが、以下の4種類で変わりますので注意。

メディア サービスのエンコード

とりあえずメディアサービスのエンコードに関しては2013年2月17日までは課金されないようです。課金単位は「処理されたデータ量」で、データの入力とエンコードされたデータの出力両方が対象です。※保存先のストレージとそれにかかるデータ転送料も別途かかります。

最初の5TBまでは 173.95円/GByte。

メディア サービス エンコードの占有ユニット

占有ユニットを使用してエンコードの並列処理ができますが、その占有ユニットあたり8,653.59円/月かかります。ちょっと計算がややこしいようです。

アカウントでプロビジョニングされた状態の占有ユニットの最大数を使用して日割りで計算されます (24 時間単位)。たとえば、11:00 にエンコードの占有ユニットを 5 個購入した後、15:00 にその数を 3 個に減らした場合、その日は 5 個の占有ユニットに対して料金が発生します。23:00 にエンコードの占有ユニットを 5 個購入した後、翌日 10:00 にその数を 3 個に減らした場合、1 日目は 5 個の占有ユニットに対して料金が発生し、2 日目も、最初の 10 時間は 5 個の占有ユニットを所有していたため同様の料金が発生します。

まぁ、注意しましょう、ということですね。占有ユニットを使わない場合はこの費用は掛からないみたいです。

メディア サービス オンデマンド ストリーミング

オンデマンドストリーミングする場合、ユニットあたり17,394.59円/月かかります。アクティブだった占有ユニットの最大数の24時間単位な日割りで計算なのでこちらも注意。またAzureからのデータ送信は別途費用が発生します。

メディア サービスのパッケージ化

パッケージングそのものは無料でOK

というわけで料金詳細はこちら。

ちなみにオンデマンドストリーミング、エンコーディングについては管理ポータルの「スケール」で変更することができます。既定はどちらも占有ゼロ状態なので安心ですね(?)

image

 

Windows Azure Media Servicesを使ったサービスを開発する場合、Media Services libraries for .NET (Windows Azure Media Services .NET SDK)Media Services libraries for Javaの2種類があるようです。JavaのほうはAzure SDKに含まれてるからそっち見てね。とのこと。

Java使えるから一応WIndows/Mac/Linuxで開発できますね。

動画を見るクライアント側のSDKとしてはSmooth Streaming Client SDKがWindows 8用SilverlightとWindows Phone用の2種類、それからOSMF向けPluginiOS Media Player Frameworkが提供されています。

ということで、以下のようなクライアントたちをターゲットに配信できちゃいます。

  • Windows 8
  • iOS
  • Xbox
  • Flash Player (built using Adobe OSMF)
  • Silverlight
  • Windows Phone
  • Android
  • Embedded devices (Connected TV, IPTV)

やったね☆

動画の処理はメディアサービスが行ってくれますが、実際に大量の動画データをAzure側に送り込む必要があるので大変です。そんなときは一括アップロードしちゃいましょう。またUDPを使ったAsperaで高速アップロードも使えるので必要に応じて使いましょう。

というわけで、GAされて一安心。動画配信プラットフォームはSmooth Streaming+Windows Azure Media Servicesでキマリですね。

Microsoft Hosting Solutions ServicesがGAしたよ

以前、「Windows Azureを作ってみた」で紹介したMicrosoft Hosting Solutions Servicesが無事GA(General Availability)されたようです!

( ゚Д゚ノノ”☆パチパチパチパチ

image

 

いわゆるクラウド事業者さん向けの、Windows Azure Webサイトや仮想マシンのホスティング環境を実現させるための機能集みたいなものです。

肝となるのは、すべてのベースとなるWindows Server 2012、ホストマシンを効率よく管理するためのSystem Center 2012(SP1)、それからユーザーにサービスを提供する入り口となる管理ポータルと管理用REST API集の3本です。

それぞれ細かいインストール方法などはMicrosoft Hosting Solutions Servicesのサイトにリンクがあるのでそちらを見てください。

雰囲気としては

こんな感じのインフラがゴールになります。

Multi-tenant PortalってのがWindows Azure管理ポータルっぽい画面ですね。

もちろんホスティング事業者向けなのでテナント別に機能制限かけたりすることもできます。

さぁこれであなたもAzureにならなイカ!

Windows AzureのCloud ServicesでVirtual Network

移行とかでDBはやむを得ずそのままでフロントは頑張った系の構成つくろう、つまり Windows Azureのクラウドサービス(Web RoleとかWorker Role)をVirtual Networkに参加させちゃおうという話です。

ついでに同じVirtual NetworkにWindows Azure 仮想マシンも参加させてサービス間通信もしちゃいましょう。

今回想定しているのはざっくり以下のような構成です。

バックエンドのVMはDBとかまぁそういうのを想定。通信の方向性としては双方向で通信できますが、今回はフロントのWebRoleからVMへのアクセスを想定します。

といっても対してすることは無く。Web RoleなどのCloud ServicesでのVirtual Networkへの参加方法と、VMのVirutla Networkへの参加方法、名前解決についてあたりを書こうと思います。

続きを読む

Windows Azureのホスト名

以前、ロール間通信の話をちょっと書きましたが、なんかもっと簡単にできそうでした。(クラウドサービスが対象です)

Windows Azureのクラウドサービス上で稼働するインスタンスのホスト名は伝統的なピンクぷーどrではなくRedDogの頭文字、RDで始まるランダムなもので、よくわかりませんでした。

ですが、サービス設定ファイル(*.cscfg)のRole要素でvmName属性を使用すると、指定した名前+連番でインスタンスを設定してくれるようです。

サービス設定ファイルの例↓

<?xml version="1.0" encoding="utf-8"?>
<ServiceConfiguration serviceName="WindowsAzure18_45" xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceConfiguration" osFamily="3" osVersion="*" schemaVersion="2012-10.1.8">
  <Role name="MvcWebRole1" vmName="KOSMOS">
    <Instances count="3" />
    <ConfigurationSettings>

以下略 

ほうほう。実際にデプロイしてみましょう。

おお、確かにホスト名がvmNameで指定したもの+連番(ゼロオリジン)です!

ちなみにDNSサフィックスは

02158fc001144d09bf43a37f3660d936.penguindrum.3216464207.asiaeast.internal.cloudapp.net

となってますね。

最初の赤字部分はデプロイID、次の青字部分はクラウドサービスの名前です。asiaeastは配置場所(DC)、internal.cloudapp.netはまぁ固定でクラウドサービスの内部って意味でしょうけど、1つよくわからないのがありますね~。普通に考えるとDC内の何かの(たぶん論理)単位ですね。まぁ自身のDNSサフィックス調べれば生成する必要ないのであまり意味はありませんが。

もちろんクラウドサービス内で有効なだけですけど、ちゃんと名前解決もできる=ポートさえ空いていれば通信ができます。

image

これでHOSTSを弄ったり、変なEndpoint定義したりしなくてもいいですね!!

ちなみに、このvmName属性はSDK1.7以降で使えるようです。いろいろ増えてるんだなぁ~。

参考