๊ด€๋ฆฌ ๋ฉ”๋‰ด

๐‘†๐‘ข๐‘›๐‘ โ„Ž๐‘–๐‘›๐‘’ ๐‘Ž๐‘“๐‘ก๐‘’๐‘Ÿ ๐‘Ÿ๐‘Ž๐‘–๐‘›โœง

[AWS] EC2, EBS, AMI, Autoscaling ๋ณธ๋ฌธ

์šด์˜์ฒด์ œ(Operating System)

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

 

 

  • ์‹œ์Šคํ…œ ํ•˜๋“œ์›จ์–ด ์ž์›๊ณผ ์†Œํ”„ํŠธ์›จ์–ด ์ž์›์„ ์šด์˜ ๊ด€๋ฆฌํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ
    • Windows, Linux, MacOs, Android
  • ํŠน๊ถŒ ๋ช…๋ น(privileged instruction): ์‹œ์Šคํ…œ ์š”์†Œ๋“ค๊ณผ ์†Œํ†ตํ• ์ˆ˜ ์žˆ๋Š” ๋ช…๋ น - OS๋งŒ ๊ฐ€๋Šฅ
    • OS๋Š” ํŠน๊ถŒ ๋ช…๋ น๋•Œ๋ฌธ์— ํ•˜๋‚˜์˜ ํ•˜๋“œ์›จ์–ด ์‹œ์Šคํ…œ(์ปดํ“จํ„ฐ)๋‹น ํ•˜๋‚˜๋ฐ–์— ๋Œ์•„๊ฐˆ์ˆ˜ ์—†์Œ
    • ์ผ๋ฐ˜ ํ”„๋กœ๊ทธ๋žจ์€ ํŠน๊ถŒ ๋ช…๋ น์ด ํ•„์š”์—†๊ธฐ๋•Œ๋ฌธ์— ๋งŽ์€ ํ”„๋กœ๊ทธ๋žจ์„ ๋™์‹œ์— ์ˆ˜ํ–‰ ๊ฐ€๋Šฅ
  • ๊ฐ€์ƒํ™”๊ฐ€ ๋‚˜ํƒ€๋‚˜๊ธฐ ์ „ ๊นŒ์ง€๋Š” ํ•˜๋‚˜์˜ ํ•˜๋“œ์›จ์–ด ์‹œ์Šคํ…œ์€ ํ•˜๋‚˜์˜ OS๋งŒ ์‹คํ–‰์ด ๊ฐ€๋Šฅํ–ˆ์Œ
    • ์ฆ‰ ์ผ๋ฐ˜์ ์ธ ์ปดํ“จํ„ฐ์ฒ˜๋Ÿผ ์ง์ ‘ OS๊ฐ€ ํ•˜๋“œ์›จ์–ด์— ์„ค์น˜๋œ ์ƒํƒœ(Bare-Metal)๋กœ๋งŒ ์šด์˜ ๊ฐ€๋Šฅํ–ˆ์—ˆ์Œ

 

๊ฐ€์ƒํ™”

๊ฐ€์ƒํ™”๋ž€ ๊ฐ€์ƒํ™”๋ฅผ ๊ด€๋ฆฌํ•˜๋Š” ์†Œํ”„ํŠธ์›จ์–ด(์ฃผ๋กœ Hypervisor)๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํ•˜๋‚˜์˜ ๋ฌผ๋ฆฌ์  ๋จธ์‹ ์—์„œ ๊ฐ€์ƒ ๋จธ์‹ (VM)์„ ๋งŒ๋“œ๋Š” ํ”„๋กœ์„ธ์Šค์ด๋‹ค. Hypervisor๋Š” ๊ฐ€์ƒํ™” ์ธต์„ ๊ตฌํ˜„ํ•˜์—ฌ ๋ฌผ๋ฆฌ์  ๋จธ์‹ ์˜ ์ปดํ“จํŒ… ๋ฆฌ์†Œ์Šค๋กœ๋ถ€ํ„ฐ ๊ฐ€์ƒ ํ™˜๊ฒฝ์„ ๋ถ„๋ฆฌํ•˜๊ณ  ๊ฐ€์ƒ ๋จธ์‹ (VM)์„ ์ƒ์„ฑํ•œ๋‹ค. VM์€ ๋ฌผ๋ฆฌ์  ๋จธ์‹ ๊ณผ ๋™์ผํ•œ ์—ญํ•  ๋ฐ ์„ฑ๋Šฅ์„ ์ˆ˜ํ–‰ํ•˜์ง€๋งŒ, cpu์™€ ๋ฉ”๋ชจ๋ฆฌ ๋ฐ ์Šคํ† ๋ฆฌ์ง€์™€ ๊ฐ™์€ ๋ฌผ๋ฆฌ์  ๋จธ์‹ ์˜ ์ปดํ“จํŒ… ๋ฆฌ์†Œ์Šค๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค. Hypervisor๋Š” ํ•„์š”์— ๋”ฐ๋ผ ๊ฐ VM์— ์ด๋Ÿฌํ•œ ์ปดํ“จํŒ… ๋ฆฌ์†Œ์Šค๋ฅผ ํ• ๋‹นํ•œ๋‹ค.

 

 

 

