はじめに
こんにちは。
この記事はGFAMアドベントカレンダー2021の7日目の記事です。
S3についてまとめてみました。
S3の概要
S3はSimple Strage Serviceの略です。オブジェクトストレージサービスです。
安価で耐久性が高く、容量無制限というのが特徴です。
オブジェクトネーミングスキーマ
オブジェクトはバケット内にフラットに格納されます。
S3://バケット名/プレフィックス/オブジェクト名
- バケット名: オブジェクトの保存場所。100個まで作成可能
- プレフィックス: フォルダ相当
- オブジェクト: データ本体
ストレージクラス
用途に応じてストレージクラスを使い分けます。
- スタンダード: 複数のAZに複製。デフォルトのストレージクラス。イレブンナイン
- 標準低頻度アクセスストレージ: スタンダードより安価。データの読み出しに課金
- Intelligent Tiering: アクセス頻度によって最適なストレージクラスへ振り分け
- 1ゾーン・低頻度アクセスストレージ: 1つのAZにのみ保存。標準低頻度アクセスストレージよりも更に安価
- S3 Glacier: 低コスト。データの取り出しに時間を要する
- S3 Glacier Deep Archive: 更に低コスト。取り出しに更に時間かかる
- 低冗長化ストレージ: Glacierから取り出したデータの置き場所
アクセス管理
デフォルトでは、バケットを作成したユーザかルートユーザしかアクセスできないです。
IAMポリシーによるアクセス制御
S3に関するポリシーがアタッチされたIAMユーザやIAMロールから操作を行うことができます。
バケットポリシーによるアクセス制御
ポリシーが記載されたJSONをバケットに付与してアクセス制御できます。
ACLによるアクセス制御
S3に対して、AWSアカウント単位、バケット単位、オブジェクト単位でアクセス制御できます。
Webサイトホスティング機能
静的なWebサイトをホスティングする機能です。
S3イベント通知機能
S3にオブジェクトがアップロードされたことをトリガーに他のAWSサービスを呼び出すことができます。
バージョニング機能
オブジェクトの世代管理ができます。
ライフサイクル管理
バケット内のオブジェクトに対して、自動でストレージクラスを移動したり、削除したりするよう設定ができます。
おわりに
今回はS3をまとめました。
次回はRoute53について学習します。