オルタナティブ・ブログ > Azureの鼓動 >

クラウド戦役をZガンダム視点でわかりやすく解説するブログ+時々書評。

【重要】Azure課金は今日から。さてここで問題。課金対象になるのは次の図のうちどれ?

»

このブログをアップしているのは日本時間2月1日月曜日午前であるが、
本日よりWindows Azureの課金が開始されるので、すでにインスタンスを
動かしている方は意図しない課金が発生しないようご注意いただきたい。

気づかないうちに課金してしまった方がマイクロソフトも儲かるのでは?
とか邪推されるかもしれないが、Azureチームはそこまでがめつくないので
ご安心願いたい。お客様との信頼関係あってこそのクラウドサービスである。

まず、このブログのタイトルで「やべっ!」と、レンタルDVDの返却日を
忘れていたような焦りを感じた方、まだ大丈夫。理由は3つ。

1.昨年以前に入手した開発トークンで利用していたCTP環境で、
 そのまま放置していた場合、むげに課金されることはない。
 1月4日以降の正式サービス開始以降に、クレジットカード番号を登録して
 移行手続きを行った方のみが課金対象となる。

2.Azureで日付を指定する場合、利用するデータセンターの現地時間が
 基準となるため、日本時間で2月1日になって12時間程度経過しても、
 現地データセンターとの時差で、忘れていた場合のダメージは軽くなる。

3.多くの方が選択したと思われる初期特別提供プランには、25時間/月の
 無償利用枠があるため、シングルインスタンス1つであれば1日以内、
 WebRoleとWorkerRoleを1つずつ動かしていても半日は無償である。

したがって、日本時間2月1日月曜日中にこのブログを読んで気づき、
対策をとられた方は意図せずカードにチャージされることは少ないだろう。
慌てず落ち着いて、しかるべき対応策を講じて欲しい。

と、Azure課金についての注意喚起を行う際に、CPU利用時間に関する
内容に終始しがちなのだが、ストレージやネットワーク帯域なども同じ
ように課金対象となるので注意されたい。特に、開発ポータルでも
別タブ内にあるSQL Azureあたりは忘れがちだ。検証のためにいくつか
DBつくってみようか、といって作成したものがあれば、あわせてDROP
しておくようにしていただきたい。もちろんデータのバックアップをとってから。

さて、ここで問題。

下記4パターンの中で、課金が発生するのはどれ?Azureに慣れている
方でも意外と誤解している場合もあるのであらためて確認願いたい。

1.Production環境で1インスタンスがReady

Clip_image002_2

2.Production環境で1インスタンスがSTOPの状態。
 すなわち実質的に割り当てられたVMのCPUはまったく回っていない

Clip_image004_2

3.Staging環境で1インスタンスがReadyな状態。
 本番環境(Production)はDeployもされておらず全く使われていない

Clip_image006_2

4.Staging環境で1インスタンスがSTOPな状態。
 本番環境もちろん、Staging環境のCPUも動いていない

Clip_image008_2

正解は…

すべて課金対象!
「えーっ?なんで?」という方のために簡単に解説。

まず、課金が発生するタイミングはパッケージのDeployが完了した
タイミングから。Runしたタイミングではないのである。すなわち、
Deployという作業を通じてある程度リソースの占有が発生するため
課金タイミングをDeploy時にしているのである。したがって、STOPの
状態でも課金は発生する。しかもレートはReadyのときと同じだ。

ほぼ同じルールのAmazon EC2派の方は問題ないだろうが、
CPU使用率をカウンターとして課金メーターに利用している
Google App Engine派の方からすると違和感があるかもしれない。

また、ProductionとStagingの課金レートは全く同じである。
Stagingをテスト環境のように使っているとつい無償で使えそうな
錯覚に陥ってしまいがちだが、オンプレミスで考えれば当たり前。
ステージング用に購入したサーバーは無償ではないし、ソフトウェア
のライセンス費用も発生するだろう。よって、ProductionとStagingの
両方を利用している下記のような状態では、2倍の課金が発生する。

Clip_image010_thumb

というわけで、課金が発生しないようにするためには、
下記のような状態が正解。

Clip_image012_2

Production、Stagingともに、Runの状態であればまず
Susupendボタンで止めた上でDeleteで環境を削除。
ここまでしておけば課金されることはない。

なお、一度削除してまたDeployする際に、大容量になる
イメージファイルのアップロードが大変/面倒だという方は、
BLOB領域にあらかじめDeployするパッケージを置いておく
ことをオススメする。Deploy画面ではローカル環境からの
アップロードだけでなく、BLOBにあるファイルの指定も出来る。
初期特別提供プランには、ストレージの無償提供枠も
ついているのでサイズ次第では追加料金なく利用できるだろう。