๊ฐ€์ƒํ™”์˜ ์—ญ์‚ฌ

 

  • 1์„ธ๋Œ€: ์™„์ „ ๊ฐ€์ƒํ™”(Fully Emulated)
    • ๋ชจ๋“  ์‹œ์Šคํ…œ ์š”์†Œ๊ฐ€ ์—๋ฌผ๋ ˆ์ดํ„ฐ ์•ˆ์—์„œ ๋Œ์•„๊ฐ
    • ์ฆ‰ CPU, ํ•˜๋“œ๋””์Šคํฌ, ๋งˆ๋”๋ณด๋“œ ๋“ฑ ๋ชจ๋“  ์š”์†Œ๋ฅผ ์—๋ฎฌ๋ ˆ์ดํ„ฐ๋กœ ๊ตฌํ˜„ํ•˜์—ฌ OS์™€ ์—ฐ๋™
    • ์—„์ฒญ๋‚˜๊ฒŒ ๋Š๋ฆผ

 

  • 2์„ธ๋Œ€ : paravirtualization
    • Guest OS๋Š” ํ•˜์ดํผ๋ฐ”์ด์ €์™€ ํ†ต์‹ 
    • ํ•˜์ดํผ๋ฐ”์ด์ €: OS์™€ ํ•˜๋“œ์›จ์–ด ์‚ฌ์ด์— ์กด์žฌํ•˜๋Š” ์ผ์ข…์˜ ๊ฐ€์ƒํ™” ๋งค๋‹ˆ์ €
    • ์†๋„์˜ ํ–ฅ์ƒ
    • ๋ช‡ ๋ช‡ ์š”์†Œ์˜ ๊ฒฝ์šฐ ์—ฌ์ „ํžˆ ์—๋ฌผ๋ ˆ์ดํ„ฐ ํ•„์š”= ๋Š๋ฆผ

 

  • 3์„ธ๋Œ€: Hardward Virtual Machine(HVM)
    • ํ•˜๋“œ์›จ์–ด์—์„œ ์ง์ ‘ ๊ฐ€์ƒํ™”๋ฅผ ์ง€์›
    • ์ง์ ‘ Guest-OS๊ฐ€ ํ•˜๋“œ์›จ์–ด์™€ ํ†ต์‹  = ๋น ๋ฅธ ์†๋„(near bare-metal)

 


๊ฐ€์ƒํ™”์™€ ํด๋ผ์šฐ๋“œ

AWS ํด๋ผ์šฐ๋“œ ํ™˜๊ฒฝ์—์„œ ๋ฆฌ์†Œ์Šค๋ฅผ ์ž‘์€ ๋‹จ์œ„๋กœ ๋น ๋ฅด๊ฒŒ ๊ตฌ์„ฑํ•  ์ˆ˜ ์žˆ๋Š” ์›๋™๋ ฅ์€ ๊ฐ€์ƒํ™”์ด๋‹ค. ์ฆ‰ AWS์—์„œ ์‚ฌ์šฉ์ž๋งˆ๋‹ค ์ปดํ“จํ„ฐ๋ฅผ ํ• ๋‹นํ•ด์ฃผ๋Š” ๊ฒƒ์ด ์•„๋‹Œ ์ด๋ฏธ ๊ตฌ์ถ•๋œ ๊ฐ€์ƒํ™” ๊ฐ€๋Šฅํ•œ ์„œ๋ฒ„์˜ ํ•œ ๋ถ€๋ถ„์„ ํ• ๋‹นํ•ด ์ฃผ๋Š”๊ฒƒ์ด๋‹ค. 

 

 



EC2 (Amazon Elastic Compute Cloud)

Amazon Elastic Compute Cloud(EC2)๋Š” ์•ˆ์ „ํ•˜๊ณ  ํฌ๊ธฐ ์กฐ์ •์ด ๊ฐ€๋Šฅํ•œ ์ปดํ“จํŒ… ํŒŒ์›Œ๋ฅผ ํด๋ผ์šฐ๋“œ์—์„œ ์ œ๊ณตํ•˜๋Š” ์›น ์„œ๋น„์Šค ์ด๋‹ค. ๊ฐœ๋ฐœ์ž๊ฐ€ ๋” ์‰ฝ๊ฒŒ ์›น ๊ทœ๋ชจ์˜ ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ… ์ž‘์—…์„ ํ•  ์ˆ˜ ์žˆ๋„๋ก ์„ค๊ณ„๋˜์—ˆ๋‹ค. Amazon EC2์˜ ๊ฐ„๋‹จํ•œ ์›น ์„œ๋น„์Šค ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ํ†ตํ•ด ๊ฐ„ํŽธํ•˜๊ฒŒ ํ•„์š”ํ•œ ์šฉ๋Ÿ‰์„ ์–ป๊ณ  ๊ตฌ์„ฑํ•  ์ˆ˜ ์žˆ๋‹ค. ์ปดํ“จํŒ… ๋ฆฌ์†Œ์Šค์— ๋Œ€ํ•œ ํฌ๊ด„์ ์ธ ์ œ์–ด๊ถŒ์„ ์ œ๊ณตํ•˜๋ฉฐ, Amazon์˜ ๊ฒ€์ฆ๋œ ์ปดํ“จํŒ… ์ธํ”„๋ผ์—์„œ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๋‹ค. 

 

์‰ฝ๊ฒŒ ๋งํ•ด์„œ

  • ํด๋ผ์šฐ๋“œ: ๋นŒ๋ ค์“ฐ๊ธฐ
  • ์ปดํ“จํŒ… : ์ปดํ“จํ„ฐ ๊ธฐ์ˆ  ์ž์›(๋ฆฌ์†Œ์Šค)์„ ๊ฐœ๋ฐœ ๋ฐ ์‚ฌ์šฉํ•˜๋Š” ๋ชจ๋“  ํ™œ๋™
  • ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ… :  ์ปดํ“จํŒ… ํŒŒ์›Œ ๋นŒ๋ ค ์“ฐ๊ธฐ
  • EC2: ์ปดํ“จํŒ…์„ ๋นŒ๋ ค ์“ฐ๋Š” ์›น ์„œ๋น„์Šค

