そんな折、とあるプロジェクトでAWS(Amazon Web Services)を使用しました。AWSを使用したことで、今までとは比べ物にならないほど迅速にサービスを展開することができたのです。
簡単にまとめます。
・AWSはクラウドコンピューティングサービスです。
・コマンドライン、WEBインタフェース、SDKで各サービスを迅速で操作できます。一例としては、10分で1つのLinuxサーバを立ち上げることも可能です。
・独立したサービスではなく、様々なサービスの集合体です。
・類似したサービスとしては、Microsoft Azure、Google Cloud Platformなどがあります。
・信頼性、安全性が高く、かつ必要コストも最小限です。
AWSの世界的なインフラストラクチャは、障害に対する備えと使いやすさを実現するために特殊な構成が組まれています。「リージョン」と呼ばれる物理的離れた領域の接続、それらリージョンを構成するデータセンター「アベイラビリティーゾーン (AZ) 」から構築されています。
アベイラビリティゾーンは「トランジットセンター」を介して、一般的なインターネットに接続されています。
「リージョン」「アベイラビリティゾーン」「トランジットセンター」はそれぞれ独立しているので、もしどこかに障害が発生しても他方に影響することはありません。現在のAWSは、全世界20の地理的リージョンで運用されています。

AWSのサービス・プロダクト

計算資源 – Amazon Elastic Compute Cloud(EC2)
EC2は仮想サーバーを提供するサービスです。バーチャルサーバーにメモリ、CPU、ストレージなどの資源を簡易に選択できて、最適に処理できます。おそらく業務上で一番接することが多いのがこのサービスです。
EC2には下記の特徴があります。
スケーリング
スケーリング Up/Down : RAM、CPUを上げる/下げる
スケーリング Out/In : インスタンス数を上げる/下げる
セキュリティ
プライベートIP設定可能
セキュリティグループ設定可能
コスト
On-Demand Instance: 使用分ごと料金を支払います。
Reserved Instance: 一部を前払いにすることができます。その分の支払いは、先述のオンデマンド料金に比べて大幅な割引価格 (最大75%)になります。
Spot Instance: AWSの予備インスタンスを安い金額で入札できます。ただ、いきなり回収される可能性が高いので注意が必要です。
Elastic Load Balancing
Elastic Load Balancing (ELB)とはインバウンドトラフィックを自動的に各インスタンスに配分します。
Amazon Relational Database Service(Amazon RDS)
クラウド上のリレーショナルデータベースのセットアップ、オペレーション、スケールが簡単になります。
・Amazon RDSを利用すると運用時間を削減できます。例えば、バックアップ、パッチ適用、スケーリング、レプリケーションなどを自動的にやってくれます。
・Amazon RDS は、メモリ、パフォーマンス、または I/O に最適化されたいくつかのデータベースインスタンスタイプで利用でき、Amazon Aurora、PostgreSQL、MySQL、MariaDB、Oracle データベース、SQL Server など、6 つの使い慣れたデータベースエンジンから選択できます。
Networking – Amazon Virtual Private Cloud(VPC)
ユーザーが定義した仮想ネットワーク(VPC)内にAWSリーソスを設定し、連携することが可能です。
・ネットワークの全部をコントロールできます。例えばIP範囲、Subnet、Route Table、Gatewayなどです。
・セキュリティーレイヤーにはインスタンスなどへのアクセスを強化・拒否するため、ALCsとセキュリティグループを設定することができます。
・VPCとVPC、VPCとデータセンターは連携することが可能です。
Amazon Simple Storage Service(Amazon S3)
Amazon S3はインターネット用のストレージサービスです。
Amazon S3 のウェブサービスインターフェイスはシンプルで、いつでも、ウェブのどこからでも容量に関係なくデータを格納および取得できます。
S3の種類は複数が提供されています。
・スタンダード:デフォルトのストレージクラスです。よくアクセスするデータを保管します。
・スタンダード-低頻度アクセス(Standard-IA):あまりアクセスしないデータを保管します。スタンダードより安価ですが、データを取り出す時に料金が発生します。
・アーカイブ(Glacier):保存用です。リアルタイムにアクセスしないデータを保管します。金額が安いです。
CloudWatch
Amazon CloudWatch は、AWSクラウドリソースとAWSで実行されるアプリケーションのモニタリングサービスです。Amazon CloudWatch を使用してメトリクスを収集/追跡、ログファイルを収集してモニタリングし、アラームを設定できます。
その他
上記に紹介した以外にも、たくさんサービスがあります。インディバルではRoute53(DNSサービス)、Elastic Cache(キャッシュサーバー)、Code Commitなども活用しています。
AWSのサンプル構成
以下の構成に、簡単なWebサービスの構成が表現されています。
EC2 インスタンス、RDS、Elastic Cache、Elastic Load Balancingが利用されています。

最後に
この記事では本当にざっくりとAWSについてまとめましたが、みなさんになんとなく理解していただければ幸いです。
執筆者プロフィール
私はベトナム出身で、大学を卒業して来日しました。
在日、エンジニア業界とも4年目になりました。
趣味はスポーツと飲食です。( ´∀`)
この記事は二か国語で執筆されています。よろしければベトナム語版もチェックしてみてください!
Amazon AWS là gì? Tính năng cơ bản và đặc trưng