目次
クラウドサービスによって「システム構築の苦しみ」から「システムを組み合わせる自由」に変わる
前回はクラウドサービスの課金体系・支払方法について、ポイントを絞って説明しました。この記事でクラウドサービスは「買い切り」ではなく「借りる」という考えであることはご想像できていると思います。今回は、「クラウドサービスを借りる」という視点から、システムリリースの早さと安さについてAmazon社の「Amazon Web Services(通称:AWS)」、Microsoft社の「Azure」、Google社の「Google Cloud Platform」を中心に、オンプレミス(自社でサーバー環境を構築・管理する方式)と比較して説明したいと思います。
クラウドサービスは「完成されたサービスを借りる」という考え
豊富なバリエーションから用途に合わせて選ぶ
オンプレミスでサーバー環境を構築しようとした時、ハードウェアの調達、ソフトウェアの設定、そして、サーバーを置くための場所が必要でした。しかし、クラウドサービスの場合は、豊富なバリエーションからシステムの要件や処理性能に見合ったサービスを選択するだけです。
オンプレミスでサーバー環境構築するメリットとして、ハードウェアの性能やOSバージョンを細かく設定できることが挙げられますが、クラウドサービスも非常に多くの組み合わせから選択することができます。下記のイメージはAzureの仮想マシンというサーバーサービスです。見ての通り、パソコンのスペック表のようにCPU(コア)、メモリ(RAM)、ディスクのサイズが組み合わされています。この組み合わせが処理用途や性能ごとに何十種類と用意されています。また、OSについても細かいバージョン選択が可能なため、ほとんどのシステム要件に適合すると思います。
オンプレミスのサーバー環境の構築の場合、非常に多くの技術と時間が必要でした。しかし、クラウドサービスはインターネットショッピングのようにブラウザから好みのサービスを選び、必要最低限の設定を行えばサーバー環境が1時間も掛からずに用意できてしまいます。そして、大きなサーバーを置く専用の場所も必要ありません。
使えなければ捨てればいい!?
オンプレミスでサーバー環境のハードウェアは非常に高価なことは言うまでもありません。この高価なサーバーを購入して「やっぱ使えませんでした!」は冗談になりません。そのため、ハードウェアの購入には、非常に厳密な事前調査が必要でした。しかし、クラウドサービスは「買い切り」ではありません。使えなければ早急に諦めて、サービスを停止、または削除すれば被害は最小限で済みます。
そのため、クラウドサービスは、ある程度のサービスの調査が完了した時点で試用した方が効率的です。その方が長い時間を掛けて厳密な事前調査をするより、多少のサービスの使用料金が掛かっても、より実態に合ったサービスの調査ができ、人件費を加味すればコストが抑えられるはずです。
また、クラウドサービスには下記のような無料利用枠が充実しているのも魅力的です。
- AWS:サインアップしてから12か月間の一部サービスが無料
- Azure:$200のクレジット(一部制限あり)
- Google Cloud Platform:サインアップしてから60日間に$300のクレジット
クラウドサービスは早くて安いのに安定している
クラウドサービスは早くて安いことは、今までの説明でご理解いただけたと思います。しかし、早くて安いからと言って不安定なサービスでは意味はありません。クラウドサービスは、全てのサービスで365日24時間の稼働に耐えられる耐久性を標準で持っています。
クラウドサービスは、1つのサービスをサーバー群で冗長化して提供しています。そのため、クラウドサービス内でハードウェア障害が発生しても自動的に正常なハードウェアに切り替えてくれます。このような冗長化システムをオンプレミスで構築しようとした場合、複数台のサーバーを用意する必要があり、非常にコストがかかります。しかし、クラウドサービスの場合は、月に数百円しか掛からないサービスでも冗長化が行われています。
下記はAmazon S3というクラウドストレージサービス(クラウド上のデータ記憶サービス)のイメージです。このサービスは、東京リージョン(東京近辺に構築したクラウドサーバー群)を使用した場合、月$0.033/GBとう低料金ですが、耐久性が99.999999999%とオンプレミスでは実現できない値になっています。これは、天災によって不測の事態が起きた時も稼働し続ける耐久性があるという事を意味しています。
スモールスタートから始められる手軽さ
システムによってはリリースしてから何年も稼働し続けるシステムもあります。オンプレミスの場合、毎週数時間のメンテナンス時間の中でソフトウェアの入れ替えは出来ても、ハードウェアの入れ替えは非常に困難です。そのため、何年も動くシステムのサーバー構築には、将来の処理性能に耐えれる高価なハードウェアを導入していました。しかし、これには非常に無駄がある場合があります。
ソーシャルゲームなどの場合、サービス開始はユーザー数が少ないためシステム負荷が少ないため、必要とされる処理性能は低くて済みます。しかし、オンプレミスのサーバーは、将来のユーザー数が増えシステム負荷が増えた場合を想定して導入しているため、サービス開始当初は、サーバーの性能が余ってしまい非常に勿体ない状態になります。
しかし、クラウドサービスのサーバーサービスやデータベースサービスの場合、インターネットの操作画面などから簡単にサービスの処理性能を上げることが可能です。そのため、システム負荷を監視して、必要な処理性能に合わせて、段階的にクラウドサービスのサービスの処理性能を上げることが可能です。この処理に掛かる時間が数時間で完了するサービスの場合、夜間メンテナンスのタイミングなどでも対応可能です。これによって、システムリリース時のシステム運用コストを大幅に削減することが可能になります。
クラウドサービスのサービスを知ることがシステムリリースの早さと安さに繋がる
クラウドサービスには、一般的に知られているサーバーサービス、データベースサービス、クラウドストレージサービスなどの他に、マシーンランニングサービスやメッセージ送信サービス、IoTサービスなどもあります。これらのサービスをシステムの中に組み込んで、可能な限りシステム構築とプログラミング作業を減らすことがシステムリリースの速さに繋がります。また、これらのサービスの機能や特性を知ることで使用料金を抑える手段が見えてくると思います。
次回は、クラウドサービスで必要な技術者について記載しようと思います。
連載:経営者のためのクラウド講座
- クラウドを使えない大企業は、ベンチャー企業と戦えるのか
- クラウドサービスの課金体系・支払方法は複雑
- クラウドサービスのシステムリリースの早さと安さの秘密 (本編)
- クラウドサービスのシステム開発に求められる技術者とは
- クラウドストレージによって安く・安全にデータを保存する
- クラウドサーバーはアイディア次第で使用用途は無限大
- クラウドデータベースは高ければ良いって物ではない! 特徴を見極める必要がある
- AWS × Azure × Google Cloud Platform を様々な角度から評価 ~AWSは絶対王者なのか?~
- クラウドサービスのサーバーレスは銀の弾ではない
- クラウドサービスの機械学習サービスの整理