Skip to content

Amazon S3¤


S3 là gì?¤

S3 (Simple Storage Service) là dịch vụ lưu trữ object của AWS. Bạn lưu file (object) vào bucket (tương tự thư mục gốc).

Điểm quan trọng:

  • S3 trông có vẻ là global, nhưng bucket thực ra được tạo ở một region cụ thể
  • Tên bucket phải unique toàn cầu (across all accounts, all regions)
  • Không có khái niệm "thư mục con" thực sự – chỉ là key có dấu / trong tên

Object & Key¤

  • Key = đường dẫn đầy đủ, ví dụ: s3://my-bucket/folder/file.txt
  • Key = prefix + object name
  • Object size tối đa: 5 TB, nếu upload > 5 GB phải dùng multi-part upload
  • Object có thể đính kèm: Metadata, Tags (tối đa 10), Version ID

S3 Security¤

Loại Mô tả
IAM Policy Gắn vào user/role, kiểm soát quyền gọi API
Bucket Policy JSON policy gắn vào bucket, dùng cho public access hoặc cross-account
ACL (Object/Bucket) Kiểm soát chi tiết hơn, ít dùng hơn

Nguyên tắc truy cập: IAM cho phép HOẶC Bucket Policy cho phép → được truy cập, TRỪ KHI có explicit DENY.

Block Public Access: Bật mặc định để ngăn data leak. Nên để ON nếu bucket không cần public.


S3 Bucket Policy – cấu trúc JSON¤

JSON
{
  "Effect": "Allow" | "Deny",
  "Principal": "*" | "arn:aws:iam::...",
  "Action": ["s3:GetObject"],
  "Resource": ["arn:aws:s3:::bucket-name/*"]
}

Dùng khi: cấp public access, force encrypt khi upload, grant cross-account access.


S3 Versioning¤

  • Bật ở bucket level
  • Cùng một key upload lại → tạo version mới (1, 2, 3…)
  • File tồn tại trước khi bật versioning → version = null
  • Suspend versioning không xóa version cũ
  • Lợi ích: khôi phục file bị xóa nhầm, rollback

S3 Replication¤

Phải bật versioning ở cả source lẫn destination.

Loại Mô tả Use case
CRR (Cross-Region) Replication sang region khác Compliance, giảm latency
SRR (Same-Region) Replication trong cùng region Log aggregation, dev/prod sync

Copying là asynchronous, cần cấp IAM permission phù hợp.


S3 Storage Classes¤

Storage Class Availability Đặc điểm Use case
Standard 99.99% Latency thấp, throughput cao Big data, gaming, CDN
Standard-IA 99.9% Truy cập không thường xuyên, cheaper Backup, DR
One Zone-IA 99.5% Chỉ 1 AZ, mất data nếu AZ die Backup thứ cấp, data có thể tái tạo
Glacier Instant - Retrieve millisecond, min 90 ngày Data truy cập ~1 lần/quý
Glacier Flexible - Expedited 1-5 phút / Standard 3-5h / Bulk 5-12h Archive
Glacier Deep Archive - Standard 12h / Bulk 48h, min 180 ngày Long-term archive
Intelligent-Tiering - Tự động chuyển tier, không mất phí retrieve Data có pattern truy cập thay đổi

Durability: Tất cả class đều là 99.999999999% (11 nines) – dùng chung cho tất cả.


S3 Object Lock & Glacier Vault Lock¤

  • WORM model = Write Once Read Many → không ai sửa/xóa được trong thời gian quy định
  • Object Lock: khóa version cụ thể trong một khoảng thời gian
  • Glacier Vault Lock: khóa policy, không thể thay đổi policy sau khi lock → dùng cho compliance

S3 Websites¤

Host static website trên S3. URL dạng: bucket-name.s3-website-[region].amazonaws.com

Nếu gặp lỗi 403 Forbidden → kiểm tra bucket policy có cho phép public read chưa.


S3 Access Logs¤

  • Log toàn bộ request đến S3 (kể cả denied) → ghi vào một S3 bucket khác
  • Dùng để audit, debug, phát hiện pattern bất thường

AWS Snow Family¤

Dùng khi transfer qua network mất hơn 1 tuần → dùng thiết bị vật lý.

Thiết bị Storage Use case
Snowcone 8 TB Môi trường chật hẹp, khắc nghiệt
Snowball Edge Storage Optimized 80 TB Migration lớn
Snowball Edge Compute Optimized 42 TB + GPU ML/video processing tại edge
Snowmobile 100 PB/xe > 10 PB, exabyte-scale migration

Edge Computing với Snow: chạy được EC2, Lambda (qua AWS IoT Greengrass) – dùng ở nơi không có internet ổn định.

OpsHub: GUI desktop app để quản lý Snow devices (thay vì CLI).


AWS Storage Gateway¤

Cầu nối giữa on-premisesS3 trên cloud → giải pháp hybrid cloud storage.

3 loại: File Gateway, Volume Gateway, Tape Gateway (không cần nhớ chi tiết cho CLF-02).


Shared Responsibility Model – S3¤

AWS chịu trách nhiệm Bạn chịu trách nhiệm
Infrastructure, durability, availability Versioning, Bucket Policy, Replication setup
Config & vulnerability analysis Logging, Monitoring, Storage Class
Compliance validation Encryption at rest & in transit

Những điểm hay ra đề CLF-02¤

  • Bucket name phải globally unique
  • Max object size 5 TB, upload > 5 GB dùng multi-part
  • Durability 11 nines – giống nhau cho tất cả storage class
  • Glacier Deep Archive = rẻ nhất, retrieve chậm nhất (12–48h)
  • Intelligent-Tiering = không mất phí retrieve, tự động chuyển tier
  • Cần bật versioning trước khi dùng Replication
  • Block Public Access = tính năng bảo vệ cấp account
  • Snow Family dùng khi data migration > 1 tuần qua mạng
  • Snowmobile khi data > 10 PB