4392 ๋‹จ์–ด
22 ๋ถ„
๐Ÿชฃ Amazon S3 (Simple Storage Service)

๐Ÿชฃ Amazon S3 (Simple Storage Service)#

AWS์˜ ํ•ต์‹ฌ ๋นŒ๋”ฉ ๋ธ”๋ก โ€” โ€œ๋ฌดํ•œํžˆ ํ™•์žฅ ๊ฐ€๋Šฅํ•œโ€ ๊ฐ์ฒด ์Šคํ† ๋ฆฌ์ง€

๋‚ด๊ตฌ์„ฑ 99.999999999%(11 9โ€™s), ์‹œํ—˜ ์ „ ์˜์—ญ์—์„œ ๊ณ ๋นˆ๋„ ์ถœ์ œ


๋ชฉ์ฐจ#

  1. S3 ๊ธฐ๋ณธ ๊ฐœ๋…
  2. S3 ๋ณด์•ˆ (Security) ๊ฐœ์š”
  3. ์ •์  ์›น์‚ฌ์ดํŠธ ํ˜ธ์ŠคํŒ… (Static Website Hosting)
  4. ๋ฒ„์ €๋‹ (Versioning)
  5. ๋ณต์ œ (Replication)
  6. ์Šคํ† ๋ฆฌ์ง€ ํด๋ž˜์Šค (Storage Classes)
  7. S3 Lifecycle
  8. ์„ฑ๋Šฅ (Performance)
  9. S3 Batch Operations
  10. S3 Event Notifications
  11. S3 Analytics - Storage Class Analysis
  12. S3 Storage Lens
  13. Requester Pays
  14. ํ•ต์‹ฌ ์š”์•ฝ & ์‹œํ—˜ ํฌ์ธํŠธ
  15. ์ฐธ๊ณ  ์ž๋ฃŒ

1. S3 ๊ธฐ๋ณธ ๊ฐœ๋…#

๐Ÿชฃ ๋ฒ„ํ‚ท (Buckets)#

  • ๊ฐ์ฒด(ํŒŒ์ผ)๋ฅผ ์ €์žฅํ•˜๋Š” ์ปจํ…Œ์ด๋„ˆ (= ๋””๋ ‰ํ„ฐ๋ฆฌ)
  • ๋ฒ„ํ‚ท ์ด๋ฆ„์€ ์ „ ์„ธ๊ณ„ ๋ชจ๋“  ๊ณ„์ •์—์„œ ๊ณ ์œ  (Globally Unique Name)
  • ๋ฒ„ํ‚ท์€ ๋ฆฌ์ „(Region) ๋ ˆ๋ฒจ์—์„œ ์ƒ์„ฑ๋จ โ€” ๊ธ€๋กœ๋ฒŒ ์„œ๋น„์Šค์ฒ˜๋Ÿผ ๋ณด์ด์ง€๋งŒ ์‹ค์ œ๋Š” ๋ฆฌ์ „๋ณ„

๋ฒ„ํ‚ท ์ด๋ฆ„ ๊ทœ์น™:

  • ์†Œ๋ฌธ์ž, ์ˆซ์ž, ํ•˜์ดํ”ˆ๋งŒ ์‚ฌ์šฉ
  • 3~63์ž
  • IP ์ฃผ์†Œ ํ˜•ํƒœ ๋ถˆ๊ฐ€
  • ์†Œ๋ฌธ์ž ๋˜๋Š” ์ˆซ์ž๋กœ ์‹œ์ž‘
  • xn-- ์ ‘๋‘์‚ฌ ๋ถˆ๊ฐ€, s3alias ์ ‘๋ฏธ์‚ฌ ๋ถˆ๊ฐ€

๐Ÿ“„ ๊ฐ์ฒด (Objects)#

ํ•ญ๋ชฉ๋‚ด์šฉ
ํ‚ค (Key)๊ฐ์ฒด์˜ ์ „์ฒด ๊ฒฝ๋กœ (prefix + ๊ฐ์ฒด๋ช…)
์ตœ๋Œ€ ๊ฐ์ฒด ํฌ๊ธฐ5TB
5GB ์ดˆ๊ณผ ์—…๋กœ๋“œ๋ฉ€ํ‹ฐํŒŒํŠธ ์—…๋กœ๋“œ (Multi-part Upload) ํ•„์ˆ˜
๋ฉ”ํƒ€๋ฐ์ดํ„ฐํ…์ŠคํŠธ ํ‚ค/๊ฐ’ ์Œ (์‹œ์Šคํ…œ ๋˜๋Š” ์‚ฌ์šฉ์ž ์ •์˜)
ํƒœ๊ทธ (Tags)์œ ๋‹ˆ์ฝ”๋“œ ํ‚ค/๊ฐ’ ์Œ, ์ตœ๋Œ€ 10๊ฐœ (๋ณด์•ˆ/๋ผ์ดํ”„์‚ฌ์ดํด ํ™œ์šฉ)
Version ID๋ฒ„์ €๋‹ ํ™œ์„ฑํ™” ์‹œ ๋ถ€์—ฌ
s3://my-bucket/images/2025/photo.jpg
โ””โ”€โ”€โ”€โ”€โ”€prefixโ”€โ”€โ”€โ”€โ”€โ”€โ”˜โ””โ”€nameโ”€โ”˜
NOTE

โš ๏ธ S3์—๋Š” ์‹ค์ œ โ€œ๋””๋ ‰ํ„ฐ๋ฆฌโ€ ๊ฐœ๋…์ด ์—†์Œ โ€” ํ‚ค์˜ ์Šฌ๋ž˜์‹œ(/)๊ฐ€ ๊ตฌ์กฐ์ฒ˜๋Ÿผ ๋ณด์ด๊ฒŒ ํ•˜๋Š” ๊ฒƒ๋ฟ.


๐ŸŽฏ ์ฃผ์š” Use Cases#

๋ฐฑ์—…/์Šคํ† ๋ฆฌ์ง€, ์žฌํ•ด ๋ณต๊ตฌ(DR), ์•„์นด์ด๋ธŒ, ํ•˜์ด๋ธŒ๋ฆฌ๋“œ ํด๋ผ์šฐ๋“œ ์Šคํ† ๋ฆฌ์ง€,
์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ํ˜ธ์ŠคํŒ…, ๋ฏธ๋””์–ด ํ˜ธ์ŠคํŒ…, ๋ฐ์ดํ„ฐ ๋ ˆ์ดํฌ/๋น…๋ฐ์ดํ„ฐ ๋ถ„์„,
์†Œํ”„ํŠธ์›จ์–ด ๋ฐฐํฌ, ์ •์  ์›น์‚ฌ์ดํŠธ

2. S3 ๋ณด์•ˆ (Security) ๊ฐœ์š”#

๐Ÿ” ์ƒ์„ธ ๋‚ด์šฉ์€ ๋ณ„๋„ ํŒŒ์ผ ์ฐธ๊ณ : AWS_S3_Security_Notes.md

(Encryption, Access Points, Object Lambda, MFA Delete, Object Lock, CORS, Pre-signed URL, Access Logs ํฌํ•จ)

๋ณด์•ˆ ์ •์ฑ… ๊ณ„์ธต#

