๐Ÿ”ฅ ๋‹จ์ผ ์žฅ์•  ์ง€์ (SPOF) ํ•ด๊ฒฐํ•˜๊ธฐ: ์‹œ์Šคํ…œ์„ ์•ˆ์ „ํ•˜๊ฒŒ ์ง€ํ‚ค๋Š” ๋ฐฉ๋ฒ•

์„ํ˜„ยท2025๋…„ 2์›” 21์ผ
0

Insight

๋ชฉ๋ก ๋ณด๊ธฐ
23/43

๐Ÿค” ๋‹จ์ผ ์žฅ์•  ์ง€์ (SPOF)์ด๋ž€?

๊ฐœ๋ฐœ์„ ํ•˜๋‹ค ๋ณด๋ฉด "์ด ์„œ๋ฒ„ ํ•˜๋‚˜๋ผ๋„ ๋‹ค์šด๋˜๋ฉด ์„œ๋น„์Šค๊ฐ€ ๋ฉˆ์ถœ๊นŒ?" ํ•˜๋Š” ๊ณ ๋ฏผ์„ ํ•  ๋•Œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฐ ๊ฒฝ์šฐ ๋ฐ”๋กœ ๋‹จ์ผ ์žฅ์•  ์ง€์ (Single Point of Failure, SPOF) ๋ฌธ์ œ๊ฐ€ ์žˆ์„ ๊ฐ€๋Šฅ์„ฑ์ด ํฝ๋‹ˆ๋‹ค.

SPOF๋ž€ ์‹œ์Šคํ…œ ๋‚ด ํŠน์ • ์š”์†Œ๊ฐ€ ์žฅ์• ๊ฐ€ ๋‚ฌ์„ ๋•Œ, ์ „์ฒด ์‹œ์Šคํ…œ์ด ์˜ํ–ฅ์„ ๋ฐ›๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. ์‰ฝ๊ฒŒ ๋งํ•ด, ๋‹จ ํ•˜๋‚˜์˜ ๊ตฌ์„ฑ ์š”์†Œ๊ฐ€ ๋ง๊ฐ€์ง€๋ฉด ์ „์ฒด ์„œ๋น„์Šค๊ฐ€ ๋ฌด๋„ˆ์งˆ ์ˆ˜ ์žˆ๋Š” ๊ตฌ์กฐ์ฃ .

์˜ˆ๋ฅผ ๋“ค์–ด, ์„œ๋ฒ„๊ฐ€ ํ•œ ๋Œ€๋ฟ์ธ ์‹œ์Šคํ…œ์—์„œ ํ•ด๋‹น ์„œ๋ฒ„๊ฐ€ ๋‹ค์šด๋˜๋ฉด ์ „์ฒด ์„œ๋น„์Šค๊ฐ€ ์ค‘๋‹จ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋˜๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๊ฐ€ ํ•˜๋‚˜๋ฟ์ด๋ผ๋ฉด, ํ•ด๋‹น DB์— ์žฅ์• ๊ฐ€ ๋ฐœ์ƒํ–ˆ์„ ๋•Œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์ •์ƒ์ ์œผ๋กœ ์ž‘๋™ํ•˜์ง€ ๋ชปํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๋ฌธ์ œ๋Š” ์‚ฌ์šฉ์ž ๊ฒฝํ—˜์„ ํ•ด์น˜๊ณ , ๊ธฐ์—…์˜ ๋น„์ฆˆ๋‹ˆ์Šค์—๋„ ํฐ ์˜ํ–ฅ์„ ์ค„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ทธ๋ ‡๋‹ค๋ฉด, SPOF๋ฅผ ์–ด๋–ป๊ฒŒ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ์„๊นŒ์š”? ์˜ค๋Š˜์€ AWS ๊ธฐ๋ฐ˜์—์„œ SPOF๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์†Œ๊ฐœํ•ด๋ณด๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค! ๐Ÿš€


