連載:.NET中心会議議事録 第2回 現場開発者視点で答える「Windows Azure業務アプリ開発の実際」 デジタルアドバンテージ 一色 政彦2010/03/26 |
|
|
■ライセンス形態や課金
一色 今回のセミナーの事前アンケートでは、これまでにないライセンス方式である従量課金を不安に思っている方が少なくないという結果が出ていました。そこでライセンス方式と課金方式について少し説明します。
メインとなるライセンス方式には、「従量課金」と「サブスクリプション」の2つがあります。サブスクリプションは、一定の使用量がパックになったもので、具体的にはWindows Azureコンピュートの1つのインスタンスとAzure AppFabricの利用とある程度の転送料などが1パックになった「Core」と、それにSQL Azureデータベースが付く「Extended」があります。基本的には、サブスクリプションのCoreかExtendedかを選べば、費用を(比較的)安く抑えられるようになっています。
このほかにもキャンペーンとして実施されているライセンス方式が用意されています。1つが月間25時間まで無料の導入特別プランです。25時間では実用は不可能でしょうが、ちょっと試してみたいというときに利用するとよいでしょう。MSDNサブスクライバ向けの無償のプランです。これはサブスクリプションのExtendedとほぼ同じようなパッケージ内容になっています。
●Windows Azure課金方式の選択
新野 ありがとうございます。ここはディスカッションというよりも、実用経験のある市川さんと橋本さんに、実践的なアドバイスをお聞きしたいと思います。現状、課金についてどう考えているのでしょうか? エンド・ユーザー企業向けにクラウドを活用してシステムを組むときには、どういうライセンス方式を選択すればよいのでしょうか?
市川 費用を最小限に抑えるポイントは、ある程度、どのようなアプリになるかが見えてきた段階で、MSDNサブスクライバ向けの無償枠などを有効に活用して、実際に本番Windows Azureで運用してみて「どのくらいのリソースが必要になるか」を確かめることです。もちろん机上でも計算できますが、実際に運用してみないと、実際にどうなるのかは正確には分からないからです。
例えば想定される画面数とワーク・ロードで、3、4日〜1週間ほど運用してみれば、1カ月でどれくらいの使用量になるかが推測できるようになります。そこから、サブスクリプションをいくつ契約すればよいのか、それとも従量課金の方が安くなるのかを計算し、そのアプリにとっての最適な構成を決定するとよいでしょう。
ライセンス形態の選択に関しては、まだボリューム・ライセンス方式は開始されていないので、従量課金か、月額固定のサブスクリプションかになります。ただし、会社にとってはクレジット・カードではなく、銀行振り込みができるかどうかもポイントになります。現在はサブスクリプションでのみ、一定の料金(およそ2万5千円)を超えて支払うことを宣言すると、銀行振り込み(=請求書払い)が可能になります。
砂金 請求書払いは、日本でクラウド・プラットフォーム事業を営むには大事なポイントです。Amazon EC2の開発コミュニティで議論されていたことですが、クレジット・カード決済の場合、スケールアウトが必要になってインスタンスを増やしていくと、担当者が使用しているクレジット・カードの上限額(例えば60万円など)に達してしまい、料金が決済されず、サービスが停止されてしまう可能性があります。カード決済が面倒という理由だけでなく、こういった理由からも請求書払いは必要と考えられます。
●従量課金で実際にかかる金額の目安と支払い代行
橋本 従量課金で実際にどれくらいの費用になるかについては、まず下記の料金表をご覧ください。Windows Azureコンピュート(Small)の運用が8千円、ストレージ・サービスやSQL Azureを利用する最小構成では、月々1万5千円ぐらいになります。
日本円 | 一月換算 | |||||
Windows Azure | コンピューティング(時間) | S | 11.76円 | 8,640円 | ||
M | 23.52円 | 17,280円 | ||||
L | 47.04円 | 33,840円 | ||||
XL | 94.08円 | 67,680円 | ||||
ストレージ(GBytes/月間) | 14.70円 | 147円 | ||||
ストレージ・トランザクション(10,000回) | 0.98円 | 98円 | ||||
Azure AppFabric | アクセス コントロール(100,000トランザクション) | 195.02円 | 不明 | |||
サービス バス | 従量課金モデル(1接続) | 391.02円 | 不明 | |||
パック・モデル(5接続) | 975.10円 | 不明 | ||||
SQL Azure | Web Edition(1GBytes) | 979.02円 | 979.02円 | |||
Business Edition(10GBytes) | 9,799.02円 | 9,799.02円 | ||||
データ転送 | 北米およびヨーロッパ | 受信(GBytes) | 9.80円 | 980円 | ||
送信(GBytes) | 14.70円 | 1,470円 | ||||
アジア太平洋 | 受信(GBytes) | 29.40円 | 2,940円 | |||
送信(GBytes) | 44.10円 | 4,410円 | ||||
Windows Azure Platform料金の参考資料 |
課金体系は「シンプルに作られている」といわれていますが、現実にはこの従量課金体系をエンド・ユーザー企業に「理解してください」とお願いするのはかなり難しいと考えています。従って、「顧客に提供するシステム・サービスの中に運用費を含めてしまい、運用と課金の詳細はSIが管理する。つまり課金を代行する」というのが、SIにとって最も適切な手法だと考えています。
実際、エンド・ユーザー企業にとっては、システムがAmazon EC2やWindows Azureなどのクラウドで動いているのか、SI保有のデータセンターで運用されているのかが重要なのではありません。顧客にとっては、システム・サービスが滞りなく受けられることが重要です。ですので、わたしの場合は、「お客さまのシステムに最適だと考えられるプラットフォームで運用します」と説明しています。実際に運用するプラットフォームの1つとしてWindows Azureがベストな場合は、それを利用しています。
もし顧客が課金部分を管理するとなると、「Windows Liveアカウントを取ってください」「クレジット・カードの情報をお知らせください」などをお願いする必要が発生して、かなり面倒になるだろうと思います。
砂金 請求書払いは、こういったエンド・ユーザー企業の請求を取りまとめて支払う場合にも便利です。
なお、今回の議論でいう「ライセンス形態」とは、正確には「サービス料金」です。サービス料金の中に、ソフトウェアの利用ライセンスが含まれています。「課金体系が複雑」というご意見がありますが、わたしは複雑とは思っていません。これまでのように、Windowsサーバを立てて、クラスタを組んで、フェイル・オーバー用のインスタンスもあって、さらにHyper-Vも導入したときにCAL(=クライアント・アクセス・ライセンス)はどうなるかを計算するよりは、はるかにシンプルです。Windows Azure Platformでは、足し算と掛け算で見積もりができます。複雑というよりは、未経験のため「想像が付かない」ということで不安になっているだけだと思います。
橋本さんが資料で示されたように、大きく課金額が変動するのは、データ・アクセスの部分です。例えば携帯電話でいうところの「パケ死」するくらいにデータ転入/転出があると、(そのデータ転送量に応じて)毎月大きく変動します。これを除けば、だいたいの請求金額は予測できます。事前に計算した金額と大きく異なる料金が請求されることはあまりないだろうと思います。
●CPU利用量に従った課金の可能性
会場 質問があります。Windows Azureでは、CPU利用量ではなく、インスタンス数に対する課金になっているので、たまにしかアクセスのない小規模なWebアプリでも料金が高くなってしまいます。CPU利用量に従った課金の可能性はないのでしょうか?
砂金 残念ながら、CPU利用量に沿った課金の計画はありません。
しかし見方を変えて、1つのアプリや1人でインスタンスを占有するのではなく、複数のアプリや人で1つのインスタンスを共有する方法も考えられます。こうして料金を割り勘にすれば、ひとりひとりの料金負担は軽減できると思います。何も1つのアプリのために、必ず1つのロール・インスタンスを用意しなければならないわけではありません。
また、1カ月当たり25時間まで無償の導入特別キャンペーンが、現在提供されています。これは、1つのWindows Liveアカウントに対して25時間割り当てられます。だとすれば、Windows Liveアカウントを30個ぐらい用意して、順繰り順繰りに31日間使うと、1カ月間無償になるのではないでしょうか。
会場 (笑)
砂金 当然、アカウントが異なればサービス名が変わってしますので、DNSサービスのCNAMEをその都度設定し直さなければならないという問題もありますけれども。手間ひまかければ何とかなるかもしれません。
あと、MSDNサブスクリプションを何個も契約されている会社であれば、会社の購買部に相談するなどして、その会社が持っているMSDNサブスクリプションに付属するWindows Azureの1カ月分の無償枠を、ぜひ有効に使い切ってください。
●Windows Azureにおける無料クォータの可能性
デジタルアドバンテージ 一色 政彦 |
一色 多くの人にとって関心があるテーマだと思いますが、「無償クォータの可能性」について補足しておきます。Google App Engineでは、一定の使用量を超えなければ課金されない無償クォータが提供されています。これと同じサービス内容の提供の可能性を、先ほども話に出したスティーブ・マークス氏に直接尋ねてみました。その返答はこうでした。
「Google App Engineの場合、もともと検索サービスのために構築されたデータセンターの中で、余剰スペースを有効活用する形でクラウド・プラットフォームが実現されています。それに対してWindows Azureの場合はクラウド・プラットフォーム用に新たなデータセンターを世界中に次々と立ち上げており、マイクロソフトはすでに多額の投資をしているわけです。そのため、どうしても費用をゼロにはできません。」
そういう理由から、無償クォータは現時点で提供されていないし、今後の提供の可能性も低いそうです。もちろんそれでも、MSDNサブスクライバ向けの無償枠や25時間の無償枠も提供されていますので、個人的には「マイクロソフトは頑張っている」という印象を持っています。
新野 ありがとうございます。それでは次のテーマに移ります。
INDEX | ||
[連載] .NET中心会議議事録 | ||
第2回 現場開発者視点で答える「Windows Azure業務アプリ開発の実際」 | ||
1.各社のクラウド・プラットフォームの比較 | ||
2.なぜWindows Azureを使うのか? | ||
3.Windows Azureのセキュリティ・障害補償とサポート | ||
4.ライセンス形態や課金 | ||
5.Windows Azureに関する性能 | ||
「.NET中心会議議事録」 |
- 第2回 簡潔なコーディングのために (2017/7/26)
ラムダ式で記述できるメンバの増加、throw式、out変数、タプルなど、C# 7には以前よりもコードを簡潔に記述できるような機能が導入されている - 第1回 Visual Studio Codeデバッグの基礎知識 (2017/7/21)
Node.jsプログラムをデバッグしながら、Visual Studio Codeに統合されているデバッグ機能の基本の「キ」をマスターしよう - 第1回 明瞭なコーディングのために (2017/7/19)
C# 7で追加された新機能の中から、「数値リテラル構文の改善」と「ローカル関数」を紹介する。これらは分かりやすいコードを記述するのに使える - Presentation Translator (2017/7/18)
Presentation TranslatorはPowerPoint用のアドイン。プレゼンテーション時の字幕の付加や、多言語での質疑応答、スライドの翻訳を行える
|
|
- - PR -