๋ ˆ์ด์–ด์ข…๋ฅ˜์„ค๋ช…
User-basedIAM PoliciesํŠน์ • IAM User/Role์— API ํ—ˆ์šฉ ์ •์˜
Resource-basedBucket PolicyBucket-wide JSON ์ •์ฑ…, Cross-Account ๊ฐ€๋Šฅ
Resource-basedObject/Bucket ACL์„ธ๋ฐ€ํ•œ ๊ฐ์ฒด ๋‹จ์œ„ ์ œ์–ด (๋น„ํ™œ์„ฑํ™” ๊ฐ€๋Šฅ)
๊ณ„์ • ๋ ˆ๋ฒจBlock Public Access์ „์ฒด ๊ณ„์ • ๋˜๋Š” ๋ฒ„ํ‚ท ๋‹จ์œ„ Public ์ฐจ๋‹จ

์ ‘๊ทผ ํ—ˆ์šฉ ์กฐ๊ฑด (IAM Principal์ด S3 ๊ฐ์ฒด์— ์ ‘๊ทผํ•˜๋ ค๋ฉด):

(IAM ๊ถŒํ•œ ALLOW OR Resource Policy ALLOW)
AND
๋ช…์‹œ์  DENY ์—†์Œ

Bucket Policy ํ•ต์‹ฌ ํ™œ์šฉ#

{
"Version": "2012-10-17",
"Statement": [{
"Sid": "PublicRead",
"Effect": "Allow",
"Principal": "*",
"Action": ["s3:GetObject"],
"Resource": ["arn:aws:s3:::examplebucket/*"]
}]
}
  • Public read ํ—ˆ์šฉ (์ •์  ์›น์‚ฌ์ดํŠธ)
  • Upload ์‹œ Encryption ๊ฐ•์ œ
  • Cross-Account ์ ‘๊ทผ ํ—ˆ์šฉ
  • aws:PrincipalOrgID ์กฐ๊ฑด์œผ๋กœ AWS Organizations ๋‹จ์œ„ ์ ‘๊ทผ ์ œ์–ด

Block Public Access#

  • ๊ธฐ๋ณธ๊ฐ’: ๋ชจ๋“  Public ์ ‘๊ทผ ์ฐจ๋‹จ (๋ฐ์ดํ„ฐ ์œ ์ถœ ๋ฐฉ์ง€)
  • ๊ณ„์ • ๋ ˆ๋ฒจ ์„ค์ • ๊ฐ€๋Šฅ โ†’ ์ „์ฒด ๊ณ„์ • Bucket ์ผ๊ด„ ์ฐจ๋‹จ
  • ์ •์  ์›น์‚ฌ์ดํŠธ ๊ณต๊ฐœ ์‹œ ๋ฐ˜๋“œ์‹œ ๋น„ํ™œ์„ฑํ™” + Bucket Policy ํ—ˆ์šฉ ๋‘˜ ๋‹ค ํ•„์š”

3. ์ •์  ์›น์‚ฌ์ดํŠธ ํ˜ธ์ŠคํŒ… (Static Website Hosting)#

  • S3๋กœ ์ •์  HTML/CSS/JS ์›น์‚ฌ์ดํŠธ ํ˜ธ์ŠคํŒ… ๊ฐ€๋Šฅ
  • URL ํ˜•์‹:
    • http://bucket-name.s3-website-{region}.amazonaws.com
    • http://bucket-name.s3-website.{region}.amazonaws.com

์„ค์ • ์ฒดํฌ๋ฆฌ์ŠคํŠธ:

โœ… Static Website Hosting ํ™œ์„ฑํ™”
โœ… Block Public Access ๋น„ํ™œ์„ฑํ™”
โœ… Bucket Policy์—์„œ s3:GetObject ํ—ˆ์šฉ (Principal: *)
โœ… index.html ์ง€์ •

๐Ÿ’ก 403 Forbidden ์˜ค๋ฅ˜: Bucket Policy๊ฐ€ Public read๋ฅผ ํ—ˆ์šฉํ•˜์ง€ ์•Š๋Š” ๊ฒƒ. CloudFront + OAC(Origin Access Control)๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด S3๋ฅผ Public์œผ๋กœ ์—ด์ง€ ์•Š๊ณ ๋„ ์›น์‚ฌ์ดํŠธ ์„œ๋น„์Šค ๊ฐ€๋Šฅ.


4. ๋ฒ„์ €๋‹ (Versioning)#

  • ๋ฒ„ํ‚ท ๋ ˆ๋ฒจ์—์„œ ํ™œ์„ฑํ™” โ€” ๊ฐ์ฒด ๋‹จ์œ„ ํ™œ์„ฑํ™” ๋ถˆ๊ฐ€
  • ๊ฐ™์€ ํ‚ค๋กœ ์—…๋กœ๋“œ ์‹œ ๋ฒ„์ „ ๋ฒˆํ˜ธ๊ฐ€ ์ฆ๊ฐ€ (1, 2, 3โ€ฆ)
  • ์‹ค์ˆ˜ ์‚ญ์ œ ๋ฐฉ์ง€ + ์ด์ „ ๋ฒ„์ „ ๋กค๋ฐฑ ๊ฐ€๋Šฅ
์ƒํ™ฉ๋™์ž‘
๋ฒ„์ €๋‹ ํ™œ์„ฑํ™” ์ „ ํŒŒ์ผ๋ฒ„์ „ ID = null
๋ฒ„์ €๋‹ ๋น„ํ™œ์„ฑํ™”(Suspend)๊ธฐ์กด ๋ฒ„์ „ ์‚ญ์ œ๋˜์ง€ ์•Š์Œ โ€” ์‹ ๊ทœ ์—…๋กœ๋“œ๋งŒ ๋ฒ„์ „ ์—†์Œ
ํŒŒ์ผ ์‚ญ์ œ ์‹œ์‹ค์ œ ์‚ญ์ œ ์•„๋‹Œ Delete Marker(์‚ญ์ œ ๋งˆ์ปค) ์ถ”๊ฐ€
Delete Marker ์‚ญ์ œ ์‹œํŒŒ์ผ ๋ณต์›๋จ
๋ฒ„์ „ 1 โ†’ ๋ฒ„์ „ 2 โ†’ ๋ฒ„์ „ 3 (ํ˜„์žฌ)
โ”‚ ์‚ญ์ œ
โ–ผ
[Delete Marker] โ†’ ํŒŒ์ผ์ด ์—†๋Š” ๊ฒƒ์ฒ˜๋Ÿผ ๋ณด์ž„
Delete Marker ์‚ญ์ œ โ†’ ๋ฒ„์ „ 3 ๋ณต์›
TIP

๐Ÿ“Œ ๋ณต์ œ(Replication) ์‚ฌ์šฉ ์‹œ: ๋ฒ„์ €๋‹์ด ์†Œ์Šค/๋Œ€์ƒ ๋ฒ„ํ‚ท ๋ชจ๋‘์—์„œ ํ•„์ˆ˜


5. ๋ณต์ œ (Replication)#

์ข…๋ฅ˜#

์œ ํ˜•์„ค๋ช…์ฃผ์š” Use Case
CRR (Cross-Region Replication)๋‹ค๋ฅธ ๋ฆฌ์ „์œผ๋กœ ๋ณต์ œ๊ทœ์ • ์ค€์ˆ˜, ์ง€์—ฐ ์‹œ๊ฐ„ ๊ฐ์†Œ, ๊ณ„์ • ๊ฐ„ ๋ณต์ œ
SRR (Same-Region Replication)๊ฐ™์€ ๋ฆฌ์ „ ๋‚ด ๋ณต์ œ๋กœ๊ทธ ์ง‘๊ณ„, ์šด์˜/ํ…Œ์ŠคํŠธ ๊ณ„์ • ๊ฐ„ ์‹ค์‹œ๊ฐ„ ๋™๊ธฐํ™”