๐Ÿšจ ํ˜„์žฌ ์‹œ์Šคํ…œ ๋ถ„์„

SPOF๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ๋จผ์ € ํ˜„์žฌ ์‹œ์Šคํ…œ์˜ ๋ฌธ์ œ์ ์„ ํŒŒ์•…ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

โœ… ํ˜„์žฌ ์‹œ์Šคํ…œ ๊ตฌ์„ฑ

  • API ์„œ๋ฒ„: ๋‹จ์ผ ์„œ๋ฒ„๋กœ ์šด์˜ ์ค‘ (์žฅ์•  ๋ฐœ์ƒ ์‹œ ์„œ๋น„์Šค ์ค‘๋‹จ ๊ฐ€๋Šฅ)
  • ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค(DB): Master-Replica ๊ตฌ์กฐ (Master DB 1๋Œ€, Replica DB 3๋Œ€) โ†’ Failover ๊ธฐ๋Šฅ ์ง€์›

์œ„์™€ ๊ฐ™์€ ์‹œ์Šคํ…œ์—์„œ SPOF๊ฐ€ ๋ฐœ์ƒํ•  ๊ฐ€๋Šฅ์„ฑ์ด ์žˆ๋Š” ๋ถ€๋ถ„์„ ์ฐพ์•„๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.


๐Ÿ” SPOF ์‹๋ณ„ ๋ฐ ํ•ด๊ฒฐ ๋ฐฉ์•ˆ

1๏ธโƒฃ API ์„œ๋ฒ„ ์ด์ค‘ํ™” + ๋กœ๋“œ ๋ฐธ๋Ÿฐ์„œ ์ถ”๊ฐ€

โŒ ๋ฌธ์ œ์ : API ์„œ๋ฒ„๊ฐ€ ๋‹จ์ผ ์„œ๋ฒ„๋กœ ์šด์˜๋˜๋ฏ€๋กœ, ์„œ๋ฒ„ ์žฅ์•  ๋ฐœ์ƒ ์‹œ ์ „์ฒด ์„œ๋น„์Šค๊ฐ€ ์ค‘๋‹จ๋ฉ๋‹ˆ๋‹ค.

โœ… ํ•ด๊ฒฐ์ฑ…:

  • API ์„œ๋ฒ„๋ฅผ ์—ฌ๋Ÿฌ ๋Œ€๋กœ ๋Š˜๋ฆฌ๊ณ , AWS Elastic Load Balancer(ELB)๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํŠธ๋ž˜ํ”ฝ์„ ๋ถ„์‚ฐ์‹œํ‚ต๋‹ˆ๋‹ค.
  • ์„œ๋ฒ„ ์žฅ์• ๊ฐ€ ๋ฐœ์ƒํ•ด๋„ ๋‹ค๋ฅธ ์„œ๋ฒ„๊ฐ€ ์š”์ฒญ์„ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๋„๋ก Auto Scaling์„ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.
  • ์ด๋ฅผ ํ†ตํ•ด ๊ฐ€์šฉ์„ฑ์„ ๋†’์ด๊ณ  ํ™•์žฅ์„ฑ์„ ํ™•๋ณดํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ด์ค‘ํ™”๋ฅผ ์ ์šฉํ•˜๋ฉด ํŠธ๋ž˜ํ”ฝ์ด ๋งŽ์•„์งˆ ๊ฒฝ์šฐ์—๋„ ๋ถ€ํ•˜๋ฅผ ๋ถ„์‚ฐํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ํŠน์ • ์„œ๋ฒ„๊ฐ€ ์žฅ์• ๋ฅผ ์ผ์œผํ‚ค๋”๋ผ๋„ ์„œ๋น„์Šค๊ฐ€ ์ค‘๋‹จ๋˜์ง€ ์•Š๊ณ  ์ง€์†์ ์œผ๋กœ ์šด์˜๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.


2๏ธโƒฃ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ด์ค‘ํ™” ๋ฐ ์ž๋™ Failover ์„ค์ •

