๐Ÿ’กEtc./Docker & Kubernetes

ํ•˜์ดํผ๋ฐ”์ด์ € ๊ฐ€์ƒํ™”์™€ ์ปจํ…Œ์ด๋„ˆ ๊ฐ€์ƒํ™”

  • -

๊ฐ€์ƒํ™” (Virtualization)

  • ๋‹จ์ผํ•œ ๋ฌผ๋ฆฌ ํ•˜๋“œ์›จ์–ด ์‹œ์Šคํ…œ์— ์—ฌ๋Ÿฌ ์‹œ๋ฎฌ๋ ˆ์ด์…˜ ํ™˜๊ฒฝ์ด๋‚˜ ์ „์šฉ ๋ฆฌ์†Œ์Šค๋ฅผ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ์ˆ 
  • ํ•œ ๋Œ€์˜ ๋ฌผ๋ฆฌ์ ์ธ ์žฅ๋น„๋ฅผ ๋งˆ์น˜ ์—ฌ๋Ÿฌ ๋Œ€์˜ ์žฅ๋น„์ฒ˜๋Ÿผ ํ™œ์šฉํ•˜๊ฑฐ๋‚˜, ์—ฌ๋Ÿฌ ์žฅ๋น„๋ฅผ ํ•˜๋‚˜์˜ ์žฅ๋น„์ฒ˜๋Ÿผ ๋ฌถ์–ด์„œ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•ด ๋“ฑ์žฅ
  • ๊ฐ€์ƒํ™”์˜ ๋Œ€์ƒ์ด ๋˜๋Š” ์ปดํ“จํŒ… ์ž์›์€ ํ”„๋กœ์„ธ์„œ(CPU), ๋ฉ”๋ชจ๋ฆฌ(Memory), ์Šคํ† ๋ฆฌ์ง€(Storage), ๋„คํŠธ์›Œํฌ(Network) ๋“ฑ์„ ํฌํ•จํ•˜๋ฉฐ, ์ด๋“ค๋กœ ๊ตฌ์„ฑ๋œ ์„œ๋ฒ„๋‚˜ ์žฅ์น˜๋“ค์„ ๊ฐ€์ƒํ™”ํ•จ์œผ๋กœ์จ ๋†’์€ ์ˆ˜์ค€์˜ ์ž์› ์‚ฌ์šฉ๋ฅ ๊ณผ ๋ถ„์‚ฐ ์ฒ˜๋ฆฌ ๋Šฅ๋ ฅ์„ ์–ป์„ ์ˆ˜ ์žˆ์Œ

 

ํ•˜์ดํผ๋ฐ”์ด์ € ๊ธฐ๋ฐ˜ ๊ฐ€์ƒํ™”

ํ•˜์ดํผ๋ฐ”์ด์ € (Hypervisor)

  • ํ˜ธ์ŠคํŠธ ์‹œ์Šคํ…œ์—์„œ ๋‹ค์ˆ˜์˜ ๊ฒŒ์ŠคํŠธ OS๋ฅผ ๊ตฌ๋™ํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•˜๋Š” ์†Œํ”„ํŠธ์›จ์–ด
  • ํ•˜๋“œ์›จ์–ด๋ฅผ ๊ฐ€์ƒํ™”ํ•˜๋ฉด์„œ ํ•˜๋“œ์›จ์–ด์™€ ๊ฐ๊ฐ์˜ VM์„ ๋ชจ๋‹ˆํ„ฐ๋งํ•˜๋Š” ์ค‘๊ฐ„ ๊ด€๋ฆฌ์ž
    • VMM(Virtual Machine Monitor)์œผ๋กœ ๋ถˆ๋ฆฌ๊ธฐ๋„ ํ•จ
  • ๋ณดํ†ต, ๊ฐ€์ƒ๋จธ์‹ (VM)์„ ์ด์•ผ๊ธฐํ•˜๋Š” ๊ฒƒ์€ ํ•˜์ดํผ๋ฐ”์ด์ € ๊ธฐ๋ฐ˜ ๊ฐ€์ƒํ™”๋ฅผ ์˜๋ฏธํ•จ