์ฃผ์š” ํŠน์„ฑ#

ํ•ญ๋ชฉ๋‚ด์šฉ
์‚ฌ์ „ ์š”๊ฑด์†Œ์Šค + ๋Œ€์ƒ ๋ฒ„ํ‚ท ๋ชจ๋‘ ๋ฒ„์ €๋‹ ํ™œ์„ฑํ™” ํ•„์ˆ˜
๋ณต์ œ ๋ฐฉ์‹๋น„๋™๊ธฐ (Asynchronous)
๊ณ„์ •์„œ๋กœ ๋‹ค๋ฅธ AWS ๊ณ„์ • ๊ฐ„ ๋ณต์ œ ๊ฐ€๋Šฅ
IAMS3์— ์ ์ ˆํ•œ IAM ๊ถŒํ•œ ๋ถ€์—ฌ ํ•„์š”
๊ธฐ์กด ๊ฐ์ฒด๋ณต์ œ ํ™œ์„ฑํ™” ํ›„ ์ƒˆ ๊ฐ์ฒด๋งŒ ์ž๋™ ๋ณต์ œ
๊ธฐ์กด ๊ฐ์ฒด ๋ณต์ œS3 Batch Replication ์‚ฌ์šฉ (์‹คํŒจ ๊ฐ์ฒด ์žฌ์‹œ๋„๋„ ๊ฐ€๋Šฅ)

์‚ญ์ œ ๋™์ž‘#

Delete Marker ๋ณต์ œ: ์„ ํƒ์  ์„ค์ • (๊ธฐ๋ณธ๊ฐ’: ๋ณต์ œ ์•ˆ ํ•จ)
Version ID ํฌํ•จ ์‚ญ์ œ: ๋ณต์ œ ์•ˆ ํ•จ (์•…์˜์  ์‚ญ์ œ ๋ฐฉ์ง€)

โš ๏ธ ์ฒด์ด๋‹ ์—†์Œ#

๋ฒ„ํ‚ท 1 โ†’ (๋ณต์ œ) โ†’ ๋ฒ„ํ‚ท 2 โ†’ (๋ณต์ œ) โ†’ ๋ฒ„ํ‚ท 3
๋ฒ„ํ‚ท 1์˜ ๊ฐ์ฒด๋Š” ๋ฒ„ํ‚ท 2์—๋งŒ ๋ณต์ œ๋จ
๋ฒ„ํ‚ท 3์—๋Š” ์ž๋™ ๋ณต์ œ ์•ˆ ๋จ (No "chaining" of replication)

6. ์Šคํ† ๋ฆฌ์ง€ ํด๋ž˜์Šค (Storage Classes)#

๐Ÿ“Š ์ „์ฒด ๋น„๊ตํ‘œ#

์Šคํ† ๋ฆฌ์ง€ ํด๋ž˜์Šค๊ฐ€์šฉ์„ฑ๋‚ด๊ตฌ์„ฑAZ ์ˆ˜๊ฒ€์ƒ‰ ์‹œ๊ฐ„์ตœ์†Œ ๋ณด์กด ๊ธฐ๊ฐ„์ฃผ์š” Use Case
S3 Standard99.99%11 9โ€™sโ‰ฅ3์ฆ‰์‹œ์—†์Œ์ž์ฃผ ์ ‘๊ทผํ•˜๋Š” ๋ฐ์ดํ„ฐ
S3 Standard-IA99.9%11 9โ€™sโ‰ฅ3์ฆ‰์‹œ30์ผ๋น„์ •๊ธฐ ์ ‘๊ทผ, ๋น ๋ฅธ ์กฐํšŒ ํ•„์š”
S3 One Zone-IA99.5%11 9โ€™s1์ฆ‰์‹œ30์ผ์žฌ์ƒ์„ฑ ๊ฐ€๋Šฅํ•œ ๋ณด์กฐ ๋ฐฑ์—…
S3 Glacier Instant Retrieval99.9%11 9โ€™sโ‰ฅ3๋ฐ€๋ฆฌ์ดˆ90์ผ๋ถ„๊ธฐ๋ณ„ ์ ‘๊ทผ, ์ฆ‰๊ฐ ๋ณต์›
S3 Glacier Flexible Retrieval99.99%11 9โ€™sโ‰ฅ3๋ถ„~์‹œ๊ฐ„90์ผ๋ฐฑ์—…, ์•„์นด์ด๋ธŒ
S3 Glacier Deep Archive99.99%11 9โ€™sโ‰ฅ312~48์‹œ๊ฐ„180์ผ์žฅ๊ธฐ ๋ณด๊ด€, ์ตœ์ € ๋น„์šฉ
S3 Intelligent-Tiering99.9%11 9โ€™sโ‰ฅ3์ž๋™์—†์Œ์ ‘๊ทผ ํŒจํ„ด ์˜ˆ์ธก ๋ถˆ๊ฐ€
S3 Express One Zone99.95%๋†’์Œ1๋‹จ์ผ ์ž๋ฆฟ์ˆ˜ ms์—†์Œ์ดˆ์ €์ง€์—ฐ, AI/ML

ํด๋ž˜์Šค๋ณ„ ์ƒ์„ธ#

S3 Standard (๋ฒ”์šฉ)#

  • ์ž์ฃผ ์ ‘๊ทผํ•˜๋Š” ๋ฐ์ดํ„ฐ, ๋‚ฎ์€ ์ง€์—ฐ + ๋†’์€ ์ฒ˜๋ฆฌ๋Ÿ‰
  • ๋™์‹œ 2๊ฐœ ์‹œ์„ค ์žฅ์•  ํ—ˆ์šฉ (๋‚ด๊ฒฐํ•จ์„ฑ)
  • Use Case: ๋น…๋ฐ์ดํ„ฐ, ๋ชจ๋ฐ”์ผ/๊ฒŒ์ž„, ์ฝ˜ํ…์ธ  ๋ฐฐํฌ

S3 Standard-IA / S3 One Zone-IA (๋น„์ •๊ธฐ ์ ‘๊ทผ)#

  • Standard๋ณด๋‹ค ์ €๋ ดํ•˜๋‚˜ ๊ฒ€์ƒ‰ ์‹œ ์š”๊ธˆ ๋ฐœ์ƒ
  • One Zone-IA: ๋‹จ์ผ AZ โ†’ AZ ํŒŒ๊ดด ์‹œ ๋ฐ์ดํ„ฐ ์†์‹ค, ์žฌ์ƒ์„ฑ ๊ฐ€๋Šฅ ๋ฐ์ดํ„ฐ์—๋งŒ
  • Use Case: Standard-IA โ†’ DR/๋ฐฑ์—…, One Zone-IA โ†’ ์˜จํ”„๋ ˆ๋ฏธ์Šค ๋ณด์กฐ ๋ฐฑ์—…, ์žฌ์ƒ์„ฑ ๊ฐ€๋Šฅ ๋ฐ์ดํ„ฐ

S3 Glacier (์•„์นด์ด๋ธŒ 3์ข…)#