โŒ ๋ฌธ์ œ์ : Master DB๊ฐ€ ๋‹จ์ผ ๋…ธ๋“œ๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ์–ด ์žฅ์•  ๋ฐœ์ƒ ์‹œ ์ „์ฒด DB ์„œ๋น„์Šค์— ์˜ํ–ฅ์„ ์ค๋‹ˆ๋‹ค.

โœ… ํ•ด๊ฒฐ์ฑ…:

  • AWS RDS Multi-AZ ๋ฐฐํฌ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ž๋™ Failover๋ฅผ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.
  • Master DB ์žฅ์•  ๋ฐœ์ƒ ์‹œ Replica DB๊ฐ€ ์ž๋™์œผ๋กœ Master ์—ญํ• ์„ ์ˆ˜ํ–‰ํ•˜๋„๋ก ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.
  • ์ถ”๊ฐ€์ ์œผ๋กœ Aurora Global Database๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋‹ค์ค‘ ๋ฆฌ์ „์— DB๋ฅผ ๋ถ„์‚ฐ์‹œํ‚ค๋Š” ๊ฒƒ๋„ ๊ณ ๋ คํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ด๋Ÿฌํ•œ ๊ตฌ์„ฑ์„ ์ ์šฉํ•˜๋ฉด ํ•œ ์ง€์—ญ(Region)์—์„œ ์žฅ์• ๊ฐ€ ๋ฐœ์ƒํ•˜๋”๋ผ๋„ ๋‹ค๋ฅธ ์ง€์—ญ์˜ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๊ฐ€ ์ด๋ฅผ ๋ณด์™„ํ•  ์ˆ˜ ์žˆ์–ด ์„œ๋น„์Šค์˜ ์•ˆ์ •์„ฑ์„ ๋†’์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.


3๏ธโƒฃ ์„ธ์…˜ ๊ด€๋ฆฌ ๊ฐœ์„  (Sticky Session vs Redis)

API ์„œ๋ฒ„๊ฐ€ ์—ฌ๋Ÿฌ ๋Œ€๋กœ ํ™•์žฅ๋  ๊ฒฝ์šฐ ์„ธ์…˜ ๊ด€๋ฆฌ๋„ ์‹ ๊ฒฝ ์จ์•ผ ํ•ฉ๋‹ˆ๋‹ค.

โŒ ๋ฌธ์ œ์ :

  • ํด๋ผ์ด์–ธํŠธ๊ฐ€ ๋งค๋ฒˆ ๋‹ค๋ฅธ API ์„œ๋ฒ„์— ์—ฐ๊ฒฐ๋  ๊ฒฝ์šฐ, ๊ธฐ์กด ์„ธ์…˜์ด ์œ ์ง€๋˜์ง€ ์•Š์„ ์ˆ˜ ์žˆ์Œ.

โœ… ํ•ด๊ฒฐ์ฑ…:

  • Sticky Session์„ ์„ค์ •ํ•˜์—ฌ ํŠน์ • ์‚ฌ์šฉ์ž๊ฐ€ ํ•ญ์ƒ ๊ฐ™์€ ์„œ๋ฒ„์— ์—ฐ๊ฒฐ๋˜๋„๋ก ์„ค์ •ํ•  ์ˆ˜ ์žˆ์Œ.
  • ๋” ๋‚˜์€ ๋ฐฉ๋ฒ•์œผ๋กœ AWS ElastiCache(Redis)๋ฅผ ํ™œ์šฉํ•œ ์„ธ์…˜ ์ €์žฅ์†Œ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์„œ๋ฒ„ ๊ฐ„ ์„ธ์…˜ ๊ณต์œ ๊ฐ€ ๊ฐ€๋Šฅํ•˜๋ฉฐ ํ™•์žฅ์„ฑ๋„ ์ข‹์•„์ง‘๋‹ˆ๋‹ค.