์ด๋‹ค.

 


EC2์˜ ์‚ฌ์šฉ

 

  • ์„œ๋ฒ„๋ฅผ ๊ตฌ์ถ•ํ• ๋•Œ
    • ๊ฒŒ์ž„์„œ๋ฒ„, ์›น์„œ๋ฒ„, ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์„œ๋ฒ„
  • ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์‚ฌ์šฉํ•˜๊ฑฐ๋‚˜ ํ˜ธ์ŠคํŒ…ํ• ๋•Œ
    • ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค
    • ๋จธ์‹  ๋Ÿฌ๋‹
    • ๋น„ํŠธ์ฝ”์ธ ์ฑ„๊ตด
    • ์—ฐ๊ตฌ์šฉ ํ”„๋กœ๊ทธ๋žจ
  • ๊ธฐํƒ€ ๋‹ค์–‘ํ•œ ๋ชฉ์ 
    • ๊ทธ๋ž˜ํ”ฝ ๋ Œ๋”๋ง
    • ๊ฒŒ์ž„ ๋“ฑ

 


EC2์˜ ํŠน์„ฑ

 

  • ์ดˆ ๋‹จ์œ„ ์˜จ๋””๋งจ๋“œ ๊ฐ€๊ฒฉ ๋ชจ๋ธ
    • ์˜จ๋””๋งจ๋“œ ๋ชจ๋ธ์—์„œ๋Š” ๊ฐ€๊ฒฉ์ด ์ดˆ ๋‹จ์œ„๋กœ ๊ฒฐ์ •
    • ์„œ๋น„์Šค ์š”๊ธˆ์„ ๋ฏธ๋ฆฌ ์•ฝ์ •ํ•˜๊ฑฐ๋‚˜ ์„ ์ž…๊ธˆ์ด ํ•„์š” ์—†์Œ
  • ๋น ๋ฅธ ๊ตฌ์ถ• ์†๋„์™€ ํ™•์žฅ์„ฑ
    • ๋ช‡ ๋ถ„์ด๋ฉด ์ „ ์„ธ๊ณ„์— ์ธ์Šคํ„ด์Šค ์ˆ˜๋ฐฑ์—ฌ๋Œ€๋ฅผ ๊ตฌ์ถ• ๊ฐ€๋Šฅ
  • ๋‹ค์–‘ํ•œ ๊ตฌ์„ฑ๋ฐฉ๋ฒ• ์ง€์›
    • ๋จธ์‹ ๋Ÿฌ๋‹, ์›น์„œ๋ฒ„, ๊ฒŒ์ž„์„œ๋ฒ„, ์ด๋ฏธ์ง€์ฒ˜๋ฆฌ ๋“ฑ ๋‹ค์–‘ํ•œ ์šฉ๋„์— ์ตœ์ ํ™”๋œ ์„œ๋ฒ„ ๊ตฌ์„ฑ ๊ฐ€๋Šฅ
    • ๋‹ค์–‘ํ•œ ๊ณผ๊ธˆ ๋ชจ๋ธ ์‚ฌ์šฉ ๊ฐ€๋Šฅ
  • ์—ฌ๋Ÿฌ AWS ์„œ๋น„์Šค์™€ ์—ฐ๋™
    • ์˜คํ† ์Šค์ผ€์ผ๋ง, Elastic Load Balancer(ELB), CloudWatch

 


EC2์˜ ๊ตฌ์„ฑ 

 

  • ์ธ์Šคํ„ด์Šค
    • ํด๋ผ์šฐ๋“œ์—์„œ ์‚ฌ์šฉํ•˜๋Š” ๊ฐ€์ƒ ์„œ๋ฒ„๋กœ CPU, ๋ฉ”๋ชจ๋ฆฌ, ๊ทธ๋ž˜ํ”ฝ์นด๋“œ ๋“ฑ ์—ฐ์‚ฐ์„ ์œ„ํ•œ ํ•˜๋“œ์›จ์–ด๋ฅผ ๋‹ด๋‹น
  • EBS
    • Elastic Block Storage ์˜ ์ค„์ž„๋ง๋กœ ํด๋ผ์šฐ๋“œ์—์„œ ์‚ฌ์šฉํ•˜๋Š” ๊ฐ€์ƒ ํ•˜๋“œ๋””์Šคํฌ
  • AMI
    • EC2 ์ธ์Šคํ„ด์Šค๋ฅผ ์‹คํ–‰ํ•˜๊ธฐ ์œ„ํ•œ ์ •๋ณด๋ฅผ ๋‹ด๊ณ  ์žˆ๋Š” ์ด๋ฏธ์ง€
  • ๋ณด์•ˆ ๊ทธ๋ฃน
    • ๊ฐ€์ƒ์˜ ๋ฐฉํ™”๋ฒฝ


