2014年3月20日木曜日

経営者にも分かるAmazon Web Services (AWS)の利点

IT企業の経営者といっても全員が技術者であるわけではありません。

そうした方々はAmazon Web Services (AWS)の利点があまり深く理解できず、とりあえず安いからと適当なVPS, ホスティングや他社のクラウドを選んでしまうことが多いようです。

しかし、よほど予算に強い制約がある場合や、特殊な要件を除けば、現在ではAWSがファーストチョイスであることに疑問の余地はありません。現時点でAWS以外のクラウドやホスティングを選択する理由はないでしょう。

AWSは、他社とは異次元の圧倒的な高性能クラウドなのです!

なぜAWSを選ぶべきなのでしょうか。その理由は3つあります:

1. メンテ費用が下がる
2. 高い信頼性が容易に実現できる
3. 多機能によるエンジニアリングコストの削減


まずメンテ費用が下がるということですが、OS陳腐化に伴うシステム移行費用(数年間で数百万円以上)を無くせること、日々の保守作業を容易にできることの二点があります。

Amazonは独自のAmazon LinuxというOSを持っており、それを使うことでAmazon EC2の仮想OSとの適合性が保たれ、利用を続けたままで自動的にOSのアップデートをしていくことができます。

そのため、OSが陳腐化することなく、OSのアップデートに伴う移行作業などのメンテ作業を大幅に減らすことができます。システムの移行作業はエンジニアが数人月かかりきりになることも珍しくなく、そうなると数百万円の支出になります。

またサーバーの停止や故障が生じたときもエンジニアの手を借りることなく、簡単にウェブ上からサーバーの再起動や別サーバーへの移行などが行えますので、保守体制も縮小することができます。

サーバーのフルバックアップというと、通常はエンジニアが頑張って手作業でやるか、高価なハードウェアやソフトウェア(数百万円クラス)を購入して行う必要があります。しかし、Amazon EC2ならそれもワンクリックで行うことができます。


高い信頼性が容易に実現できるという点ですが、AWSでは様々な信頼性向上の仕組みを用意しています。

Amazon RDSでは複数データセンターにまたがるデータベースの冗長化(リアルタイム複製)と自動切り替えを標準でサポートしています。

いまやデータベースを運用すること自体は難しい作業ではありませんが、データベースの冗長化と自動切り替えを実現するとなると、一般のエンジニアから見ると、手間のかかる厄介で難しい作業です。

またAmazon EC2ではAmazon EBSという仕組みでサーバーのハードディスクをサーバーから切り離して運用することが可能です。そうすれば、もしサーバーが故障しても、すぐに同じディスクの内容で別サーバーから起動することができます。

先ほど述べたようにサーバーのフルバックアップも簡単に行えますし、データベースのバックアップも自動で確実に行うことができます。これだけでもシステムの信頼性が大幅に向上することは明白です。通常の技術者によるオペレーションでは、必ずミスが付き物ですから。


AWSの持つ圧倒的な多機能性は、エンジニアリングコストの大幅な削減につながります。

DynamoDB, ElastiCache, Elastic Load Balancing, Auto Scalingなど、エンジニアが手放しで多くの機能を利用することができるため、貴重なエンジニアの時間を本来の価値ある業務に注力させることができます。

こうした機能は、とくにゲームやソーシャルや金融などの高負荷なサービスを開発するには必須といえます。これを自社でエンジニアが頑張って運用するのと、Amazonにお任せで運用するのでは、開発スピードに大きな差がついてくるでしょう。


AWSを他社クラウドやVPSと比較して「割高」というのは、全く間違っています。

AWSは他社と比較しようが無いほどの高機能を備えており、値段だけで比較の対象とできるようなものではありません。

AWSがもたらす中長期的なコスト削減効果と信頼性向上を計算にいれた上で比較検討するべきです。