์„ธ์…˜ ๊ด€๋ฆฌ๋ฅผ ์ œ๋Œ€๋กœ ํ•˜์ง€ ์•Š์œผ๋ฉด ๋กœ๊ทธ์ธ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์˜ˆ์ƒ์น˜ ๋ชปํ•œ ๋กœ๊ทธ์•„์›ƒ์ด ๋ฐœ์ƒํ•˜๊ฑฐ๋‚˜, ํŠน์ • ์š”์ฒญ์ด ์ •์ƒ์ ์œผ๋กœ ์ฒ˜๋ฆฌ๋˜์ง€ ์•Š๋Š” ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.


4๏ธโƒฃ ๋กœ๊ทธ ๋ฐ ๋ชจ๋‹ˆํ„ฐ๋ง ์‹œ์Šคํ…œ ๊ตฌ์ถ•

โŒ ๋ฌธ์ œ์ : ์„œ๋ฒ„ ์žฅ์• ๊ฐ€ ๋ฐœ์ƒํ–ˆ์„ ๋•Œ ์›์ธ์„ ์ถ”์ ํ•˜๊ธฐ ์–ด๋ ค์šธ ์ˆ˜ ์žˆ์Œ.

โœ… ํ•ด๊ฒฐ์ฑ…:

  • AWS CloudWatch๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ API ์„œ๋ฒ„ ๋ฐ DB์˜ ์ƒํƒœ๋ฅผ ์ง€์†์ ์œผ๋กœ ๋ชจ๋‹ˆํ„ฐ๋งํ•ฉ๋‹ˆ๋‹ค.
  • AWS CloudTrail์„ ํ™œ์šฉํ•˜์—ฌ ์‹œ์Šคํ…œ ์ด๋ฒคํŠธ๋ฅผ ์ถ”์ ํ•˜๊ณ , ๋ณด์•ˆ ๊ฐ์‚ฌ๋ฅผ ์ง„ํ–‰ํ•ฉ๋‹ˆ๋‹ค.
  • ELK(Stack - Elasticsearch, Logstash, Kibana)๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋กœ๊ทธ๋ฅผ ํ†ตํ•ฉ ๋ถ„์„ํ•ฉ๋‹ˆ๋‹ค.

๋กœ๊ทธ๋ฅผ ์ œ๋Œ€๋กœ ๊ด€๋ฆฌํ•˜์ง€ ์•Š์œผ๋ฉด ์žฅ์•  ๋ฐœ์ƒ ์‹œ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ๋ฐ ์‹œ๊ฐ„์ด ์˜ค๋ž˜ ๊ฑธ๋ฆด ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ์ค‘์•™์—์„œ ๋กœ๊ทธ๋ฅผ ๊ด€๋ฆฌํ•˜๊ณ  ๋ถ„์„ํ•  ์ˆ˜ ์žˆ๋Š” ์‹œ์Šคํ…œ์„ ๊ตฌ์ถ•ํ•˜๋Š” ๊ฒƒ์ด ์ค‘์š”ํ•ฉ๋‹ˆ๋‹ค.


5๏ธโƒฃ ๋ฌด์ค‘๋‹จ ๋ฐฐํฌ (Blue-Green / Canary ๋ฐฐํฌ)

โŒ ๋ฌธ์ œ์ : ์„œ๋ฒ„ ์—…๋ฐ์ดํŠธ ์‹œ ๋‹ค์šดํƒ€์ž„์ด ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์Œ.

โœ… ํ•ด๊ฒฐ์ฑ…:

  • Blue-Green ๋ฐฐํฌ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ƒˆ๋กœ์šด ๋ฒ„์ „์˜ API ์„œ๋ฒ„๋ฅผ ์‚ฌ์ „ ๋ฐฐํฌํ•˜๊ณ , ํŠธ๋ž˜ํ”ฝ์„ ์ „ํ™˜ํ•˜์—ฌ ๋ฌด์ค‘๋‹จ ์—…๋ฐ์ดํŠธ๋ฅผ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค.
  • Canary ๋ฐฐํฌ๋ฅผ ์ ์šฉํ•˜์—ฌ ์ผ๋ถ€ ํŠธ๋ž˜ํ”ฝ๋งŒ ์ƒˆ๋กœ์šด ๋ฒ„์ „์œผ๋กœ ์ „ํ™˜ํ•œ ํ›„ ์•ˆ์ •์„ฑ์„ ๊ฒ€์ฆํ•ฉ๋‹ˆ๋‹ค.