์ธ์Šคํ„ด์Šค ์œ ํ˜•

 

  • ์ธ์Šคํ„ด์Šค ์œ ํ˜•
  • ์ธ์Šคํ„ด์Šค ์‚ฌ์ด์ฆˆ
  • ๊ฐ ์ธ์Šคํ„ด์Šค ๋ณ„๋กœ ์‚ฌ์šฉ ๋ชฉ์ ์— ๋”ฐ๋ผ ์ตœ์ ํ™”
    • ์˜ˆ: ๋ฉ”๋ชจ๋ฆฌ ์œ„์ฃผ, CPU ์œ„์ฃผ, ๊ทธ๋ž˜ํ”ฝ ์นด๋“œ ์œ„์ฃผ ๋“ฑ๋“ฑ
  • ํƒ€์ž…๋ณ„๋กœ ์ด๋ฆ„ ๋ถ€์—ฌ
    • ์˜ˆ: tํƒ€์ž…, mํƒ€์ž…, inf ํƒ€์ž… ๋“ฑ
  • ํƒ€์ž… ๋ณ„ ์„ธ๋Œ€๋ณ„๋กœ ์ˆซ์ž ๋ถ€์—ฌ
    • ์˜ˆ: m5 = m์ธ์Šคํ„ด์Šค์˜ 5๋ฒˆ์งธ ์„ธ๋Œ€ 
  • ์•„ํ‚คํ…์ณ ๋ฐ ์‚ฌ์šฉ ๊ธฐ์ˆ ์— ๋”ฐ๋ผ ์ ‘๋‘์‚ฌ
    • t4g : t4 ์ธ์Šคํ„ด์Šค ์ค‘ AWS Graviton ํ”„๋กœ์„ธ์„œ๋ฅผ ์‚ฌ์šฉ(g) = t4g

 


์ธ์Šคํ„ด์Šค ํฌ๊ธฐ

 

  • ์ธ์Šคํ„ด์Šค์˜ cpu๊ฐฏ์ˆ˜, ๋ฉ”๋ชจ๋ฆฌ ํฌ๊ธฐ, ์„ฑ๋Šฅ ๋“ฑ์œผ๋กœ ์‚ฌ์ด์ฆˆ ๊ฒฐ์ •
  • ํฌ๊ธฐ๊ฐ€ ํด์ˆ˜๋ก
    • ๋” ๋งŽ์€ ๋ฉ”๋ชจ๋ฆฌ
    • ๋” ๋งŽ์€ CPU
    • ๋” ๋งŽ์€ ๋„คํŠธ์›Œํฌ ๋Œ€์—ญํญ
    • EBS์™€์˜ ํ†ต์‹  ๊ฐ€๋Šฅํ•œ ๋Œ€์—ญํญ

 


์ธ์Šคํ„ด์Šค์˜ ํƒ€์ž… ์ฝ๋Š”๋ฒ•


์ธ์Šคํ„ด์Šค ํƒ€์ž… + ์„ธ๋Œ€(์ˆซ์ž) ์ ‘๋‘์‚ฌ.์‚ฌ์ด์ฆˆ

 


EC2์˜ ๊ตฌ์„ฑ


์„œ๋ฒ„ = ์ปดํ“จํŒ…(CPU/RAM) + ํ•˜๋“œ๋””์Šคํฌ + ๋žœ์นด๋“œ

 

 

EC2 ์ƒ๋ช…์ฃผ๊ธฐ

 

  • ์ค‘์ง€
    • ์ค‘์ง€์ค‘์—๋Š” ์ธ์Šคํ„ด์Šค ์š”๊ธˆ ๋ฏธ์ฒญ๊ตฌ
    • ๋‹จ EBS์š”๊ธˆ, ๋‹ค๋ฅธ ๊ตฌ์„ฑ์š”์†Œ(Elastic IP๋“ฑ)์€ ์ฒญ๊ตฌ
    • ์ค‘์ง€ ํ›„ ์žฌ์‹œ์ž‘์‹œ ํผ๋ธ”๋ฆญ IP ๋ณ€๊ฒฝ
    • EBS๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์ธ์Šคํ„ด์Šค๋งŒ ์ค‘์ง€ ๊ฐ€๋Šฅ, ์ธ์Šคํ„ด์Šค ์ €์žฅ ์ธ์Šคํ„ด์Šค ์ค‘์ง€ ๋ถˆ๊ฐ€(์ธ์Šคํ„ด์Šค๊ฐ€ ์ฃฝ์œผ๋ฉด ๊ฐ™์ด ์ฃฝ์Œ)
  • ์žฌ๋ถ€ํŒ…
    •  ์žฌ๋ถ€ํŒ…์‹œ์—๋Š” ํผ๋ธ”๋ฆญ IP ๋ณ€๋™ ์—†์Œ
  • ์ตœ๋Œ€ ์ ˆ์ „๋ชจ๋“œ
    • ๋ฉ”๋ชจ๋ฆฌ ๋‚ด์šฉ์„ ๋ณด์กดํ•ด์„œ ์žฌ์‹œ์ž‘์‹œ ์ค‘๋‹จ์ง€์ ์—์„œ ์‹œ์ž‘ํ•  ์ˆ˜ ์žˆ๋Š” ์ •์ง€๋ชจ๋“œ
    • ํ”„๋กœ๊ทธ๋žจ์„ ์‹คํ–‰์‹œ์ผฐ์„๋•Œ ๋ฐ์ดํ„ฐ๋ฅผ ํ•˜๋“œ๋””์Šคํฌ์—์„œ๋งŒ ๊ฐ€์ ธ์˜ค๋Š”๊ฒŒ ์•„๋‹ˆ๋ผ ๋ฐ์ดํ„ฐ๋ฅผ ์ฝ์–ด์„œ ์›ํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ๊ตฌ์„ฑํ•ด์„œ ๋ฉ”๋ชจ๋ฆฌ์— ์˜ฌ๋ ค๋†“๊ฒŒ ๋œ๋‹ค. ํ•˜์ง€๋งŒ ํ”„๋กœ๊ทธ๋žจ์„ ์ข…๋ฃŒํ•˜๋ฉด ๋ฉ”๋ชจ๋ฆฌ์— ์žˆ๋Š” ๋ฐ์ดํ„ฐ๋Š” ๋‹ค ๋‚ ๋ผ๊ฐ€๊ฒŒ ๋œ๋‹ค. ์ตœ๋Œ€์ ˆ์ „ ๋ชจ๋“œ๋Š” ์ด ๋ฉ”๋ชจ๋ฆฌ์— ์žˆ๋Š” ๋‚ด์šฉ์„ ํ•˜๋“œ๋””์Šคํฌ์— ์ €์žฅํ•ด์„œ ๋งŒ์•ฝ ํ”„๋กœ๊ทธ๋žจ์„ ์ข…๋ฃŒํ•˜๊ฒŒ ๋˜๋”๋ผ๋„ ๋‹ค์‹œ ์‹คํ–‰์‹œํ‚ค๋ฉด ํ•˜๋“œ๋””์Šคํฌ์— ์žˆ๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ๋ฉ”๋ชจ๋ฆฌ์— ๋ณต์‚ฌํ•ด์„œ ๋ชจ๋“  ํ”„๋กœ๊ทธ๋žจ์ด ์‚ด์•„ ์žˆ๊ฒŒ ๋œ๋‹ค. 

 



