AWSを座学で勉強している中で、EC2及びEC2にアタッチされるEBSと、S3についてその料金やレプリケーションについて、混合してしまう部分があるのでまとめてみたいと思います。
タイトルでうまく表現できませんでしたが、今回は次の切り口でそれぞれの機能についてその内容を整理したいと思います。
・配置される場所
・レプリケーション、冗長化
・料金
EC2が何か、S3が何かということは割愛したいと思います。
結論
今回まとめる内容を一括で表にするとこんな感じです。
AWSリソース | 配置される場所 | レプリケーション/冗長化 | 料金 |
EC2(EBS) | AZ | データセンター、サーバー | 自分自身のAZ外へデータ転送する時 |
S3 | リージョン | AZ | 自分自身のリージョン外へデータ転送する時 |
それぞれ詳しく見ていきます。
配置される場所
まずは、EC2及びS3がAWSクラウド内のどのレベル、領域で作成される、管理されるサービスなのかを整理します。
EC2
EC2は、アベイラビリティゾーン(AZ)に配置されるモノと考えます。
実際にEC2作成画面でネットワークを指定する際に、VPCとサブネットを指定します。このサブネットはAZを指定して作成されるため、EC2はサブネット、つまりはAZに配置されるモノという理解をすると良いです。
S3
S3は、リージョンに配置されるモノと考えます。
実際に、S3作成画面では、現在選択されいるリージョンがそのまま採用され、そのリージョンにS3バケットを作成する手順となっています。
レプリケーション、冗長化
続いて、それぞれのサービスが配置された後のレプリケーション、冗長化について整理します。
一言でいえば、配置されるレベル、領域の1つ下の概念でレプリケーション、冗長化されます。
EC2(EBS)
EC2というよりは、EC2にアタッチされるEBSのレプリケーションについての話です。
EC2(EBS)は、AZに配置されるサービスだと説明しました。
そこで、EBSは同じAZ内の複数サーバー間で自動的にレプリケーションされます。
S3
続いて、S3は前述した通り、リージョンに配置されます。
そして、その後は、リージョンの下の概念であるAZに自動的に冗長化されます。
そのため、かなり高い耐久性を保持しており、イレブンナイン(耐久性=99.999999999%)と呼ばれます。※余談ですが、可用性は99.99%のため混同しないように注意です。
料金
最後、料金の発生について整理したいと思います。
EC2
EC2の利料金は次の3つから構成されます。
①EC2インスタンスの稼働に対する料金
②データ転送料金
③ストレージ料金
EC2インスタンスの稼働に対する料金
OSや配置するリージョン、インスタンスタイプ(メモリやCPU)によって異なる。1秒単位(最短1分)、一部のOSでは1時間単位で料金が発生し、EC2が停止されている間は課金されます。
データ転送料金
リージョンの外または異なるAZにデータ転送した場合に、料金が発生します。
データ転送料金はリージョンによって異なる。また、インターネットへ転送した場合と他リージョンに転送した場合でも料金が異なります。
一方で、インターネットからEC2へのデータ転送受信、つまりINBOUNDについては課金対象となりません。
前述したように、EC2はAZに配置されるモノと考えます。
そのため、EC2自身が配置されているAZから外に出たら料金が発生する、と理解すると良いかと思います。
ストレージ料金
これはEC2料金というか、EC2にアタッチされるストレージサービスであるEBSにかかる料金です。
最初のうちはEC2を作成する際は、あまり意識しませんが、EC2作成画面でも実際にストレージとしてEBSが選択されていることがわかります。そのため、このEBSに料金がかかります。
EBSに対する課金は1GBあたりの、プロビジョニングした料金です。プロビジョニングとは、ボリュームサイズとして容量を確保することを言います。
S3
S3の利料金は次の3つから構成されます。
①リクエスト料金
②データ転送料金
③ストレージ料金
リクエスト料金
データをアップロードしたりダウンロードしたりするリクエストに対して料金が発生します。
PUT、GETメソッドでの取り出しに対して料金設定がされているほか、取得するストレージクラス(後述)によっても料金は異なります。
データ転送料金
リージョンの外にデータを転送した場合にのみ料金が発生します。
金額はリージョンによって異なり、インターネットへ転送した場合と他のりじージョンへ転送した場合でも料金は異なります。
前述したように、S3はリージョンに配置されるモノと考えます。
そのため、S3自身が配置されているリージョンから外に出たら料金が発生する、と理解すると良いかと思います。
ストレージ料金
いわば、S3のスペックのようなものでが、ストレージクラスと呼ばれます。
次のようなストレージクラスが存在します。
・標準
・低頻度アクセス(標準1A、1ゾーン1A)
・Amazon Glacier(Instant Retrival,Flexible Retrieval,Deep Archive)
・Intelligent-Tiering
・Express One Zone
それぞれオブジェクトを保存する階層が違ったりと、アクセス頻度に応じて選択するストレージクラスを使い分けます。当然、高スペックの方がより料金が高くなります。
最後に
AWS CLF対策に向けて気に合った内容をこれからもまとめていこうと思います。
何かの参考になれば嬉しいです。
コメント