๋ฌด์ค‘๋‹จ ๋ฐฐํฌ๋ฅผ ์ ์šฉํ•˜๋ฉด ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ์„ ์•ˆ์ „ํ•˜๊ฒŒ ๋ฐฐํฌํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ๋ฒ„๊ทธ๊ฐ€ ๋ฐœ์ƒํ•  ๊ฒฝ์šฐ ๋น ๋ฅด๊ฒŒ ๋กค๋ฐฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.


๐Ÿš€ AWS๋ผ๋ฉด? SPOF ํ•ด๊ฒฐ์„ ์œ„ํ•œ ์•„ํ‚คํ…์ฒ˜ ๊ตฌ์„ฑ

AWS๋Š” ๊ฐ•๋ ฅํ•œ ์ธํ”„๋ผ๋ฅผ ์ œ๊ณตํ•˜์ง€๋งŒ, ๋น„์šฉ์ด ๋งŒ๋งŒ์น˜ ์•Š๋‹ค๋Š” ๋‹จ์ ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๋ชจ๋“  ๊ธฐ๋Šฅ์„ ๋‹ค ํ™œ์šฉํ•˜๋ฉด ๊ฐ•๋ ฅํ•œ HA(๊ณ ๊ฐ€์šฉ์„ฑ) ์‹œ์Šคํ…œ์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ์ง€๋งŒ, ๋น„์šฉ์ด ๋งŽ์ด ๋“ค๊ธฐ ๋•Œ๋ฌธ์— ์ตœ์†Œํ•œ์˜ ์„ค์ •์œผ๋กœ SPOF๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ๊ณ ๋ฏผํ•ด๋ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ ‡๋‹ค๋ฉด ์ตœ์†Œ ๋น„์šฉ์œผ๋กœ๋„ ์•ˆ์ •์ ์ธ ๊ตฌ์„ฑ์„ ๋งŒ๋“ค๋ ค๋ฉด ์–ด๋–ป๊ฒŒ ํ•ด์•ผ ํ• ๊นŒ์š”?

AWS ํ™˜๊ฒฝ์—์„œ๋Š” SPOF๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ตฌ์„ฑ์œผ๋กœ ์„ค๊ณ„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

1๏ธโƒฃ API ์„œ๋ฒ„ ์ด์ค‘ํ™” & ๋กœ๋“œ ๋ฐธ๋Ÿฐ์‹ฑ โ†’ ELB + EC2 Auto Scaling ์‚ฌ์šฉ
2๏ธโƒฃ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ด์ค‘ํ™” โ†’ RDS Multi-AZ ๋˜๋Š” Aurora ๊ธ€๋กœ๋ฒŒ ๋ฐฐํฌ ์‚ฌ์šฉ
3๏ธโƒฃ ์„ธ์…˜ ๊ณต์œ  โ†’ ElastiCache(Redis)๋กœ ์„ธ์…˜ ์ €์žฅ
4๏ธโƒฃ ๋กœ๊ทธ ๋ฐ ๋ชจ๋‹ˆํ„ฐ๋ง โ†’ CloudWatch + CloudTrail + ELK ์Šคํƒ ํ™œ์šฉ
5๏ธโƒฃ ๋ฌด์ค‘๋‹จ ๋ฐฐํฌ โ†’ Blue-Green ๋ฐฐํฌ ๋˜๋Š” Canary ๋ฐฐํฌ ์ ์šฉ

