私は2024年3月にAWS SAA試験(c-03)に合格したのですが、その時に勉強したAWSの勉強ノートを公開します。
今回はS3について、SAA試験レベルの要点をまとめているので、試験対策などにお使いください。
また勉強方法は下記の記事にまとめているので、よかったらそちらもご覧ください。
S3の基本機能
S3はオブジェクトストレージ
ブロックストレージ:高速広帯
例:EBS、インスタンスストア
オブジェクトストレージ:安価、高耐久
例:S3
ファイルストレージ:ファイル形式。高耐久
例:EFS
S3の特徴
- 容量無制限
- 高耐久
- オブジェクトは階層構造を持たない
=検索性が高い - フォルダはバケット、データはオブジェクト
- 料金は容量とストレージクラスで決まる
S3の用途
- 各種コンテンツなどの大容量データ
- アーカイブデータ
ストレージクラス
アクセス頻度、可用性、保存期間で選択
SAA試験では最適なクラスを問われる
下表で下に行くほど利用料が安い
ただしInteligent-Tieringは利用頻度で料金も変動
クラス名 | 取出料 | 遅延 | 保存期間 |
標準 | ー | 無 | ー |
Intelligent-Tiering | ー | 変動 | ー |
標準-IA 低頻度 | 有料 | 無 | 30日~ |
1ゾーンIA 低頻度 ※単一AZ保存 | 有料 | 無 | 30日~ |
Glacier Instant Retrieval | 有料 | 無 | 90日~ |
Glacier Flexible Retrieval | 有料 | 数分 | 90日~ |
Glacier Deep Archive | 有料 | 数時間 | 180日~ |
ストレージクラスを選ぶ基準
- 頻繁に使用するデータは標準
- アーカイブなど頻度低いものはGlacier
特に数年アクセス予定ないものはDeep Archive - 1ゾーンは冗長性×。必要なら別のクラスへ
S3のオブジェクト管理機能
オブジェクト管理に関する機能です。
ライフサイクルポリシー
指定期間経過したオブジェクトを自動で別のクラスへ移動・削除できる機能
例)○日経過後に自動でアーカイブ化
バージョニング
オブジェクトの世代管理ができる機能
誤って消しても復元できる
MFA Delete
オブジェクト削除に多要素認証が必要となる機能
ルートユーザしか削除できない。ID・Passが必要
オブジェクトロック
オブジェクトの更新削除権限をロックする機能
バージョニング機能必須
バケット作成時に下記2種類を設定可能
リテンションモード
- ガバナンスモード
指定期間中、権限を持たないユーザは更新削除不可 - コンプライアンスモード
指定期間中、すべてのユーザは更新削除不可
リーガルホールド
この機能を解除するまで、権限をもつユーザかルートユーザ以外はアクセス不可
※リーガルとリテンションは両方有効にできる
オブジェクトの公開
署名付きURL
非公開オブジェクトに対して有効期限のついたURLを発行し、そのURL経由ならだれでもアクセス可能になる機能。
一時的に共有する場合などに使用
静的Webサイトホスティング
HTMLや画像などの静的コンテンツをWebサイトとして公開できる機能
使用する場合はアクセス負荷軽減のために、CloudFrontと組み合わせることが一般的
アクセス制御
バケットポリシー
バケット(フォルダ)に、IAMユーザやIPアドレスやドメインでアクセス権限を指定
他のAWSアカウントのIAMユーザも指定可
例)バケットXは自アカウントのユーザAおよび他AWSアカウントのユーザBのみアクセス許可
ユーザーポリシー
IAMユーザやロールに、S3の各バケットやオブジェクト権限を設定
他のAWSアカウントには適用できない
例)自AWSアカウントのユーザBにバケットXへのアクセスを許可
アクセスコントロールリスト(ACL)
自分のS3に対して、AWSアカウント単位でアクセス権限を設定
例)アカウントBからのS3へのアクセスを許可
他AWSサービスとの連携
S3イベント通知
※頻出
オブジェクトの作成や削除などをトリガーに通知を行う機能
Lambda、SQS、SNS、EventBridgeに接続可能
例)データ格納時にLamdaに通知して自動処理
※イベント通知先は上記4種のみ。覚える
暗号化
サーバ側の暗号化とクライアント側の暗号化の2種類がある
サーバサイド暗号化 (SSE)
S3が暗号化
保存時にS3が暗号化し、取出時はS3が複合する。
どの鍵を使用するかでさらに3種類に分けられる。
- S3の鍵を使用 (SSE-S3)
- AWS KMSの鍵を使用(SSE-KMS)
- ユーザ管理の鍵を使用(SSE-C)
クライアント暗号化
クライアント側で暗号化
暗号化してからS3保存、暗号化のままS3から取出し
これも鍵でさらに2種類に分けられる。
- AWS KMSの鍵を使用
- クライアント側の鍵を使用
データの転送
S3 Transfer Acceleration
オンプレからS3へデータを転送させる機能
最適なNWルートを経由するので早い
マルチパートアップロード
大容量なファイルを分割してアップする機能
100MB以上の場合に使用
S3レプリケーション
S3データを異なるバケットへ自動コピーする機能
異なるAWSアカウントのS3にもコピー可
異なるリージョンにもコピー可
=「クロスリージョンレプリケーション」
コメント