EBS(Amazon Elastic Block Store)

AWS ํด๋ผ์šฐ๋“œ์˜ Amazon EC2 ์ธ์Šคํ„ด์Šค์— ์‚ฌ์šฉํ•  ์˜๊ตฌ ๋ธ”๋ก ์Šคํ† ๋ฆฌ์ง€ ๋ณผ๋ฅจ์„ ์ œ๊ณตํ•œ๋‹ค. ๊ฐ Amazon EBS๋ณผ๋ฅจ์€ ๊ฐ€์šฉ ์˜์—ญ ๋‚ด์— ์ž๋™์œผ๋กœ ๋ณต์ œ๋˜์–ด ๊ตฌ์„ฑ์š”์†Œ ์žฅ์• ๋กœ๋ถ€ํ„ฐ ๋ณดํ˜ธํ•ด์ฃผ๊ณ , ๊ณ ๊ฐ€์šฉ์„ฑ ๋ฐ ๋‚ด๊ตฌ์„ฑ์„ ์ œ๊ณตํ•˜๋‚Ÿ. Amazon EBS ๋ณผ๋ฅจ์€ ์›Œํฌ๋กœ๋“œ ์‹คํ–‰์— ํ•„์š”ํ•œ ์ง€์—ฐ ์‹œ๊ฐ„์ด ์งง๊ณ  ์ผ๊ด€๋œ ์„ฑ๋Šฅ์„ ์ œ๊ณตํ•œ๋‹ค. 

 

 


EBS ์†Œ๊ฐœ

  • ์ผ์ข…์˜ ๊ฐ€์ƒ ํ•˜๋“œ ๋“œ๋ผ์ด๋ธŒ
  • EC2 ์ธ์Šคํ„ด์Šค๊ฐ€ ์ข…๋ฃŒ๋˜์–ด๋„ ๊ณ„์† ์œ ์ง€ ๊ฐ€๋Šฅ
  • ์ธ์Šคํ„ด์Šค ์ •์ง€ ํ›„ ์žฌ๊ธฐ๋™ ๊ฐ€๋Šฅ
  • ํ•˜๋‚˜์˜ EBS๋ฅผ ์—ฌ๋Ÿฌ EC2์— ์žฅ์ฐฉ ๊ฐ€๋Šฅ(EBS Multi Attach)
  • ๋ฃจํŠธ ๋ณผ๋ฅจ์œผ๋กœ ์‚ฌ์šฉ์‹œ EC2๊ฐ€ ์ข…๋ฃŒ๋˜๋ฉด ๊ฐ™์ด ์‚ญ์ œ๋จ
    • ๋‹จ ์„ค์ •์„ ํ†ตํ•ด EBS๋งŒ ๋”ฐ๋กœ ์กด์† ๊ฐ€๋Šฅ
  • EC2์™€ ๊ฐ™์€ ๊ฐ€์šฉ์˜์—ญ์— ์กด์žฌ 
  • ์ด 5๊ฐ€์ง€ ํƒ€์ž…์„ ์ œ๊ณต
    • ๋ฒ”์šฉ (General Purpose or GP3) : SSD
    • ํ”„๋กœ๋น„์ €๋‹ ๋œ IOPS (Provisioned IOPS or io2) : SSD
    • ์“ฐ๋ฃจํ’‹ ์ตœ์ ํ™”( Throughput Optimized HDD or st1)
    • ์ฝœ๋“œ HDD(SC1)
    • ๋งˆ๊ทธ๋„คํ‹ฑ (Standard)

 


Snapshot

  • ํŠน์ • ์‹œ๊ฐ„์— EBS ์ƒํƒœ์˜ ์ €์žฅ๋ณธ
    • EBS์— ์‚ฌ์ง„์„ ์ฐ์–ด๋‘” ๊ฐœ๋…
  • ํ•„์š”์‹œ ์Šค๋ƒ…์ƒท์„ ํ†ตํ•ด ํŠน์ • ์‹œ๊ฐ„์˜ EBS ๋ฅผ ๋ณต๊ตฌ ๊ฐ€๋Šฅ
  • S3 ์— ๋ณด๊ด€
    • ์ฆ๋ถ„์‹ ์ €์žฅ