์ด๋Ÿฌํ•œ ๊ตฌ์กฐ๋ฅผ ์ ์šฉํ•˜๋ฉด AWS ๊ธฐ๋ฐ˜์—์„œ ๊ฐ€์šฉ์„ฑ์„ ๊ทน๋Œ€ํ™”ํ•˜๋ฉด์„œ๋„ ๋‹จ์ผ ์žฅ์•  ์ง€์ ์„ ํšจ๊ณผ์ ์œผ๋กœ ์ œ๊ฑฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ๋น„์šฉ์„ ๊ณ ๋ คํ•ด์•ผ ํ•˜๋Š” ๊ฒฝ์šฐ, ์ตœ์†Œํ•œ์œผ๋กœ ์ ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์ „๋žต์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

๐Ÿ’ฐ ์ตœ์†Œ ๋น„์šฉ์œผ๋กœ SPOF ํ•ด๊ฒฐํ•˜๋Š” AWS ๊ตฌ์„ฑ

1๏ธโƒฃ API ์„œ๋ฒ„ ์ด์ค‘ํ™” & ๋กœ๋“œ ๋ฐธ๋Ÿฐ์‹ฑ โ†’ ๋‹จ์ผ EC2 ์ธ์Šคํ„ด์Šค ๋Œ€์‹  2๊ฐœ์˜ ์ž‘์€ EC2 ์ธ์Šคํ„ด์Šค + ALB(Application Load Balancer) ์‚ฌ์šฉ. ํŠธ๋ž˜ํ”ฝ์ด ์ ๋‹ค๋ฉด ALB ๋Œ€์‹  Nginx ๋ฆฌ๋ฒ„์Šค ํ”„๋ก์‹œ๋กœ ๋Œ€์ฒด ๊ฐ€๋Šฅ.
2๏ธโƒฃ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ด์ค‘ํ™” โ†’ RDS Multi-AZ๋Š” ๋น„์‹ธ๋ฏ€๋กœ, ๋‹จ์ผ RDS + Read Replica ๊ตฌ์„ฑ์œผ๋กœ ๋น„์šฉ ์ ˆ๊ฐ. ๋˜๋Š” EC2์— ์ง์ ‘ MySQL/PostgreSQL์„ ์„ค์น˜ํ•ด ๊ด€๋ฆฌํ•˜๋Š” ๋ฐฉ๋ฒ•๋„ ๊ณ ๋ ค ๊ฐ€๋Šฅ.
3๏ธโƒฃ ์„ธ์…˜ ๊ณต์œ  โ†’ ElastiCache(Redis)๋Š” ๋น„์šฉ์ด ๋“ค๋ฏ€๋กœ, DynamoDB ๊ฐ™์€ ์„œ๋ฒ„๋ฆฌ์Šค ์†”๋ฃจ์…˜์„ ํ™œ์šฉํ•˜๊ฑฐ๋‚˜, ํ•„์š” ์ตœ์†Œํ•œ์˜ ๊ฒฝ์šฐ DB์— ์„ธ์…˜ ์ €์žฅ.
4๏ธโƒฃ ๋กœ๊ทธ ๋ฐ ๋ชจ๋‹ˆํ„ฐ๋ง โ†’ CloudWatch ๋กœ๊ทธ๋ฅผ ํ•„์ˆ˜์ ์ธ ๋ถ€๋ถ„๋งŒ ์ˆ˜์ง‘ํ•˜๋„๋ก ์„ค์ •ํ•˜์—ฌ ๋น„์šฉ ์ ˆ๊ฐ.
5๏ธโƒฃ ๋ฌด์ค‘๋‹จ ๋ฐฐํฌ โ†’ Blue-Green ๋ฐฐํฌ๋Š” ๊ณ ๋น„์šฉ์ด๋ฏ€๋กœ, Canary ๋ฐฐํฌ ๋ฐฉ์‹์œผ๋กœ ์ผ๋ถ€ ํŠธ๋ž˜ํ”ฝ๋งŒ ์ƒˆ ๋ฒ„์ „์œผ๋กœ ์ „ํ™˜ํ•ด ๊ฒ€์ฆ ํ›„ ์ „์ฒด ๋ฐฐํฌ.