ํ•˜์ดํผ๋ฐ”์ด์ € ์ข…๋ฅ˜

Type 1 : ๋„ค์ดํ‹ฐ๋ธŒ/๋ฒ ์–ด๋ฉ”ํƒˆ or ํ•˜์ดํผ๋ฐ”์ด์ €ํ˜• ๊ฐ€์ƒํ™”

  • ํ•˜์ดํผ๋ฐ”์ด์ €๊ฐ€ ํ•˜๋“œ์›จ์–ด ๋ฐ”๋กœ ์œ„์—์„œ ์‹คํ–‰๋˜๋Š” ๋ฐฉ์‹
  • ์žฅ์ 
    • ๋ณ„๋„์˜ Host OS๊ฐ€ ์—†๊ธฐ ๋•Œ๋ฌธ์— ์˜ค๋ฒ„ํ—ค๋“œ๊ฐ€ ์ ๊ณ , ํ•˜๋“œ์›จ์–ด๋ฅผ ์ง์ ‘ ์ œ์–ดํ•˜๊ธฐ ๋•Œ๋ฌธ์— ํšจ์œจ์ ์œผ๋กœ ๋ฆฌ์†Œ์Šค๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Œ
  • ๋‹จ์ 
    • ์ž์ฒด์ ์œผ๋กœ ๋จธ์‹ ์— ๋Œ€ํ•œ ๊ด€๋ฆฌ ๊ธฐ๋Šฅ์ด ์—†๊ธฐ ๋•Œ๋ฌธ์— ๊ด€๋ฆฌ์— ํ•„์š”ํ•œ ์ปดํ“จํ„ฐ๋‚˜ ์ฝ˜์†”์ด ํ•„์š”ํ•˜๋ฉฐ ์—ฌ๋Ÿฌ ํ•˜๋“œ์›จ์–ด ๋“œ๋ผ์ด๋ฒ„๋ฅผ ์„ธํŒ…ํ•ด์•ผ ํ•˜๋ฏ€๋กœ ์„ค์น˜๊ฐ€ ์–ด๋ ค์›€
  • Oracle VM Server for X86, VMware์˜ ESX/ESX i Server, Citrix Xenserver, Oracle์˜ VM Server, ๋งˆ์ดํฌ๋กœ์†Œํ”„ํŠธ์˜ Hyper-V, Virtual Iron, Parallels์˜ Parallels Server ๋“ฑ์ด ์ด์— ํ•ด๋‹น
  • ์ „๊ฐ€์ƒํ™”์™€ ๋ฐ˜๊ฐ€์ƒํ™”๋กœ ๋‚˜๋ˆ„์–ด์ง

์ „๊ฐ€์ƒํ™”

  • ํ•˜๋“œ์›จ์–ด๋ฅผ ์™„์ „ํžˆ ๊ฐ€์ƒํ™”ํ•˜๋Š” ๋ฐฉ์‹
  • DOM0๋ผ๊ณ  ํ•˜๋Š” ๊ด€๋ฆฌ์šฉ ๊ฐ€์ƒ๋จธ์‹ ์ด ๊ตฌ๋™๋˜๋ฉฐ ๋ชจ๋“  ๊ฐ€์ƒ ๋จธ์‹ ๋“ค์˜ ํ•˜๋“œ์›จ์–ด ์ ‘๊ทผ์ด DOM0๋ฅผ ํ†ตํ•ด ์ด๋ฃจ์–ด์ง
  • ์žฅ์ 
    • ํ•˜๋“œ์›จ์–ด๋ฅผ ์™„์ „ํžˆ ๊ฐ€์ƒํ™”ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๊ฒŒ์ŠคํŠธ OS์˜ ๋ณ„๋‹ค๋ฅธ ์ˆ˜์ •์—†์ด ์‚ฌ์šฉ ๊ฐ€๋Šฅ
  • ๋‹จ์ 
    • ํ•˜์ดํผ๋ฐ”์ด์ €๊ฐ€ ๋ชจ๋“  ๋ช…๋ น์„ ์ค‘์žฌํ•ด์•ผํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์„ฑ๋Šฅ์ด ๋น„๊ต์  ๋А๋ฆผ