さて、課金がはじまったことで個人のホビーユースの方は
ちょっとした検証や実験がやりにくくなってしまったかもしれないが、
企業ユーザーの方にはよいことだろう。1月以降環境の仕様自体は
変わっていないのだが、ユーザーが本気モードの人たちだけに
絞られることでパフォーマンス低下のリスクがさらに減る。

さらに、$250/月相当以上をDevelopment Accelerator CORE
およびEXTENDEDの組み合わせで購入した場合には、請求書払いが
可能になっているはずだ。これで、コーポレートカードが支給されて
いない企業のみなさまもより安心して利用できるようになるだろう。
日本におけるクラウドの利用促進において、請求書払い対応は
意外と重要なポイントとなるかもしれない。

なお、CTP環境をそのまま放置するという方、必要なデータが
Azure上にあるようであれば、忘れずにサルベージしておくこと。

Azure_warning

先行してCTP環境でアプリケーションを動かしていた皆様の中には
「クラウド上に蓄積したデータはPriceless」という方もいるだろう。
課金とあわせ、データ消失にも十分注意しながら、引き続き
楽しくAzureライフを送っていただきたい。

Comment(8)

コメント

なす

>よって、ProductionとStagingの両方を利用している下記のような状態では、2倍の課金が発生する

ってどうゆう意味?1日のコンピューティング時間が24hではなく48hになるってこと??
そうゆう説明で詳しくはどこにしてあるのだろう???

ご質問ありがとうございます。
両方ずっと使っている場合、シングルインスタンスの1時間あたりの価格を基準にすると
「1日のコンピューティング時間が24hではなく48hに」なります。
ステージング環境は、デプロイするアプリのバージョンアップをスムーズに
行うための環境として一時的に利用されるのが良いと思います。
課金体系は日本語で下記に説明してますが、わかりにくいですよね…。
http://www.microsoft.com/windowsazure/offers/popup.aspx?lang=ja&locale=ja-JP&offer=MS-AZR-0003P
順次ドキュメントを拡充して参りますので、しばしご容赦くださいませ。

なす

お返事&説明サイトのご紹介ありがとうございます。
日本語の説明ですが...わかりにくいというか...
正直ここまでは読み切れないですね(T.T)
地域の選択もアジアと北米では料金が変わるんだ!
地域選択時にそのことに気付かず、何も考えずアジアを選んでしまった;;
英語のサイト説明はもっと充実しているのだろうか?
もう課金は始まったわけで...わかりにくいでは済まなくなるような...
場合によっては怒りだす人もいるかもしれないですね

6日目にして偶然こちらのエントリーに目が止まり、デプロイしている時間に課金されることを知りました。CPU使用時間という言葉をそのままの意味で捉えてしまっていました。私のように誤解している人間が少数派なら良いのですが・・・。
なお、料金説明のページですが、私もわかりにくいでは済まないのではないかなーと思います。何と言いますか、料金についてきちんと確認せずに軽々しく契約してしまった自分に腹が立つ・・・。

わかりにくい…ですよね。
私も個人的にそう思ってます。力不足ですみません。
コメントありがとうございます。
改善を内部からも継続的に働きかけます。
確かに、CPU使用時間という日本語表現は、客観的に考えて誤解を招きますね。
私も価格案が内部で検討されていた初期の頃勘違いした覚えがあります。
GAEよりEC2が圧倒的なデファクトになれば状況も変わるのでしょうが、
デプロイ時間とか、占有時間とか、わかりやすい表現に帰るなど、
日本側で直近対応可能な解決策を考えてみます。よいアイディアあれば是非に!

わか

azure上でsampleの動作確認を行っおります。
課金は、deployしている時間ということですが、動作確認中のため、頻繁に、deploy,deleteを繰り返しております。
その際の1回のdeploy時間は、例えば、数分程度でも、課金計算上は、1時間となってしまうのでしょうか。
deployの通算(累積)時間ではなく、delpoyの都度、1時間単位で課金されるという理解でよろしいでしょうか。
以上、ご教示ください。

コメント、ありがとうございます。
Yes & No です。ちょっと複雑ですが、正確にお伝えします。
課金は00分から59分までの1時間単位の枠でトラックされます。
なので、0:10分から0:20、0:30から0:40のように使った場合は1時間の枠の中なので
何度デプロイしても1時間なのですが、0:50分にデプロイして1:10まで使用した場合、
0時のスロットと1時のスロットの両方にまたがるため、2時間扱いになってしまいます。
というのが現状の課金ルールです。
わかりやすく記載すべきですよね…。取り急ぎお伝えしておきます。

シン

はじめまして。
MSDNプレミアムにて契約したのですが、
現在のAzureサービスのデータ転送量やインスタンスの利用時間等の利用状況を
確認できるページはありますか?

コメントを投稿する