AMI(Amazon Machine Image)

  • ์ธ์Šคํ„ด์Šค๋ฅผ ์‹œ์ž‘ํ•˜๋Š” ๋ฐ ํ•„์š”ํ•œ ์†Œํ”„ํŠธ์›จ์–ด ๊ตฌ์„ฑ(์šด์˜ ์ฒด์ œ, ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์„œ๋ฒ„ ๋ฐ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜)์ด ํฌํ•จ๋œ ํ…œํ”Œ๋ฆฟ
  • EC2 ์ธ์Šคํ„ด์Šค๋ฅผ ์‹คํ–‰ํ•˜๊ธฐ ์œ„ํ•ด ํ•„์š”ํ•œ ์ •๋ณด๋ฅผ ๋ชจ์€ ๋‹จ์œ„
    • OS, ์•„ํ‚คํ…์ณ ํƒ€์ž…(32-bit, or 64-bit), ์ €์žฅ๊ณต๊ฐ„ ์šฉ๋Ÿ‰ ๋“ฑ
  • AMI๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ EC2๋ฅผ ๋ณต์ œํ•˜๊ฑฐ๋‚˜ ๋‹ค๋ฅธ ๋ฆฌ์ „-> ๊ณ„์ •์œผ๋กœ ์ „๋‹ฌ ๊ฐ€๋Šฅ
  • ์Šค๋ƒ…์ƒท์„ ๊ธฐ๋ฐ˜์œผ๋กœ AMI ๊ตฌ์„ฑ ๊ฐ€๋Šฅ

 

 

AMI ๊ตฌ์„ฑ

  • 1๊ฐœ ์ด์ƒ์˜ EBS ์Šค๋ƒ…์ƒท
  • ์ธ์Šคํ„ด์Šค ์ €์žฅ ์ธ์Šคํ„ด์Šค์˜ ๊ฒฝ์šฐ ๋ฃจํŠธ ๋ณผ๋ฅจ์— ๋Œ€ํ•œ ํ…œํ”Œ๋ฆฟ
    • ์˜ˆ: ์šด์˜์ฒด์ œ, ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์„œ๋ฒ„, ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜
  • ์‚ฌ์šฉ ๊ถŒํ•œ(์–ด๋–ค AWS ์–ด์นด์šดํŠธ๊ฐ€ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š”์ง€)
  • ๋ธ”๋ก ๋””๋ฐ”์ด์Šค ๋งตํ•‘(EC2 ์ธ์Šคํ„ด์Šค๋ฅผ ์œ„ํ•œ ๋ณผ๋ฅจ ์ •๋ณด = EBS๊ฐ€ ๋ฌด์Šจ ์šฉ๋Ÿ‰์œผ๋กœ ๋ช‡๊ฐœ ๋ถ™๋Š”์ง€)
  • ์ด ๋‘๊ฐ€์ง€ ํƒ€์ž…
    • EBS ๊ธฐ๋ฐ˜ or ์ธ์Šคํ„ด์Šค ์ €์žฅ ๊ธฐ๋ฐ˜
  • ํƒ€์ž…์— ๋”ฐ๋ฅธ AMI์˜ ์ƒ์„ฑ๋ฐฉ๋ฒ•
    • EBS: ์Šค๋ƒ…์ƒท์„ ๊ธฐ๋ฐ˜์œผ๋กœ ๋ฃจํŠธ ๋””๋ฐ”์ด์Šค ์ƒ์„ฑ
    • ์ธ์Šคํ„ด์Šค ์ €์žฅ: S3์— ์ €์žฅ๋œ ํ…œํ”Œ๋ฆฟ์„ ๊ธฐ๋ฐ˜์œผ๋กœ ์ƒ์„ฑ

 



์Šค์ผ€์ผ๋ง(Scaling)

์ธ์Šคํ„ด์Šค ํ˜น์€ ์ปดํ“จํŒ… ํŒŒ์›Œ๋ฅผ ๋Š˜๋ฆฌ๋Š” ๊ฒƒ

 

 

๋Œ€ํ‘œ์ ์ธ ์Šค์ผ€์ผ๋ง ๋ฐฉ๋ฒ•

  • ์Šค์ผ€์ผ ์—…(Scale up)
    • ๊ธฐ์กด์˜ ์„œ๋ฒ„๋ฅผ ๋ณด๋‹ค ๋†’์€ ์‚ฌ์–‘์œผ๋กœ ์—…๊ทธ๋ ˆ์ด๋“œํ•˜๋Š” ๊ฒƒ
      • ์˜ˆ: CPU๊ฐ€ 1๊ฐœ ์งœ๋ฆฌ์˜ 1GB ๋ฉ”๋ชจ๋ฆฌ์˜ ์ปดํ“จํ„ฐ ์ž์ฒด์˜ ์„ฑ๋Šฅ์„ 16๋ฐฐ ํ•˜๋Š”๊ฒƒ
      • AWS์˜ EC2 ์ธ์Šคํ„ด์Šค ์‚ฌ์–‘์„ micro์—์„œ small, small์—์„œ medium ๋“ฑ์œผ๋กœ ๋†’์ด๋Š” ๊ฒƒ.
    • ์„ฑ๋Šฅ์— ๋น„ํ•ด ๋น„์šฉ์ด ๋งŽ์ด ์˜ฌ๋ผ๊ฐ 

  • ์Šค์ผ€์ผ ์•„์›ƒ(Scale out)
    • ์žฅ๋น„๋ฅผ ์ถ”๊ฐ€ํ•ด์„œ ๊ทœ๋ชจ๋ฅผ ๋Š˜๋ฆฌ๋Š” ๊ฒƒ
      • ์˜ˆ: CPU๊ฐ€ 1๊ฐœ ์งœ๋ฆฌ์˜ 1GB ๋ฉ”๋ชจ๋ฆฌ์˜ ์ปดํ“จํ„ฐ๋ฅผ 16๊ฐœ๋ฅผ ๊ตฌ๋งคํ•˜๋Š” ๊ฒƒ
    • ํด๋ผ์šฐ๋“œ ์„œ๋น„์Šค์—์„œ๋Š” ์ž์› ์‚ฌ์šฉ๋Ÿ‰์„ ๋ชจ๋‹ˆํ„ฐ๋งํ•˜์—ฌ ์ž๋™์œผ๋กœ ์„œ๋ฒ„๋ฅผ ์ฆ์„ค(Scale Out)ํ•˜๋Š” Auto Scaling ๊ธฐ๋Šฅ๋„ ์žˆ๋‹ค.

 

  • ์Šค์ผ€์ผ ์ธ(Scale In)
    • ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ… ํ™˜๊ฒฝ์—์„œ ์Šค์ผ€์ผ ์ธ์€ VM ์ธ์Šคํ„ด์Šค์˜ ๊ฐฏ์ˆ˜๋ฅผ ์ค„์ด๋Š” ๊ฒƒ์ด๋‹ค.
    • ๋ถ€ํ•˜๊ฐ€ ์ ์–ด์ง์— ๋”ฐ๋ผ ์ด์— ๋Œ€์‘ํ•˜๊ธฐ ์œ„ํ•ด ์Šค์ผ€์ผ ์•„์›ƒ์œผ๋กœ ๋Š˜๋ฆฐ VM ์ธ์Šคํ„ด์Šค์˜ ๊ฐฏ์ˆ˜๋ฅผ ์ค„์ธ๋‹ค.

 