Glacier ์œ ํ˜•๊ฒ€์ƒ‰ ์˜ต์…˜๊ฒ€์ƒ‰ ์‹œ๊ฐ„์ตœ์†Œ ๋ณด์กด
Glacier Instant-๋ฐ€๋ฆฌ์ดˆ90์ผ
Glacier FlexibleExpedited (๊ธด๊ธ‰)1~5๋ถ„90์ผ
Standard (ํ‘œ์ค€)3~5์‹œ๊ฐ„
Bulk (๋Œ€๋Ÿ‰)5~12์‹œ๊ฐ„ (๋ฌด๋ฃŒ)
Glacier Deep ArchiveStandard12์‹œ๊ฐ„180์ผ
Bulk48์‹œ๊ฐ„

S3 Intelligent-Tiering (์ž๋™ ๊ณ„์ธต ์ด๋™)#

  • ์›”๋ณ„ ์†Œ์•ก ๋ชจ๋‹ˆํ„ฐ๋ง + ์ž๋™ ๊ณ„์ธตํ™” ์ˆ˜์ˆ˜๋ฃŒ ๋ฐœ์ƒ
  • ๊ฒ€์ƒ‰ ์š”๊ธˆ ์—†์Œ (Intelligent-Tiering์˜ ํ•ต์‹ฌ ์žฅ์ )
  • ์ ‘๊ทผ ํŒจํ„ด์— ๋”ฐ๋ผ ์ž๋™ ์ด๋™:
Frequent Access (๊ธฐ๋ณธ) โ† ์ž๋™
Infrequent Access โ† 30์ผ ๋ฏธ์ ‘๊ทผ ์‹œ ์ž๋™ ์ด๋™
Archive Instant Access โ† 90์ผ ๋ฏธ์ ‘๊ทผ ์‹œ ์ž๋™ ์ด๋™
Archive Access (์„ ํƒ, ์„ค์ • ํ•„์š”) โ† 90~700์ผ
Deep Archive Access (์„ ํƒ) โ† 180~700์ผ

S3 Express One Zone (์‹ ๊ทœ, 2023)#

  • ๋‹จ์ผ AZ ๋‚ด Directory Bucket์— ์ €์žฅ
  • ๋‹จ์ผ ์ž๋ฆฟ์ˆ˜ ๋ฐ€๋ฆฌ์ดˆ (single-digit millisecond) ์ง€์—ฐ ์‹œ๊ฐ„
  • S3 Standard ๋Œ€๋น„ ์ตœ๋Œ€ 10๋ฐฐ ์„ฑ๋Šฅ, ๋น„์šฉ 50% ์ ˆ๊ฐ
  • SageMaker, Athena, EMR, Glue์™€ ์ตœ์  ํ†ตํ•ฉ
  • Use Case: AI/ML ํ›ˆ๋ จ, ๊ธˆ์œต ๋ชจ๋ธ๋ง, HPC, ๋ฏธ๋””์–ด ์ฒ˜๋ฆฌ

7. S3 Lifecycle#

๊ฐœ์š”#

  • Lifecycle Rules๋ฅผ ์‚ฌ์šฉํ•ด ๊ฐ์ฒด๋ฅผ ์ž๋™์œผ๋กœ ๋‹ค๋ฅธ Storage Class๋กœ ์ „ํ™˜ํ•˜๊ฑฐ๋‚˜ ์‚ญ์ œ
  • ๋น„์šฉ ์ตœ์ ํ™”์˜ ํ•ต์‹ฌ ๊ธฐ๋Šฅ โ€” ์‹œํ—˜์—์„œ โ€œ๊ฐ€์žฅ ๋น„์šฉ ํšจ์œจ์ ์ธ ์Šคํ† ๋ฆฌ์ง€ ์ „๋žตโ€ ๋ฌธ์ œ์˜ ์ •๋‹ต
[Standard] โ†’(30์ผ)โ†’ [Standard-IA] โ†’(60์ผ)โ†’ [Glacier Flexible] โ†’(365์ผ)โ†’ ์‚ญ์ œ

Lifecycle Rule ์ข…๋ฅ˜#

๊ทœ์น™ ์œ ํ˜•์„ค๋ช…์˜ˆ์‹œ
Transition ActionsํŠน์ • ์‹œ๊ฐ„ ํ›„ ๋‹ค๋ฅธ Storage Class๋กœ ์ด๋™์ƒ์„ฑ 60์ผ ํ›„ Standard-IA๋กœ ์ด๋™
Expiration ActionsํŠน์ • ์‹œ๊ฐ„ ํ›„ ๊ฐ์ฒด ์‚ญ์ œ(๋งŒ๋ฃŒ)365์ผ ํ›„ ๋กœ๊ทธ ํŒŒ์ผ ์‚ญ์ œ

Transition Actions (์ „ํ™˜ ๊ทœ์น™)#

Standard โ†’ Standard-IA โ†’ Glacier Instant โ†’ Glacier Flexible โ†’ Deep Archive
โ†‘ โ†‘
์ตœ์†Œ 30์ผ ์ตœ์†Œ 90์ผ
Standard ์ดํ›„ IA ์ดํ›„
  • ์ „ํ™˜ ๋ฐฉํ–ฅ: ํ•ญ์ƒ ์•„๋ž˜ ๋“ฑ๊ธ‰์œผ๋กœ๋งŒ ๊ฐ€๋Šฅ (์ƒ์œ„ ํด๋ž˜์Šค๋กœ ๋˜๋Œ์•„๊ฐ€์ง€ ์•Š์Œ)
  • ๊ฐ Storage Class๋กœ ์ „ํ™˜๋˜๊ธฐ๊นŒ์ง€ ์ตœ์†Œ ๋ณด์กด ๊ธฐ๊ฐ„ ์ถฉ์กฑ ํ•„์š”

Expiration Actions (๋งŒ๋ฃŒ ๊ทœ์น™)#

ํ™œ์šฉ์„ค๋ช…
์˜ค๋ž˜๋œ ๊ฐ์ฒด ์‚ญ์ œAccess log ํŒŒ์ผ 365์ผ ํ›„ ์ž๋™ ์‚ญ์ œ
์ด์ „ ๋ฒ„์ „ ์‚ญ์ œVersioning ํ™œ์„ฑํ™” ์‹œ non-current version ์‚ญ์ œ
๋ถˆ์™„์ „ํ•œ Multipart Upload ์‚ญ์ œ์ผ์ • ๊ธฐ๊ฐ„ ์™„๋ฃŒ๋˜์ง€ ์•Š์€ Part ์ •๋ฆฌ
Expired Delete Marker ์‚ญ์ œ๋ถˆํ•„์š”ํ•œ Delete Marker ์ž๋™ ์ •๋ฆฌ