๋ฐ˜๊ฐ€์ƒํ™”

  • ํ•˜๋“œ์›จ์–ด๋ฅผ ์™„์ „ํžˆ ๊ฐ€์ƒํ™”ํ•˜์ง€ ์•Š๋Š” ๋ฐฉ์‹
  • ๋ชจ๋“  ๋ช…๋ น์„ DOM0 ๋Œ€์‹  ํ•˜์ดํผ์ฝœ(Hyper Call) ์ด๋ผ๋Š” ์ธํ„ฐํŽ˜์ด์Šค๋กœ ํ•˜์ดํผ๋ฐ”์ด์ €์—๊ฒŒ ์š”์ฒญ
  • ์žฅ์ 
    • ์ „๊ฐ€์ƒํ™”์— ๋น„ํ•ด์„œ ๋น ๋ฆ„
  • ๋‹จ์ 
    • ํ•˜์ดํผ๋ฐ”์ด์ €์—๊ฒŒ Hyper Call ์š”์ฒญ์„ ํ•  ์ˆ˜ ์žˆ๋„๋ก ๊ฐ OS์˜ ์ปค๋„์„ ์ˆ˜์ •ํ•ด์•ผํ•จ
    • ์˜คํ”ˆ์†Œ์Šค OS๊ฐ€ ์•„๋‹ˆ๋ฉด ๋ฐ˜๊ฐ€์ƒํ™”๋ฅผ ์ด์šฉํ•˜๊ธฐ๊ฐ€ ์‰ฝ์ง€ ์•Š์Œ

 

Type 2 : ํ˜ธ์ŠคํŠธ(Host) ํ˜•

  • ํ•˜๋“œ์›จ์–ด ์œ„์— ํ˜ธ์ŠคํŠธ ์šด์˜์ฒด์ œ(Host OS)๊ฐ€ ์žˆ๊ณ , ๊ทธ ์œ„์—์„œ ํ•˜์ดํผ๋ฐ”์ด์ €๊ฐ€ ๋‹ค๋ฅธ ์‘์šฉํ”„๋กœ๊ทธ๋žจ๊ณผ ์œ ์‚ฌํ•œ ํ˜•ํƒœ๋กœ ๋™์ž‘
  • ๊ธฐ์กด์˜ ์ปดํ“จํ„ฐ ํ™˜๊ฒฝ์—์„œ ํ•˜์ดํผ๋ฐ”์ด์ €๋ฅผ ํ™œ์šฉํ•˜๋Š” ๊ฒƒ์ด๊ธฐ์— ์„ค์น˜๊ฐ€ ์šฉ์ดํ•˜๊ณ  ๊ตฌ์„ฑ์ด ํŽธ๋ฆฌ
  • ํ˜ธ์ŠคํŠธ OS-ํ•˜์ดํผ๋ฐ”์ด์ €-๊ฐ€์ƒ์˜ ํ•˜๋“œ์›จ์–ด ์—๋ฎฌ๋ ˆ์ดํŒ… ๊ณผ์ •์ด ์žˆ์œผ๋ฏ€๋กœ ์˜ค๋ฒ„ํ—ค๋“œ๊ฐ€ ํผ
  • VM Workstation, VMware Server, VMware Player, MS Virtual Sever, Virtual PC, Virtual Box, Paralles Workstation ๋“ฑ

 

