AWSの特徴やメリット/デメリット

ディーネットでは、多数のAWS利用実績がありますが、実際に利用してみて特徴的だと感じることをあげてみます。

メリットデメリット
初期費用ゼロ、使った分だけの従量課金情報が多く流れが速い
高いセキュリティアンチパターンでも何となく動いてしまう
高い柔軟性、拡張性
冗長構成をとりやすい
サービス(機能)が豊富

この記事では表にあげたような、AWSのメリットやデメリットについて解説していきます。

メリット1:初期費用ゼロ、使った分だけの従量課金

AWSは初期費用ゼロで利用が可能です。使った分だけの従量課金なので、無駄がありません。

無料利用枠も用意されています。個人でもクレジットカード登録をすれば利用ができるので、簡単な検証であれば無料で行うことが可能です。

過去に弊社で40名程度を対象に、1か月通してハンズオンを実施してもらうイベントを開催しました。ハンズオン実施後は、リソースの削除を行うルール決めをしていたこともあり、月間の利用料は1,000円程度で済んでいます。

企業で利用する場合で、ドル建てのクレジットカード払いは難しい。という場合は、日本円による請求書払いが可能な請求代行サービスを提供している企業も多く存在しています。

AWSの豊富なコストメリット

メリット2:高いセキュリティ

AWSのセキュリティは、AWSと利用ユーザーで責任を共有する「責任共有モデル」が基本的な考え方となります。

AWSは、クラウドのセキュリティに対する責任を持ちます。具体的には、ハードウェアやストレージ、ネットワークなど、お客様へ提供するリソースが対象です。

対してユーザーは、クラウド内のセキュリティに責任を持ちます。提供されたリソースの「使い方」についての責任を持つ形です。

ファイアウォールであるセキュリティグループ自体についてはAWSが責任を持ちますが、その設定内容についてはユーザーが責任を持つ。というようなイメージでとらえてもらえればよいでしょう。

AWSが提供するサービスは多岐に渡るため、提供レイヤによって責任範囲が変わってきます。

サーバーサービスの「Amazon EC2」では、OS以上をユーザーの責任で対策する必要があります。
フルマネージドサービスのデータベース(「Amazon RDS」)では、OSやミドルウェアまでがAWSの責任範囲となります。
ユーザー管理サービスである「Amazon Cognito」であれば、システムまでをサポートしてくれます。

これからもわかる通り、あらかじめ用意されているサービスをうまく利用することで、自社で受け持つ責任範囲を減らしつつ、高度なセキュリティ対策を実現できるようになります。

また、AWSはセキュリティを非常に重視しており、金融機関でも導入が進んでいることからもわかるように、そのセキュリティレベルは非常に高いものとなっています。

メリット3:高い柔軟性、拡張性

AWSでは、非常に多くの種類のスペックと、実質無制限ともとれるほどのキャパシティが用意されています。

そのため、低スペック、最小構成で開発を行い、本番リリースのタイミングでスペックアップ、必要台数を用意することが可能です。また、本番稼働中にリソースが不足している場合は、マネジメントコンソールから簡単にリソースの拡張ができます。

過去のハードウェア調達が必要な時代は、メモリを追加するだけでも、調達に1週間、追加にサーバー停止を伴う1時間の作業時間がかかっていました。それに対してAWSでは、数分でメモリの追加が可能です。もちろんCPUの増強もメモリと同様で簡単にできてしまいます。

メリット4:冗長構成をとりやすい

日本では「サーバが落ちないためにどうしたらいいか?」と考えがちです。

しかしながらAWSでは「サーバは落ちるもの。データセンターは止まるもの。」という考え方が根本にあります。その対策として、「落ちても問題がない構成をとりやすくする仕組み」が随所に存在しています。

自分たちでデータセンターレベルの冗長化をとろうとすると途方もないコストがかかっていきます。しかしAWSでは簡単にデータセンター(AvailabilityZone。以下AZ)レベルの冗長化が可能です。具体的には、EC2を複数のAZに構築して、ELBで負荷分散をするだけで複数データセンター間の冗長構成をとることができます。これを「マルチAZ構成」といいます。

もちろんデータ同期の方法など、利用者が考慮する部分はありますが、データセンターの意識をほとんどせずにデータセンター間の冗長構成を組むことができるのは、大きなメリットになります。

メリット5:サービス(機能)が豊富

AWSには、IaaS、PaaS、SaaSなど様々なレイヤのサービスが存在します。何かやりたい!と思ったときに1から作成するのではなく、AWSのサービスの中から使えるものを探してくるほうがはるかに低コストで実装できます。

ディーネット社内でも、次のような形で活用しています。

  • テレワーク対応として、Amazon Connectを利用したクラウトコンタクトセンターの構築
  • 社内データ活用施策として、Amazon QuickSightを使ったBI基盤の構築

このように、AWSでは様々なサービスを組み合わせていくことで効率的な開発を行うことが可能です。

事例:Amazon QuickSightでBI基盤を構築

デメリット1:情報が多く流れが速い

サービスが豊富という部分の裏返しにもなりますが、AWSに関する情報は非常に多く、日々増え続けています。リリース数も大小合わせると、2020年には2,752回のリリースが行われています。1日10個近いリリースがされている状況です。

最前線でAWSに触り続けることができる環境がある場合は良いですが、そうでない場合は情報のキャッチアップに大きな労力を割くことになってしまいます。

AWSを使うことで空いた人的リソースを本業の事業に費やすのではなく、AWSの情報収集に使ってしまってはせっかくのAWSのメリットを活かしきることはできません。

デメリット2:アンチパターンでも何となく動いてしまう

AWSには、様々なサービスがあり、組み合わせることで効率的な開発が可能です。WEBブラウザ上のマネジメントコンソールで作成できるものも多く、知識があまりない人でも簡単に導入ができてしまいます。

中には避けるべきやり方のアンチパターンも存在しています。アンチパターンを選択することで、拡張性が著しく損なわれたり障害発生や想定外の料金発生に陥ることがあります。

1つのことを実現したい場合に、複数の選択肢がでてくるため、選択肢の良し悪しを把握し、取捨選択するスキルが必要になります。しかしながら、そこのスキルを取得するハードルは意外と高いのが実情です。

つまり、AWSを効率的に利用するには、日々増え続けるAWSのサービスと、基本的なITインフラ、双方に対する経験と知識が必要になります。
社内でこれに該当する人材の確保が難しいときは、AWS公認の技術者集である、APNパートナーの利用を検討してみましょう!
AWSの活用を支援する「APNパートナー」

AWSを使うメリットとデメリットについてまとめてみました。

メリットとしては、「やりたいことを、低コストで、迅速に、しかもセキュアに実現できる。」とう部分ではないでしょうか。デメリットとしては、「便利な反面、いろいろと簡単に出来すぎてしまい、情報が氾濫している」ことです。

AWSでは、1から作るのではなく、数あるサービスをいかに活用していくかが重要になります。ぜひAWSを活用してみてください。