์˜คํ†  ์Šค์ผ€์ผ๋ง(Auto Scaling)


์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๋ชจ๋‹ˆํ„ฐ๋งํ•˜๊ณ  ์šฉ๋Ÿ‰์„ ์ž๋™์œผ๋กœ ์กฐ์ •ํ•˜์—ฌ, ์ตœ๋Œ€ํ•œ ์ €๋ ดํ•œ ๋น„์šฉ์œผ๋กœ ์•ˆ์ •์ ์œผ๋กœ ์˜ˆ์ธก ๊ฐ€๋Šฅํ•œ ์„ฑ๋Šฅ์„ ์œ ์ง€ํ•œ๋‹ค. ์ •์ฑ…์— ๋”ฐ๋ผ์„œ ์‹œ์Šคํ…œ์„ ์ž๋™์œผ๋กœ ๋Š˜๋ฆฌ๊ณ  ์ค„์—ฌ์ฃผ๋Š” ์„œ๋น„์Šค๋‹ค. ๋งŒ์•ฝ ๊ฐ‘์ž๊ธฐ ํŠธ๋ž˜ํ”ฝ์ด ํญ์ฃผํ•˜๋ฉด ์„œ๋น„์Šค์— ์ฐธ์—ฌํ•˜๊ณ  ์žˆ๋˜ ์„œ๋ฒ„๋“ค์˜ CPU ์‚ฌ์šฉ๋ฅ ์ด ์ ์  ๋†’์•„์ ธ์„œ CPU ์ ์œ ์œจ์ด 80%๋ฅผ ๋„˜๊ฒŒ๋˜๋ฉด, ๋ฏธ๋ฆฌ ์ค€๋น„๋œ ์ด๋ฏธ์ง€(AMIs)๋ฅผ ์ด์šฉํ•ด์„œ ์ธ์Šคํ„ด์Šค๋ฅผ ์ƒ์„ฑํ•˜๊ณ , ELB์— ์—ฐ๊ฒฐํ•ด์„œ ํŠธ๋ž˜ํ”ฝ์„ ์ƒˆ๋กœ ์ƒ์„ฑํ•œ EC2 ์ธ์Šคํ„ด์Šค์— ๋ถ„์‚ฐํ•œ๋‹ค. ํŠธ๋ž˜ํ”ฝ์ด ์ค„์–ด๋“ค๋ฉด์„œ CPU ์‚ฌ์šฉ๋ฅ ์ด 20% ์•„๋ž˜๋กœ ๋–จ์–ด์ง€๋ฉด EC2 ์ธ์Šคํ„ด์Šค๊ฐ€ ์ˆœ์ฐจ์ ์œผ๋กœ ์ œ๊ฑฐ๋œ๋‹ค. ๋น„์šฉ์„ ์ ˆ๊ฐํ•  ์ˆ˜ ์žˆ๋‹ค.

 


