「AWSを導入したらコストが抑えられる!」と一概に言うことはできません。
高可用性を有した24時間稼働システムを余裕のあるスペックのインスタンスタイプを用いて構築すると、寧ろ高くついてしまうことさえあります。
以下にAWSを新規導入する上で理解しておく必要がある点についてまとめてみたいと思います。

1.コスト

・初期コスト

初期費用はかかりませんが、ユーザがAWSの各サービスや設計思想を理解する為のコストが発生します。
インフラ担当だけでなく、アプリケーション開発者にも、ステートレスなシステムの設計思想について理解をしてもらい、それを活かした構築をすることができれば、AWSのメリットを最大限まで享受することができます。
構築のみに留まらず、オンプレミス環境とは異なる運用設計も必須となります。
ユーザ管理、バックアップ管理、監視、構成管理、変更管理等を考慮すると、初期コストは決して小さくはないと考えるべきです。

・保守コスト

初期設計を上手にやれば運用経費削減、運用負荷低減が可能ですが、計画なしに導入しても決して上手くは行きません。
台数、起動時間、インスタンスタイプは必要最低限としておき、必要に応じてスケールするよう設計することで、大幅なコストダウンにつなげることが可能です。

・従量課金

最低限のリソースを用いてシステムを構築することが大原則となる為、些細な追加要件が月額利用料に影響を及ぼす可能性があります。
オンプレミス環境と比較して、インフラ設計とアプリケーション設計がより密接な関係となっているとも言えます。
インスタンス数の増加、起動時間の延長、データ通信料の増加には注意が必要です。

2.可用性

・サービス可用性

物理サーバと比較すれば、サービス可用性を高めることが容易ですが、サービス可用性と月額利用料は表裏一体である為、事前にサービスレベルについて合意しておくことが非常に重要です。

・データ可用性

S3等のサービスを利用すれば、データ可用性を確保することも容易です。
ストレージ費用については、安価な料金設定(容量だけでなく、ダウンロード通信にも課金が発生することには注意が必要)となっている上、従量課金の為、オンプレミス環境と比較して費用面でのメリットを享受しやすいと言えます。
容量はほぼ無制限に利用できる為、事前のサイジングをする必要が無い点も大きなメリットです。

3.セキュリティ

・共有責任モデル

まずはAWSの責任共有モデルについて理解しておく必要があります。
原則OSから上はユーザ責任で管理する必要がありますが、物理環境を含めたハイパーバイザーより下位の領域はAWSが最優先事項として対応しています。
AWSの共有責任モデル

・運用設計が重要

OSから上の領域はユーザ責任でセキュリティを担保する必要があります。
IAMやSecurity Group等のAWSサービスを利用することはもちろんですが、セキュリティを意識した運用設計が非常に重要になります。
オンプレミス環境であれば、パスワードや秘密鍵が入手できたとしても、社内ネットワーク環境に入ることができなければ、簡単に侵入することはできませんでしたが、クラウドサービスでは物理的な防御が存在しない点に注意が必要です。

4.マネージドサービス利用(EC2を使うか否か?)

EC2環境を利用すれば、概ね必要なシステムを如何様にも構築可能ですが、それではAWSサービスの恩恵を十分に受けることはできません。
自力で構築、運用する機能は可能な限り減らし、AWSのマネージドサービスを利用した方が、より可用性が高く、よりセキュアなシステムとすることができ、 トータルコストも抑えらえる場合がほとんどです。
※ベンダーロックインに繋がることは否めません

素晴らしいAWSサービスを活用する為にはユーザがそのサービスを理解することが不可欠です。
今後もその為に必要となる情報を発信し続けていきたいと思います。

TOP