S3について
S3概要
Amazon Simple Storage Seeviceの略でSが3つ並ぶことからS3と呼び、インターネット対応の完全マネージド型のオブジェクトストレージです。
S3の特徴
・無制限のストレージ量
・高い耐久性
・インターネット経由でアクセス
S3を使用することで、ストレージの管理、容量、冗長化を考えずに開発に注力することができる。
無制限のストレージ容量
S3では、バケットというデータの入れものを作り、データを保存することができる。
保存できるデータ容量は無制限。
1つのファイルについては、5TBまでという制限はありますが、頻繁にアクセスする5TB以上のデータというのはまずないので大丈夫。
高い耐久性
オンプレのデータストレージの場合、ディスクの破損、ファイルの破損に備えて、バックアップを取得したり、ストレージの冗長化を行うなどの対策が必要
しかし、S3ではリージョンを選択してバケットを作成しデータをオブジェクト化しアップロードすると1つのリージョン内で複数のAZにまたがって、自動的に冗長化し保存される
AZは外的要因による障害が複数のAZで同時発生しないように地理的設定がされている。
S3の耐久性はイレブンナインで、非常に高い堅牢性を実現するように設計されている。
インターネット経由でアクセス
S3にはインターネット経由(HTTP/HTTPS)でアクセスします。適切なアクセス権限のもと世界中のどこからでもアクセスできます。
可用性はイレブンナインで、AWSのマネジメントコンソールからも。CLI、SDK、APIからもアクセスできます。
S3のセキュリティ
S3バケットは、作成した時点からアカウントから許可されたユーザーやリソースからのアクセスのみを受け付けている。
必要に応じて、IAMユーザー、AWSリソースにアクセス権限を設定する。
インターネット上で公開設定をすることもできます。
アクセス権限
・ACL・・・ACLでは、バケットポリシーの設定ができる。個別にオブジェクト指定もできる。
・バケットポリシー・・・ACLでは、バケット単位、オブジェクト単位の読み取りや書き込みを許可するアクセス権限を設定できる
もっと細かい設定をする場合使用するのがバケットポリシーです。
・IAMポリシー・・・IAMではポリシー設定によりアクセスできますが、S3は強固なセキュリティによって守られているのでアクセスできません。
・通信、保存データの暗号化・・・S3にインターネット経由でアクセスします。HTTP/HTTPSでアクセスすることが可能です。
アクセスする対象のエンドポイントはバケット名、オブジェクト名によって決定されます。
S3料金
- ストレージ料金
- リクエスト料金
- データ転送料金
1. ストレージ料金
保存しているオブジェクトの容量に対しての料金です。
1か月全体を通した平均の保存料で料金が算出される、リージョンによっても料金は変わってきます。
ストレージクラスによっても違います
「ストレージクラス」
・標準
・低頻度アクセス(標準んIA)
・1ゾーン低頻度アクセス(1ゾーンIA)
・Amazon Glacier
2. リクエスト料金
データをアップロードしたりダウンロードするリクエストに対しての料金です。
3. データ転送料金
リージョンの外にデータを転送した場合にのみ発生します。
インターネットへ転送した場合と他リージョンへ転送した場合でも料金が異なります。
データインは料金がかかりません。また、CloudFrontへの転送料金は課金対象外です
S3のユースケース
・ アプリケーションのデータ保存(Amazon Macieを使えば機密情報を自動検出)
・ HTML、CSS、JavaScript、画像、動画ファイルなどの静的コンテンツの配信
・ データバックアップの保存
・ ログデータ、センサーデータなどの保存
・ ビッグデータの保存分析:Redshift(DWH)、Athena(SQLクエリ)、EMR(Hadoop他)
・ クロスリージョンレプリケーションによるDR対策
まとめ
S3には色々なサービスがあり、料金体系があります。
その中でもセキュリティ面でのポリシー設定、AWS内でのほかのサービスと連携することができるので
ほかのサービスとも兼ね合いを考えながら、連携を組むと効率よくサービスを使用できると思います。
Discussion