Autoscaling ๋ชฉํ‘œ

 

  • ์ •ํ™•ํ•œ ์ˆ˜์˜ EC2 ์ธ์Šคํ„ด์Šค๋ฅผ ๋ณด์œ ํ•˜๋„๋ก ๋ณด์žฅ
    • ๊ทธ๋ฃน์˜ ์ตœ์†Œ ์ธ์Šคํ„ด์Šค ์ˆซ์ž ๋ฐ ์ตœ๋Œ€ ์ธ์Šคํ„ด์Šค ์ˆซ์ž
      • ์ตœ์†Œ ์ˆซ์ž ์ดํ•˜๋กœ ๋‚ด๋ ค๊ฐ€์ง€ ์•Š๋„๋ก ์ธ์Šคํ„ด์Šค ์ˆซ์ž๋ฅผ ์œ ์ง€(์ธ์Šคํ„ด์Šค ์ถ”๊ฐ€)
      • ์ตœ๋Œ€ ์ˆซ์ž ์ด์ƒ ๋Š˜์–ด๋‚˜์ง€ ์•Š๋„๋ก ์ธ์Šคํ„ด์Šค ์ˆซ์ž ์œ ์ง€(์ธ์Šคํ„ด์Šค ์‚ญ์ œ
  • ๋‹ค์–‘ํ•œ ์Šค์ผ€์ผ๋ง ์ •์ฑ… ์ ์šฉ ๊ฐ€๋Šฅ
    • ์˜ˆ: CPU์˜ ๋ถ€ํ•˜์— ๋”ฐ๋ผ ์ธ์Šคํ„ด์Šค ํฌ๊ธฐ๋ฅผ ๋Š˜๋ฆฌ๊ธฐ
  • ๊ฐ€์šฉ ์˜์—ญ์— ์ธ์Šคํ„ด์Šค๊ฐ€ ๊ณจ๊ณ ๋ฃจ ๋ถ„์‚ฐ๋  ์ˆ˜ ์žˆ๋„๋ก ์ธ์Šคํ„ด์Šค๋ฅผ ๋ถ„๋ฐฐ
  • ์ด๋ฅผ ํ†ตํ•ด ์‚ฌ์šฉ์ž๋Š” ์˜ˆ์ƒ์น˜ ๋ชปํ•œ ์„œ๋น„์Šค ๋ถ€ํ•˜์— ํšจ๊ณผ์ ์œผ๋กœ ๋Œ€์‘ํ•˜๊ณ , ์ตœ๋Œ€ํ•œ ์ €๋ ดํ•œ ๋น„์šฉ์œผ๋กœ ์•ˆ์ •์ ์ด๊ณ  ์˜ˆ์ธก ๊ฐ€๋Šฅํ•œ ์„ฑ๋Šฅ์„ ์œ ์ง€ ํ• ์ˆ˜ ์žˆ์Œ

 

์‹œ์ž‘ ๊ตฌ์„ฑ ํ…œํ”Œ๋ฆฟ


AWS์—์„œ๋Š” ์„œ๋ฒ„ ์ธ์Šคํ„ด์Šค๋ฅผ ์†์‰ฝ๊ฒŒ ์ƒ์„ฑํ•˜๊ธฐ ์œ„ํ•ด ์‹œ์ž‘ ๊ตฌ์„ฑ ํ…œํ”Œ๋ฆฟ์„ ์ œ๊ณตํ•œ๋‹ค. ์ฆ๊ฐ€ํ•˜๋Š” ๋ถ€ํ•˜๋ฅผ ์ฒ˜๋ฆฌํ•˜๊ธฐ ์œ„ํ•ด ์ƒˆ๋กญ๊ฒŒ ์„œ๋ฒ„ ์ธ์Šคํ„ด์Šค๋ฅผ ์ƒ์„ฑํ•ด์•ผ ํ•˜๋Š” ๊ฒฝ์šฐ ์‹œ์ž‘ ๊ตฌ์„ฑ ํ…œํ”Œ๋ฆฟ์— ๋”ฐ๋ผ ์„œ๋ฒ„ ์ธ์Šคํ„ด์Šค๋ฅผ ๋น ๋ฅด๊ฒŒ ๋งŒ๋“ค์–ด ๋ถ€ํ•˜๋ฅผ ์ฒ˜๋ฆฌํ•œ๋‹ค.

 


์˜คํ† ์Šค์ผ€์ผ๋ง ๋™์ž‘ ์›๋ฆฌ

  1. ๋กœ๋“œ๋ฐธ๋Ÿฐ์„œ์˜ ๋„คํŠธ์›Œํฌ ์ •๋ณด์™€ ์„œ๋ฒ„์˜ ์‹œ์Šคํ…œ ๋งคํŠธ๋ฆญ ๊ฐ’๋“ค์ด ๋ชจ๋‹ˆํ„ฐ๋ง๋œ๋‹ค.
  2. ๋ชจ๋‹ˆํ„ฐ๋ง ๊ฒฐ๊ณผ ์ž„๊ณ„๊ฐ’์„ ๋ฒ—์–ด๋‚˜๋Š” ๊ฐ’์ด ๊ฐ์ง€๋˜๋ฉด ์˜คํ† ์Šค์ผ€์ผ๋ง ๊ทธ๋ฃน์œผ๋กœ ์•Œ๋ฆผ์„ ๋ณด๋‚ธ๋‹ค.
  3. ์˜คํ† ์Šค์ผ€์ผ๋ง ์ •์ฑ…์— ๋”ฐ๋ผ ์Šค์ผ€์ผ ์•„์›ƒ ๋˜๋Š” ์Šค์ผ€์ผ ์ธ ๋ฐฉ์‹์œผ๋กœ ์„œ๋ฒ„ ์ธ์Šคํ„ด์Šค ๊ฐฏ์ˆ˜๋ฅผ ์กฐ์ ˆํ•œ๋‹ค.
  4. ์„œ๋ฒ„ ์ธ์Šคํ„ด์Šค๋ฅผ ์ƒ์„ฑํ•˜๋Š” ๊ฒฝ์šฐ ๋กœ๋“œ๋ฐธ๋Ÿฐ์„œ๋ฅผ ์‚ฌ์šฉํ•ด ์ƒˆ๋กญ๊ฒŒ ์ƒ์„ฑ๋œ ์„œ๋ฒ„ ์ธ์Šคํ„ด์Šค์˜ ์ƒํƒœ๋ฅผ ํ™•์ธํ•œ๋‹ค.
  5. ์„œ๋ฒ„ ์ธ์Šคํ„ด์Šค์˜ ์ƒํƒœ๊ฐ€ ํ™•์ธ๋˜๋ฉด ์„œ๋ฒ„ ์ธ์Šคํ„ด์Šค๋ฅผ ์„œ๋น„์Šค ๋กœ๋“œ๋ฐธ๋Ÿฐ์„œ์— ์ถ”๊ฐ€ํ•œ๋‹ค.

 

 

 

 

 

์ฐธ๊ณ 

https://tecoble.techcourse.co.kr/post/2021-10-12-scale-up-scale-out/

https://opentutorials.org/course/608/3010

https://velog.io/@cabbage/%EC%98%A4%ED%86%A0%EC%8A%A4%EC%BC%80%EC%9D%BC%EB%A7%81Autoscaling