Rule ์ ์šฉ ๋ฒ”์œ„#

  • Prefix ๊ธฐ๋ฐ˜: ํŠน์ • ๊ฒฝ๋กœ์—๋งŒ ์ ์šฉ (์˜ˆ: s3://mybucket/logs/*)
  • Tag ๊ธฐ๋ฐ˜: ํŠน์ • Tag๊ฐ€ ์žˆ๋Š” ๊ฐ์ฒด์—๋งŒ ์ ์šฉ (์˜ˆ: Department:Finance)

์‹œํ—˜ ์‹œ๋‚˜๋ฆฌ์˜ค ์˜ˆ์‹œ#

Q: 6๊ฐœ์›”๊ฐ„ ์ž์ฃผ ์ ‘๊ทผ, ์ดํ›„ 1๋…„๊ฐ„ ๊ฐ€๋” ์ ‘๊ทผ, ๊ทธ ์ดํ›„ ๋ณด๊ด€์ด ํ•„์š”ํ•œ ๋ฐ์ดํ„ฐ์˜ ๋น„์šฉ ์ตœ์ ํ™” ๋ฐฉ๋ฒ•์€?

์ƒ์„ฑ ํ›„ 0~6๊ฐœ์›”: S3 Standard
โ†“ Lifecycle Rule: 180์ผ ํ›„ ์ „ํ™˜
6๊ฐœ์›”~1.5๋…„: S3 Standard-IA
โ†“ Lifecycle Rule: 365์ผ ํ›„ ์ „ํ™˜
1.5๋…„ ์ดํ›„: S3 Glacier Flexible Retrieval

8. ์„ฑ๋Šฅ (Performance)#

๐Ÿ”ข S3 Baseline Performance (๊ธฐ์ค€ ์„ฑ๋Šฅ ์ˆ˜์น˜)#

๐Ÿ“Œ ์‹œํ—˜ ํ•ต์‹ฌ ์ˆ˜์น˜ โ€” ์ž์ฃผ ์ถœ์ œ๋จ

  • S3๋Š” ๋†’์€ ์š”์ฒญ ์†๋„์— ์ž๋™์œผ๋กœ ์Šค์ผ€์ผ๋ง (์ง€์—ฐ ์‹œ๊ฐ„ 100~200ms)
  • Prefix๋‹น ์ดˆ๋‹น ์š”์ฒญ ์ฒ˜๋ฆฌ๋Ÿ‰:
    • PUT/COPY/POST/DELETE: 3,500 req/s
    • GET/HEAD: 5,500 req/s
  • ๋ฒ„ํ‚ท ๋‚ด Prefix ์ˆ˜ ์ œํ•œ ์—†์Œ
  • Prefix๋ฅผ 4๊ฐœ๋กœ ๋ถ„์‚ฐ ์‹œ: GET/HEAD 22,000 req/s ๋‹ฌ์„ฑ ๊ฐ€๋Šฅ
s3://bucket/folder1/sub1/file โ† prefix: /folder1/sub1/
s3://bucket/folder1/sub2/file โ† prefix: /folder1/sub2/
s3://bucket/folder2/sub1/file โ† prefix: /folder2/sub1/
s3://bucket/folder2/sub2/file โ† prefix: /folder2/sub2/
โ†’ ๊ฐ prefix์—์„œ 5,500 GET/s ร— 4 = 22,000 GET/s

๐Ÿš€ S3 Transfer Acceleration#

  • S3 ๋ฒ„ํ‚ท์œผ๋กœ์˜ ์žฅ๊ฑฐ๋ฆฌ ํŒŒ์ผ ์ „์†ก ์†๋„ ํ–ฅ์ƒ
  • AWS CloudFront์˜ **์—ฃ์ง€ ๋กœ์ผ€์ด์…˜(Edge Location)**์„ ๊ฒฝ์œ :
[์‚ฌ์šฉ์ž (์ผ๋ณธ)] โ†’ [CloudFront Edge (์ผ๋ณธ)] โ†’ [AWS ์ „์šฉ ๋ฐฑ๋ณธ๋ง] โ†’ [S3 ๋ฒ„ํ‚ท (us-east-1)]
๋น ๋ฅธ ์—…๋กœ๋“œ ๊ณ ์† ์ „์šฉ์„ 
  • Use Case: ์ „ ์„ธ๊ณ„์—์„œ ํ•˜๋‚˜์˜ S3 ๋ฒ„ํ‚ท์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ๋น ๋ฅด๊ฒŒ ์ง‘๊ณ„ํ•  ๋•Œ
  • ๋ฒ„ํ‚ท ๋ ˆ๋ฒจ์—์„œ ํ™œ์„ฑํ™”, ๋ณ„๋„ ์—”๋“œํฌ์ธํŠธ ์‚ฌ์šฉ

๐Ÿ“ฆ Multipart Upload (๋ฉ€ํ‹ฐํŒŒํŠธ ์—…๋กœ๋“œ)#

  • 5GB ์ดˆ๊ณผ ์‹œ ํ•„์ˆ˜, 100MB ์ดˆ๊ณผ๋ถ€ํ„ฐ ๊ถŒ์žฅ
  • ํŒŒ์ผ์„ ์—ฌ๋Ÿฌ ํŒŒํŠธ๋กœ ๋ถ„ํ• ํ•˜์—ฌ ๋ณ‘๋ ฌ ์—…๋กœ๋“œ โ†’ ์†๋„ ํ–ฅ์ƒ
  • ํŒŒํŠธ ์—…๋กœ๋“œ ์‹คํŒจ ์‹œ ํ•ด๋‹น ํŒŒํŠธ๋งŒ ์žฌ์‹œ๋„
[100GB ํŒŒ์ผ]
โ”‚ ๋ถ„ํ• 
โ”œโ”€โ”€ Part 1 (10GB) โ”€โ†’ S3
โ”œโ”€โ”€ Part 2 (10GB) โ”€โ†’ S3 (๋ณ‘๋ ฌ)
โ””โ”€โ”€ Part N (10GB) โ”€โ†’ S3
โ”‚
์™„๋ฃŒ ์‹œ S3๊ฐ€ ํ•ฉ์„ฑ

๐Ÿ” S3 Byte-Range Fetches (๋ฐ”์ดํŠธ ๋ฒ”์œ„ ๊ฐ€์ ธ์˜ค๊ธฐ)#

  • ํŒŒ์ผ์˜ ํŠน์ • ๋ฐ”์ดํŠธ ๋ฒ”์œ„๋งŒ ๋ณ‘๋ ฌ๋กœ GET ์š”์ฒญ
  • ๋‹ค์šด๋กœ๋“œ ์†๋„ ํ–ฅ์ƒ (๋ณ‘๋ ฌ ์ฒ˜๋ฆฌ)
  • ํŒŒ์ผ์˜ ์ผ๋ถ€๋งŒ ์กฐํšŒ ๊ฐ€๋Šฅ (ํ—ค๋” ๋ฐ์ดํ„ฐ ํŒŒ์‹ฑ ๋“ฑ)

๐Ÿ“Š S3 Select & Glacier Select#

  • S3 Select: SQL ์ฟผ๋ฆฌ๋กœ S3์—์„œ ํ•„์š”ํ•œ ๋ฐ์ดํ„ฐ๋งŒ ์„œ๋ฒ„ ์‚ฌ์ด๋“œ ํ•„ํ„ฐ๋ง
  • ์ „์ฒด ํŒŒ์ผ ๋‹ค์šด๋กœ๋“œ ์—†์ด ํ•„์š”ํ•œ ๋ฐ์ดํ„ฐ๋งŒ ์ถ”์ถœ โ†’ ๋น„์šฉ, ํŠธ๋ž˜ํ”ฝ ์ ˆ๊ฐ
  • CSV, JSON, Parquet ํ˜•์‹ ์ง€์›
์ „์ฒด CSV ๋‹ค์šด๋กœ๋“œ ํ›„ ํ•„ํ„ฐ๋ง โ†’ [ํฐ ํŒŒ์ผ ์ „์ฒด ์ „์†ก] โ† ๋น„ํšจ์œจ
S3 Select ์‚ฌ์šฉ โ†’ [ํ•„์š”ํ•œ ํ–‰๋งŒ ๋ฐ˜ํ™˜] โ† ํšจ์œจ์ 

9. S3 Batch Operations#

  • ๊ธฐ์กด S3 ๊ฐ์ฒด์— ๋Œ€ํ•ด ๋‹จ์ผ ์š”์ฒญ์œผ๋กœ ๋Œ€๊ทœ๋ชจ ์ž‘์—… ์ˆ˜ํ–‰
  • Job = ๊ฐ์ฒด ๋ชฉ๋ก + ์ˆ˜ํ–‰ํ•  Action + ์„ ํƒ์  ํŒŒ๋ผ๋ฏธํ„ฐ

์ง€์›ํ•˜๋Š” ์ž‘์—… (Actions)#

Action์„ค๋ช…
Copy objects๋ฒ„ํ‚ท ๊ฐ„ ๊ฐ์ฒด ๋ณต์‚ฌ
Modify metadata๊ฐ์ฒด ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ/์†์„ฑ ์ผ๊ด„ ๋ณ€๊ฒฝ
Encrypt๋ฏธ์•”ํ˜ธํ™” ๊ฐ์ฒด ์ผ๊ด„ ์•”ํ˜ธํ™” (SSE-KMS ๋“ฑ์œผ๋กœ ์ „ํ™˜)
Modify ACLs/TagsACL ๋˜๋Š” Tag ์ผ๊ด„ ์ˆ˜์ •
Restore from GlacierGlacier ๊ฐ์ฒด ์ผ๊ด„ ๋ณต์›
Invoke Lambda๊ฐ ๊ฐ์ฒด์— ๋Œ€ํ•ด Lambda Function ์‹คํ–‰

์ž‘๋™ ํ๋ฆ„#

S3 Inventory๋กœ ๊ฐ์ฒด ๋ชฉ๋ก ์ƒ์„ฑ
โ”‚
โ–ผ
Athena๋กœ ํ•„ํ„ฐ๋ง (ํŠน์ • ์กฐ๊ฑด์˜ ๊ฐ์ฒด๋งŒ ์„ ํƒ)
โ”‚
โ–ผ
S3 Batch Operations Job ์ƒ์„ฑ
โ”‚
โ–ผ
์ง„ํ–‰๋ฅ  ์ถ”์  + ์žฌ์‹œ๋„ ์ž๋™ ๊ด€๋ฆฌ + ์™„๋ฃŒ ์•Œ๋ฆผ + ๋ฆฌํฌํŠธ ์ƒ์„ฑ

๐Ÿ’ก ์‹ค๋ฌด ํ™œ์šฉ: ๊ธฐ์กด ๋ฏธ์•”ํ˜ธํ™” ๊ฐ์ฒด๋ฅผ SSE-KMS๋กœ ์ผ๊ด„ ์ „ํ™˜ํ•  ๋•Œ, S3 Replication ํ™œ์„ฑํ™” ์ด์ „์˜ ๊ธฐ์กด ๊ฐ์ฒด๋ฅผ ๋ณต์ œํ•  ๋•Œ (S3 Batch Replication)


10. S3 Event Notifications#

์ง€์› ์ด๋ฒคํŠธ ์œ ํ˜•#

  • S3:ObjectCreated, S3:ObjectRemoved, S3:ObjectRestore, S3:Replication ๋“ฑ
  • Object ์ด๋ฆ„์œผ๋กœ ํ•„ํ„ฐ๋ง ๊ฐ€๋Šฅ (์˜ˆ: .jpg)

์ด๋ฒคํŠธ ๋Œ€์ƒ (Destinations)#

S3 ์ด๋ฒคํŠธ ๋ฐœ์ƒ
โ”‚
โ”œโ”€โ”€โ†’ SNS Topic โ† SNS Resource Policy ํ•„์š”
โ”œโ”€โ”€โ†’ SQS Queue โ† SQS Resource Policy ํ•„์š”
โ””โ”€โ”€โ†’ Lambda Function โ† Lambda Resource Policy ํ•„์š”
IMPORTANT

๐Ÿ“Œ ์ค‘์š”: S3 โ†’ SNS/SQS/Lambda ์—ฐ๊ฒฐ ์‹œ IAM Role์ด ์•„๋‹Œ Resource-based Policy(๋ฆฌ์†Œ์Šค ์ •์ฑ…) ์„ค์ • ํ•„์š”

S3 Event Notifications with Amazon EventBridge#

S3 Bucket โ†’ Amazon EventBridge โ†’(Rules)โ†’ 18๊ฐœ ์ด์ƒ AWS ์„œ๋น„์Šค

EventBridge ์‚ฌ์šฉ ์‹œ ์žฅ์ :

  • ๊ณ ๊ธ‰ ํ•„ํ„ฐ๋ง: JSON Rules๋กœ Metadata, Object size, ์ด๋ฆ„ ๊ธฐ๋ฐ˜ ํ•„ํ„ฐ๋ง
  • Multiple Destinations: Step Functions, Kinesis Streams/Firehose ๋“ฑ
  • Archive / Replay Events: ์ด๋ฒคํŠธ ์žฌ์ฒ˜๋ฆฌ ๊ฐ€๋Šฅ
  • Reliable delivery: ์‹ ๋ขฐ์„ฑ ๋†’์€ ์ „๋‹ฌ ๋ณด์žฅ

๐Ÿ’ก ์„ ํƒ ๊ธฐ์ค€: ๋‹จ์ˆœํ•œ ํŠธ๋ฆฌ๊ฑฐ๋Š” SNS/SQS/Lambda ์ง์ ‘ ์—ฐ๊ฒฐ. ๋ณต์žกํ•œ ๋ผ์šฐํŒ…์ด๋‚˜ ๋‹ค์–‘ํ•œ Destination์ด ํ•„์š”ํ•˜๋ฉด EventBridge ๊ฒฝ์œ .


11. S3 Analytics - Storage Class Analysis#

  • ์–ธ์ œ ๊ฐ์ฒด๋ฅผ ๋‹ค๋ฅธ Storage Class๋กœ ์ „ํ™˜ํ• ์ง€ ๋ถ„์„ ๋ฐ ๊ถŒ์žฅ
  • ์ง€์› ๋ฒ”์œ„: Standard โ†’ Standard-IA ์ „ํ™˜ ๋ถ„์„๋งŒ ๊ฐ€๋Šฅ
    • โŒ One Zone-IA, Glacier๋Š” ์ง์ ‘ ๋ถ„์„ ๋ถˆ๊ฐ€
  • Report๋Š” S3 ๋ฒ„ํ‚ท์— CSV ํ˜•์‹์œผ๋กœ ์ถœ๋ ฅ
  • ๋ถ„์„ ์ดˆ๊ธฐํ™” ์†Œ์š” ์‹œ๊ฐ„: 24~48์‹œ๊ฐ„
  • Daily ์—…๋ฐ์ดํŠธ
S3 Analytics ๋ถ„์„ ๊ฒฐ๊ณผ
โ”‚
โ–ผ
Lifecycle Rules ์„ค๊ณ„์˜ ์ถœ๋ฐœ์ ์œผ๋กœ ํ™œ์šฉ

๐Ÿ’ก Lifecycle Rules๋ฅผ ์ฒ˜์Œ ์„ค๊ณ„ํ•˜๊ฑฐ๋‚˜ ๊ฐœ์„ ํ•  ๋•Œ S3 Analytics๋ฅผ ๋จผ์ € ์‹คํ–‰ํ•ด์„œ ๋ฐ์ดํ„ฐ ๊ธฐ๋ฐ˜์œผ๋กœ ์ „ํ™˜ ์‹œ์  ๊ฒฐ์ • ๊ถŒ์žฅ


12. S3 Storage Lens#

  • ์ „์ฒด AWS Organization ์ˆ˜์ค€์—์„œ S3 ์Šคํ† ๋ฆฌ์ง€ ์‚ฌ์šฉ๋Ÿ‰๊ณผ ํ™œ๋™์„ ๋ถ„์„ยท์ตœ์ ํ™”ํ•˜๋Š” ๋„๊ตฌ
  • 30์ผ๊ฐ„ ์‚ฌ์šฉ๋Ÿ‰ ๋ฐ ํ™œ๋™ ์ง€ํ‘œ ์ง‘๊ณ„
  • ์ด์ƒ ํƒ์ง€(Anomaly Detection), ๋น„์šฉ ํšจ์œจํ™”, ๋ฐ์ดํ„ฐ ๋ณดํ˜ธ Best Practice ์ ์šฉ
  • ์ง‘๊ณ„ ๋‹จ์œ„: Organization, ํŠน์ • Account, Region, Bucket, Prefix
  • ๊ธฐ๋ณธ ๋Œ€์‹œ๋ณด๋“œ(Default Dashboard) ์ œ๊ณต ๋˜๋Š” ์ปค์Šคํ…€ ๋Œ€์‹œ๋ณด๋“œ ์ƒ์„ฑ
  • ์ผ๋ณ„ S3 ๋ฒ„ํ‚ท์œผ๋กœ ๋ฉ”ํŠธ๋ฆญ ๋‚ด๋ณด๋‚ด๊ธฐ ๊ฐ€๋Šฅ (CSV, Parquet)

Default Dashboard#

  • Multi-Region, Multi-Account ๋ฐ์ดํ„ฐ ์‹œ๊ฐํ™”
  • Amazon S3๊ฐ€ ์‚ฌ์ „ ๊ตฌ์„ฑ (Preconfigured)
  • ์‚ญ์ œ ๋ถˆ๊ฐ€ (๋‹จ, ๋น„ํ™œ์„ฑํ™”๋Š” ๊ฐ€๋Šฅ)

์ฃผ์š” Metrics ์นดํ…Œ๊ณ ๋ฆฌ#

์นดํ…Œ๊ณ ๋ฆฌ์ฃผ์š” ์ง€ํ‘œํ™œ์šฉ ๋ชฉ์ 
Summary MetricsStorageBytes, ObjectCount๊ฐ€์žฅ ๋น ๋ฅด๊ฒŒ ์ฆ๊ฐ€ํ•˜๋Š” Bucket/Prefix ํŒŒ์•…
Cost-Optimization MetricsNonCurrentVersionStorageBytes, IncompleteMultipartUploadStorageBytes7์ผ ์ด์ƒ๋œ ๋ถˆ์™„์ „ Multipart Upload ํƒ์ง€, ์ €๋น„์šฉ ํด๋ž˜์Šค ์ „ํ™˜ ํ›„๋ณด ํŒŒ์•…
Data-Protection MetricsVersioningEnabledBucketCount, MFADeleteEnabledBucketCount, SSEKMSEnabledBucketCount๋ฐ์ดํ„ฐ ๋ณดํ˜ธ Best Practice ๋ฏธ์ค€์ˆ˜ Bucket ํƒ์ง€
Access-Management MetricsObjectOwnershipBucketOwnerEnforcedBucketCountObject Ownership ์„ค์ • ํ˜„ํ™ฉ ํŒŒ์•…
Event MetricsEventNotificationEnabledBucketCountEvent Notification ์„ค์ • ํ˜„ํ™ฉ
Performance MetricsTransferAccelerationEnabledBucketCountTransfer Acceleration ํ™œ์„ฑํ™” ํ˜„ํ™ฉ
Activity MetricsAllRequests, GetRequests, PutRequests, BytesDownloaded์Šคํ† ๋ฆฌ์ง€ ์š”์ฒญ ํŒจํ„ด ํŒŒ์•…
Detailed Status Code Metrics200OKStatusCount, 403ForbiddenErrorCount, 404NotFoundErrorCountHTTP ์˜ค๋ฅ˜ ํŒจํ„ด ๋ถ„์„

Free vs. Advanced (Paid)#

ํ•ญ๋ชฉFreeAdvanced (Paid)
์ž๋™ ์ œ๊ณต ์—ฌ๋ถ€โœ… ๋ชจ๋“  ๊ณ ๊ฐ ์ž๋™ ์ œ๊ณต์ถ”๊ฐ€ ๋น„์šฉ
๊ธฐ๋ณธ Metrics ์ˆ˜~28๊ฐœ๋” ๋งŽ์€ ์ถ”๊ฐ€ ์ง€ํ‘œ
๋ฐ์ดํ„ฐ ๋ณด์กด ๊ธฐ๊ฐ„14์ผ15๊ฐœ์›”
CloudWatch ์—ฐ๋™โŒโœ… ์ถ”๊ฐ€ ๋น„์šฉ ์—†์ด CloudWatch ๊ฒŒ์‹œ
Prefix ๋ ˆ๋ฒจ ์ง‘๊ณ„โŒโœ…
Advanced Cost Optimization / Data ProtectionโŒโœ…

13. Requester Pays#

  • ๊ธฐ๋ณธ: Bucket ์†Œ์œ ์ž๊ฐ€ ๋ชจ๋“  S3 Storage ๋น„์šฉ + ๋ฐ์ดํ„ฐ ์ „์†ก ๋น„์šฉ ๋ถ€๋‹ด
  • Requester Pays ํ™œ์„ฑํ™” ์‹œ: ์š”์ฒญ์ž(Requester)๊ฐ€ ๋ฐ์ดํ„ฐ ๋‹ค์šด๋กœ๋“œ ์š”์ฒญ ๋น„์šฉ ๋ถ€๋‹ด
  • ๋Œ€์šฉ๋Ÿ‰ Dataset์„ ๋‹ค๋ฅธ ๊ณ„์ •๊ณผ ๊ณต์œ ํ•  ๋•Œ ์œ ์šฉ
  • ์š”์ฒญ์ž๋Š” ๋ฐ˜๋“œ์‹œ AWS์— ์ธ์ฆ(Authenticated) ๋˜์–ด์•ผ ํ•จ โ€” ์ต๋ช…(Anonymous) ์ ‘๊ทผ ๋ถˆ๊ฐ€
์ผ๋ฐ˜ Bucket: [์š”์ฒญ์ž] โ†’(๋ฌด๋ฃŒ ๋‹ค์šด๋กœ๋“œ)โ†’ [S3] โ†’ ๋น„์šฉ: Bucket Owner ๋ถ€๋‹ด
Requester Pays: [์š”์ฒญ์ž] โ†’(์œ ๋ฃŒ ๋‹ค์šด๋กœ๋“œ)โ†’ [S3] โ†’ ๋น„์šฉ: Requester ๋ถ€๋‹ด

14. ํ•ต์‹ฌ ์š”์•ฝ & ์‹œํ—˜ ํฌ์ธํŠธ#

S3 Architecture Overview
โ”œโ”€โ”€ ๋ณด์•ˆ: IAM Policy + Bucket Policy + Block Public Access (+ ACL)
โ”œโ”€โ”€ ์•”ํ˜ธํ™”: SSE-S3(๊ธฐ๋ณธ) / SSE-KMS(๊ฐ์‚ฌ ํ•„์š”) / SSE-C(๊ณ ๊ฐ ํ‚ค) / CSE
โ”‚ โ†’ ์ƒ์„ธ: AWS_S3_Security_Notes.md ์ฐธ๊ณ 
โ”œโ”€โ”€ ๊ฐ€์šฉ์„ฑ: Versioning + CRR/SRR Replication
โ”œโ”€โ”€ ๋น„์šฉ: Storage Class + Lifecycle Rules
โ”œโ”€โ”€ ์„ฑ๋Šฅ: Multipart Upload + Transfer Acceleration + Prefix ๋ถ„์‚ฐ
โ””โ”€โ”€ ์šด์˜: Event Notifications + Batch Operations + Storage Lens
Storage Class ๋น„์šฉ ์ˆœ์„œ (๋น„์Œˆ โ†’ ์ €๋ ด)
Standard > Standard-IA > One Zone-IA > Glacier Instant > Glacier Flexible > Deep Archive
Glacier ์ตœ์†Œ ๋ณด์กด ๊ธฐ๊ฐ„
โ”œโ”€โ”€ Instant / Flexible Retrieval: 90์ผ
โ””โ”€โ”€ Deep Archive: 180์ผ
Glacier Flexible Retrieval ๊ฒ€์ƒ‰ ์‹œ๊ฐ„
โ”œโ”€โ”€ Expedited: 1~5๋ถ„
โ”œโ”€โ”€ Standard: 3~5์‹œ๊ฐ„
โ””โ”€โ”€ Bulk: 5~12์‹œ๊ฐ„ (๋ฌด๋ฃŒ)
Glacier Deep Archive ๊ฒ€์ƒ‰ ์‹œ๊ฐ„
โ”œโ”€โ”€ Standard: 12์‹œ๊ฐ„
โ””โ”€โ”€ Bulk: 48์‹œ๊ฐ„

๐Ÿ“Œ ์‹œํ—˜ ์ž์ฃผ ์ถœ์ œ ํฌ์ธํŠธ ์ด์ •๋ฆฌ#

ํฌ์ธํŠธ๋‚ด์šฉ
Bucket ์ด๋ฆ„์ „ ์„ธ๊ณ„ ๊ณ ์œ , ์†Œ๋ฌธ์ž/์ˆซ์ž/ํ•˜์ดํ”ˆ๋งŒ, ๋ฆฌ์ „ ๋ ˆ๋ฒจ ์ƒ์„ฑ
์ตœ๋Œ€ Object ํฌ๊ธฐ5TB
5GB ์ดˆ๊ณผ ์—…๋กœ๋“œMultipart Upload ํ•„์ˆ˜
๊ธฐ๋ณธ ์•”ํ˜ธํ™” (2023~)SSE-S3 ์ž๋™ ์ ์šฉ, ์ถ”๊ฐ€ ๋น„์šฉ ์—†์Œ
SSE-C ํ•„์ˆ˜ ์š”๊ฑดHTTPS (HTTP ์š”์ฒญ ์‹œ ๊ฑฐ๋ถ€)
SSE-KMS Cross-AccountCustomer Managed Key(CMK) ํ•„์ˆ˜
Bucket Policy vs Default EncryptionBucket Policy๊ฐ€ ๋จผ์ € ํ‰๊ฐ€๋จ
MFA Delete ์„ค์ • ๊ถŒํ•œBucket Owner (Root ๊ณ„์ •)๋งŒ ๊ฐ€๋Šฅ
Versioning Suspend๊ธฐ์กด ๋ฒ„์ „ ์‚ญ์ œ ์•ˆ ๋จ
๋ฒ„์ €๋‹ ์ „ ํŒŒ์ผ Version IDnull
Replication ์ „์ œ์กฐ๊ฑด์†Œ์Šค+๋Œ€์ƒ ๋ชจ๋‘ Versioning ํ™œ์„ฑํ™”
๊ธฐ์กด ๊ฐ์ฒด ๋ณต์ œS3 Batch Replication ์‚ฌ์šฉ
Replication ์ฒด์ด๋‹์—†์Œ (Bucket 1โ†’2โ†’3 ์ž๋™ ๋ณต์ œ ์•ˆ ๋จ)
Transfer AccelerationCloudFront Edge Location ๊ฒฝ์œ 
Baseline PerformancePrefix๋‹น PUT 3,500/s, GET 5,500/s
S3 SelectSQL๋กœ ์„œ๋ฒ„ ์‚ฌ์ด๋“œ ํ•„ํ„ฐ๋ง, ์ „์†ก ๋น„์šฉ ์ ˆ๊ฐ
S3 Event โ†’ SNS/SQS/LambdaResource-based Policy ํ•„์š” (IAM Role ์•„๋‹˜)
S3 Event + EventBridge18๊ฐœ ์ด์ƒ Destination, ๊ณ ๊ธ‰ ํ•„ํ„ฐ๋ง, Replay ๊ฐ€๋Šฅ
S3 Analytics ๋Œ€์ƒStandard โ†’ Standard-IA๋งŒ (Glacier ๋ถˆ๊ฐ€)
S3 Analytics ์†Œ์š” ์‹œ๊ฐ„24~48์‹œ๊ฐ„
Storage Lens Default Dashboard์‚ญ์ œ ๋ถˆ๊ฐ€ (๋น„ํ™œ์„ฑํ™”๋งŒ ๊ฐ€๋Šฅ)
Storage Lens ๋ฐ์ดํ„ฐ ๋ณด์กดFree: 14์ผ / Advanced: 15๊ฐœ์›”
Requester Pays์š”์ฒญ์ž ๋น„์šฉ ๋ถ€๋‹ด, ์ต๋ช… ์ ‘๊ทผ ๋ถˆ๊ฐ€
Object LockWORM, Versioning ํ•„์ˆ˜
Compliance ModeRoot ํฌํ•จ ๋ˆ„๊ตฌ๋„ ์ˆ˜์ •/์‚ญ์ œ ๋ถˆ๊ฐ€
Governance ModeํŠน๋ณ„ ๊ถŒํ•œ(s3:BypassGovernanceRetention) ์žˆ์œผ๋ฉด ์ˆ˜์ • ๊ฐ€๋Šฅ
Legal Hold๋ณด์กด ๊ธฐ๊ฐ„ ๋ฌด๊ด€, ๋ฌด๊ธฐํ•œ ์ž ๊ธˆ
Glacier Vault Lockํ•œ ๋ฒˆ ์„ค์ • ํ›„ ๋ณ€๊ฒฝ ๋ถˆ๊ฐ€
Static Website 403Block Public Access ๋˜๋Š” Bucket Policy ๋ฏธ์„ค์ •
One Zone-IA๋‹จ์ผ AZ, AZ ํŒŒ๊ดด ์‹œ ๋ฐ์ดํ„ฐ ์†์‹ค
Intelligent-Tiering ์žฅ์ ๊ฒ€์ƒ‰(Retrieval) ์š”๊ธˆ ์—†์Œ
Pre-signed URL ์œ ํšจ ๊ธฐ๊ฐ„Console 12h / CLI ์ตœ๋Œ€ 604800์ดˆ(7์ผ)

๐Ÿ“š ์ฐธ๊ณ  ์ž๋ฃŒ#