์œ„์™€ ๊ฐ™์ด ์ตœ์†Œํ•œ์˜ ์„ค์ •์œผ๋กœ๋„ SPOF๋ฅผ ์ค„์ผ ์ˆ˜ ์žˆ์œผ๋ฉฐ, ํ•„์š”์— ๋”ฐ๋ผ ์ ์ง„์ ์œผ๋กœ ํ™•์žฅํ•˜๋Š” ์ „๋žต์ด ์ข‹์Šต๋‹ˆ๋‹ค.


๐ŸŽฏ ๊ฒฐ๋ก 

๋‹จ์ผ ์žฅ์•  ์ง€์ (SPOF)์€ ์„œ๋น„์Šค ์šด์˜์—์„œ ๊ฐ€์žฅ ๋จผ์ € ํ•ด๊ฒฐํ•ด์•ผ ํ•  ์ค‘์š”ํ•œ ์š”์†Œ์ž…๋‹ˆ๋‹ค. AWS๋ฅผ ํ™œ์šฉํ•˜๋ฉด ๋‹ค์–‘ํ•œ ๊ธฐ๋Šฅ์„ ํ†ตํ•ด SPOF๋ฅผ ์ œ๊ฑฐํ•˜๊ณ , ์•ˆ์ •์ ์ด๊ณ  ํ™•์žฅ ๊ฐ€๋Šฅํ•œ ์‹œ์Šคํ…œ์„ ๊ตฌ์ถ•ํ•  ์ˆ˜ ์žˆ๋Š”๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ๋ฌผ๋ก  ๋ˆ์€ ๋งŽ์ด ๋“ค์ง€๋งŒ์š”...

๐Ÿ“Œ SPOF๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ํ•ต์‹ฌ ํฌ์ธํŠธ

  • ์„œ๋ฒ„ ์ด์ค‘ํ™” & ๋กœ๋“œ ๋ฐธ๋Ÿฐ์‹ฑ ์ ์šฉ (ELB + Auto Scaling)
  • DB ์ด์ค‘ํ™” ๋ฐ ์ž๋™ Failover ์„ค์ • (RDS Multi-AZ)
  • ์„ธ์…˜ ๊ด€๋ฆฌ ์ตœ์ ํ™” (ElastiCache ํ™œ์šฉ)
  • ๋กœ๊ทธ ๋ฐ ๋ชจ๋‹ˆํ„ฐ๋ง ๊ฐ•ํ™” (CloudWatch + ELK)
  • ๋ฌด์ค‘๋‹จ ๋ฐฐํฌ ์ ์šฉ (Blue-Green ๋˜๋Š” Canary ๋ฐฐํฌ)

AWS ๊ธฐ๋ฐ˜์—์„œ ์ธํ”„๋ผ๋ฅผ ์„ค๊ณ„ํ•  ๋•Œ ์ด๋Ÿฌํ•œ ์š”์†Œ๋“ค์„ ๊ณ ๋ คํ•˜๋ฉด, ๋‹จ์ผ ์žฅ์•  ์ง€์ ์„ ์ œ๊ฑฐํ•˜๊ณ  ์•ˆ์ •์ ์ธ ์„œ๋น„์Šค ์šด์˜์ด ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. ์•ž์œผ๋กœ๋„ ํ™•์žฅ์„ฑ๊ณผ ๊ฐ€์šฉ์„ฑ์„ ๊ณ ๋ คํ•œ ์ธํ”„๋ผ ์„ค๊ณ„๋ฅผ ์ง€์†์ ์œผ๋กœ ๊ณ ๋ฏผํ•ด ๋‚˜๊ฐ€์•ผ ํ•ฉ๋‹ˆ๋‹ค! ๐Ÿš€

0๊ฐœ์˜ ๋Œ“๊ธ€