ํ•˜์ดํผ๋ฐ”์ด์ € ๊ฐ€์ƒํ™” ํŠน์ง•

  • ๊ฐ VM๋งˆ๋‹ค ๋…๋ฆฝ๋œ ๊ฐ€์ƒ ํ•˜๋“œ์›จ์–ด ์ž์›์„ ํ• ๋‹นํ•˜์—ฌ ๋…๋ฆฝ์ ์ธ ์‹คํ–‰ ํ™˜๊ฒฝ์„ ๊ฐ€์ง
  • ๊ฐ VM๋งˆ๋‹ค ์ตœ์†Œ GB ๋‹จ์œ„์˜ ๊ณต๊ฐ„์ด ํ•„์š”ํ•˜๋ฉฐ, VM ์ˆ˜์— ๋น„๋ก€ํ•ด์„œ ์ฆ๊ฐ€
  • OS ํŒจ์น˜ ์„ค์น˜๋‚˜ ๊ด€๋ จ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์„ค์น˜ ๊ฐ™์€ ์˜ค๋ฒ„ํ—ค๋“œ๊ฐ€ ์ง€์†์ ์œผ๋กœ ๋ฐœ์ƒ
  • ์ „๊ฐ€์ƒํ™”์˜ ๋А๋ฆฐ ์†๋„๋ฅผ ๋ณด์™„ํ•˜๊ธฐ ์œ„ํ•ด ๋ฐ˜๊ฐ€์ƒํ™” ๋ฐฉ์‹์„ ์ด์šฉํ•˜๋‚˜ ๋А๋ฆผ
  • AWS EC2, Azure VM ๋“ฑ์ด ์ด์— ํ•ด๋‹น

 

์ปจํ…Œ์ด๋„ˆ ๊ธฐ๋ฐ˜ ๊ฐ€์ƒํ™”

์ปจํ…Œ์ด๋„ˆ (Container)

  • ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜(App)๊ณผ App์„ ๊ตฌ๋™ํ•˜๋Š” ํ™˜๊ฒฝ์„ ๊ฒฉ๋ฆฌํ•œ ๊ณต๊ฐ„์„ ์˜๋ฏธ
  • ๊ธฐ์กด์— ๋А๋ฆฐ ํ•˜์ดํผ๋ฐ”์ด์ € ๋ฐฉ์‹์„ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ํ”„๋กœ์„ธ์Šค๋ฅผ ๊ฒฉ๋ฆฌํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœ ์ž‘๋™
  • ์ปจํ…Œ์ด๋„ˆ๋Š” ํ˜ธ์ŠคํŠธ ์‹œ์Šคํ…œ์˜ ์ปค๋„์„ ๋‹ค๋ฅธ ์ปจํ…Œ์ด๋„ˆ๋“ค๊ณผ ๊ณต์œ 
  • Docker๊ฐ€ ๊ฑฐ์˜ ์—…๊ณ„ ํ‘œ์ค€

์ปจํ…Œ์ด๋„ˆ ๊ฐ€์ƒํ™” ํŠน์ง•

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

 

ํ•˜์ดํผ๋ฐ”์ด์ € vs ์ปจํ…Œ์ด๋„ˆ

 

์ฐธ๊ณ ์ž๋ฃŒ

https://blog.naver.com/complusblog/220990379931

https://born-dev.tistory.com/39

https://tech.cloud.nongshim.co.kr/2018/09/18/๊ฐ€์ƒํ™”์˜-์ข…๋ฅ˜3๊ฐ€์ง€/

http://www.opennaru.com/openshift/container/benefits-of-container/

 

Contents

ํฌ์ŠคํŒ… ์ฃผ์†Œ๋ฅผ ๋ณต์‚ฌํ–ˆ์Šต๋‹ˆ๋‹ค

์ด ๊ธ€์ด ๋„์›€์ด ๋˜์—ˆ๋‹ค๋ฉด ๊ณต๊ฐ ๋ถ€ํƒ๋“œ๋ฆฝ๋‹ˆ๋‹ค.