Azureによる仮想マシンのコントロール
いままでのエンタープライズシステムでは、サーバ自体をMP(Multi Processor)もしくはNUMA(Non-Uniform Memory Access)システムでスケールアップできました。システムの性能要件が増え、高性能化が必要となった場合はスケールアップで対応してきたでしょう。
クラウドでもスケールアップは可能です。
Azureでもいくつかの仮想マシンタイプが用意されています。Azure東日本リージョン(データセンタの集団)でも現在は1core/4Gバイトから最大で32core/448Gバイトも仮想マシンで使用できます。この範囲で今までのシステムと同じように、むしろ、より簡単にスケールアップすることが可能となります。
ただし、32core/448Gバイトでは足りないというユーザーも少なくありません。また、クラウドで使用するのであれば、安価な小型の仮想マシンを必要に応じて追加して行く方が総合的なコストを安価にできます。これに対応するためにはスケールアウト型で複数の仮想マシンをロードバランスで利用できるようにすることで対応できます。
通常、大型の仮想マシンの単価は、小型の仮想マシンの単価より割高です。その意味でもクラウドの世界では小型の仮想マシンをスケールアップさせる使い方が望ましいと言えます。このコンセプトに則って構成されたシステムであれば、逆にシステムの性能要件が減った場合でも柔軟に対応が可能になります。
性能要件が減ればそれに合わせて仮想マシン台数を減らし、減らした仮想マシンを完全停止させる。これにより完全停止された仮想マシンへの課金がなくなりシステム全体のランニングコストを削減できるようになります。これは今までのシステムでは不可能でした。今までのシステムでは購入した
ハードウェア資産は資産焼却が終わるまでコストとして計上するしかありませんでした。
利用者が減っても稼働時間が減ってもその資産は変わらなかったのです。ステートレスでクラウドフレンドリーなアプリケーションを構築することができれば、ニーズに合わせて柔軟なシステム構成が可能となりコストが最適化できます。更にAzureであればオートスケールという標準機能で、その仮想マシンの増減を自動的にコントロールすることも可能となります。
クラウドの恩恵を得るためにはSaaSを活用した方が望ましい
しかし、全体のコスト削減という観点についてクラウドを活用するには、もっとドラスティックな考え方が必要となります。
クラウドは、サービスとして提供するレイヤの管理区分により、IaaS、PaaSそしてSaaSに分類されています。IaaSは仮想マシンレベルをサービス提供対象として、OSからの管理はユーザーに委ねられています。一方、SaaSであれば、アプリケーションレベルまでをサービス対象としており、利用者はアプリケーションの設定変更だけでサービスを使用することができます。つまりクラウドの恩恵を極力得るためにはSaaSを活用した方が望ましいのです。