Skip to content

Commit

Permalink
Add files via upload
Browse files Browse the repository at this point in the history
  • Loading branch information
sandartchip authored Mar 25, 2021
1 parent 5d049fc commit afd8a33
Showing 1 changed file with 58 additions and 0 deletions.
58 changes: 58 additions & 0 deletions Lina Yi/2021_03_25_가상화와 도컀.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
## μ»¨ν…Œμ΄λ„ˆ

도컀(Docker)의 λ“±μž₯ 이후 μ»¨ν…Œμ΄λ„ˆκ°€ κΈ‰μ†λ„λ‘œ μœ ν–‰ν•˜κΈ° μ‹œμž‘ν–ˆλ‹€.

μ»¨ν…Œμ΄λ„ˆλž€ 무엇이고 μ–΄λ–€ 이점이 μžˆλŠ”μ§€ μ†Œκ°œν•˜λ„λ‘ ν•˜κ² λ‹€.

μ»¨ν…Œμ΄λ„ˆλŠ” '그릇', '용기' λ“±μ˜ 의미둜 ν•œ λ§ˆλ””λ‘œ μ •μ˜ν•˜λ©΄ **'λ¦¬μ†ŒμŠ€κ°€ 격리된 ν”„λ‘œμ„ΈμŠ€'**이닀.

ν•˜λ‚˜μ˜ OSμƒμ—μ„œ μ—¬λŸ¬ 개λ₯Ό λ™μ‹œμ— 가동할 수 있으며, **각각 λ…λ¦½λœ 루트 파일 μ‹œμŠ€ν…œ, CPU/λ©”λͺ¨λ¦¬, ν”„λ‘œμ„ΈμŠ€ 곡간 등을 μ‚¬μš©ν•  수 μžˆλ‹€**λŠ” 점이 ν•˜λ“œμ›¨μ–΄ 가상화인 가상머신(VM)과의 차이닀.


## μ»¨ν…Œμ΄λ„ˆμ˜ 역사

μ»¨ν…Œμ΄λ„ˆμ˜ 역사λ₯Ό μ‚΄νŽ΄ 보면, 1970λ…„λŒ€ 빌 쑰이가 κ°œλ°œν•œ chrootκ°€ μ‹œλ°œμ μ΄λΌκ³  μ•Œλ €μ Έ μžˆλ‹€. 빌 μ‘°μ΄λŠ” BSD(Barkley Softward Distribution) μœ λ‹‰μŠ€λ‚˜ TCP/IP, vi 등을 κ°œλ°œν•œ μ‚¬λžŒμ΄λ‹€.

1970λ…„λŒ€μ— μ»΄ν“¨ν„°λŠ” 맀우 λΉ„μ‹Έμ„œ μƒμš© ν™˜κ²½κ³Ό 개발 ν™˜κ²½μ„ λ³„λ„λ‘œ μ€€λΉ„ν•˜λ €λ©΄ λ§Žμ€ λΉ„μš©μ΄ λ“€μ—ˆλ‹€. ν•˜λ‚˜μ˜ μ»΄ν“¨ν„°λ‘œ μƒμš©, 개발 ν™˜κ²½μ„ ν•¨κ»˜ μ‚¬μš©ν•˜λ©΄ 잘λͺ»λœ νŒŒμΌμ„ λ³€κ²½ν•˜κ±°λ‚˜ μ‚­μ œν•  μœ„ν—˜μ΄ μžˆμ—ˆλ‹€.

이 문제λ₯Ό ν•΄κ²°ν•˜κΈ° μœ„ν•΄ λ“±μž₯ν•œ 것이 λ°”λ‘œ chrootλ‹€.

### chroot
ν”„λ‘œμ„ΈμŠ€κ°€ OS의 루트 디렉토리 μ•„λž˜μ— μžˆλŠ” νŠΉμ • 계측에 μ ‘κ·Όν•˜μ§€ λͺ»ν•˜λ„둝 ν•˜λŠ” κΈ°λŠ₯으둜 ν˜„μž¬λ„ λ‹€μ–‘ν•œ 뢄야에 적용되고 μžˆλ‹€.

예λ₯Ό λ“€μ–΄ λ¦¬λˆ…μŠ€μ˜ 레슀큐 λͺ¨λ“œ(Rescue mode), FTPμ—μ„œ μ‚¬μš©μž λ‹¨μœ„λ‘œ μ ‘κ·Ό λ²”μœ„λ₯Ό ν•œμ •ν•˜λŠ” κΈ°λŠ₯, ν¬μŠ€νŠΈν”½μŠ€(Postfix)μ΄λ‚˜ λ°”μΈλ“œ(BIND) λ“±μœΌλ‘œ μ ‘κ·Όν•  수 μžˆλŠ” 디렉터리λ₯Ό ν•œμ •ν•˜λŠ” κΈ°λŠ₯ 등에 ν™œμš©λ˜κ³  μžˆλ‹€.

1990λ…„λŒ€μ— FreeBST jail이 λ“±μž₯ν•΄μ„œ 'νŠΉμ • 디렉터리 μ΄ν•˜λ₯Ό 루트 λ””λ ‰ν„°λ¦¬μ²˜λŸΌ 보이게 ν•˜λŠ”' chroot κ°œλ…μ΄ μΆ”κ°€λ¬μœΌλ©°, 이λ₯Ό 톡해 μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ˜ ν”„λ‘œμ„ΈμŠ€λ„ 격리할 수 있게 됬닀.

이후 빌 쑰이가 μ†Œμ†λΌ 있던 μ„  λ§ˆμ΄ν¬λ‘œμ‹œμŠ€ν…œμ¦ˆλŠ” 2000λ…„λŒ€μ—λŠ” μ†”λΌλ¦¬μŠ€(Solaris) μ»¨ν…Œμ΄λ„ˆλΌ λΆˆλ¦¬λŠ” μ»¨ν…Œμ΄λ„ˆ κΈ°λŠ₯을 μ œκ³΅ν–ˆλ‹€.


## λ„μ»€μ˜ λ“±μž₯

μ΄ν›„λ‘œλ„ μƒμš© μœ λ‹‰μŠ€λ‚˜ μ˜€ν”ˆ μ†ŒμŠ€μ—μ„œ μ»¨ν…Œμ΄λ„ˆ 기술의 개발이 μ°©μ‹€νžˆ μ§„ν–‰λ¬μœΌλ©°, 2013년에 파일 μ‹œμŠ€ν…œκ³Ό ν”„λ‘œμ„ΈμŠ€λ₯Ό λΆ„λ¦¬ν•˜λŠ” κΈ°λŠ₯이 좔가됬닀. 이λ₯Ό 톡해 파일 μ‹œμŠ€ν…œ μ΄λ―Έμ§€μ˜ νŒ¨ν‚€μ§•κ³Ό 버저닝이 κ°€λŠ₯ν•΄μ‘Œκ³  μ»¨ν…Œμ΄λ„ˆ 이미지λ₯Ό κ³΅μœ ν•  수 μžˆλŠ” 도컀가 λ“±μž₯ν•¨μœΌλ‘œμ¨ μ»¨ν…Œμ΄λ„ˆ 기술이 μ£Όλͺ©μ„ λ°›κΈ° μ‹œμž‘ν–ˆλ‹€.

ꡬ글은 2014λ…„ λͺ¨λ“  μ„œλΉ„μŠ€ 및 μ‚¬λ‚΄μ—μ„œ μ‚¬μš©λ˜κ³  μžˆλŠ” λͺ¨λ“  νˆ΄μ„ μ»¨ν…Œμ΄λ„ˆν˜• 가상화 κΈ°μˆ μ—μ„œ μ‹€ν–‰ν•˜κ³  μžˆλ‹€κ³  λ°œν‘œν–ˆλ‹€.(도컀 λ“±μž₯ 이전뢀터 μ»¨ν…Œμ΄λ„ˆλ₯Ό μ‚¬μš©ν•΄μ™”λ‹€κ³  ν•œλ‹€)


도컀 νšŒμ‚¬(λ„μ»€λŠ” 사싀 νšŒμ‚¬λͺ…이기도 ν•˜λ‹€)λŠ” 개λͺ…ν•˜κΈ° 전에 λ‹·ν΄λΌμš°λ“œ(dotCloud)λΌλŠ” λͺ…칭을 μ‚¬μš©ν–ˆμœΌλ©°, 2008년에 언어에 μ˜μ‘΄ν•˜μ§€ μ•ŠλŠ” PaaSλ₯Ό κ΅¬μΆ•ν•˜κΈ° μœ„ν•΄ μ„€λ¦½ν–ˆλ‹€.

λ‹· ν΄λΌμš°λ“œμ˜ PaaSλŠ” κ°œλ°œν•œ μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ„ ν΄λΌμš°λ“œμ— λ°°ν¬ν•΄μ„œ μ‹€ν–‰ν•˜λŠ” κ΅¬μ‘°μ˜€λ‹€.

ν•˜μ§€λ§Œ **μ• ν”Œλ¦¬μΌ€μ΄μ…˜ κ΄€λ ¨ ν”„λ ˆμž„μ›Œν¬λ‚˜ 라이브러리 λ“±μ˜ 버전이 μΌμΉ˜ν•˜μ§€ μ•Šμ•„μ„œ λ‘œμ»¬μ—μ„œ μ‹€ν–‰λœ ν”„λ‘œκ·Έλž¨μ΄ ν΄λΌμš°λ“œμ—μ„œλŠ” μ‹€ν–‰λ˜μ§€ μ•ŠλŠ” λ¬Έμ œκ°€ λΉˆλ²ˆν•˜κ²Œ λ°œμƒ**ν–ˆλ‹€.

λ”°λΌμ„œ μ›λž˜ ν΄λΌμš°λ“œ λ‚΄λΆ€ ꡬ쑰둜 κ°œλ°œν–ˆλ˜, μ• ν”Œλ¦¬μΌ€μ΄μ…˜ μ‹€ν–‰ ν™˜κ²½μ„ μžλ™ κ΅¬μΆ•ν•΄μ£ΌλŠ” '도컀 이미지'λΌλŠ” κΈ°μˆ μ„ ν΄λΌμš°λ“œ μ΄μ™Έμ˜ ν™˜κ²½μ—μ„œλ„ μ‚¬μš©ν•  수 있게 μ˜€ν”ˆ μ†ŒμŠ€λ‘œ κ³΅κ°œν–ˆλ‹€.

λ˜ν•œ, 도컀 ν—ˆλΈŒ(Docker Hub)λΌλŠ” 도컀 이미지λ₯Ό κ³΅μœ ν•  수 μžˆλŠ” λ ˆμ§€μŠ€νŠΈλ¦¬κ°€ μƒκ²¨λ‚˜λ©΄μ„œ 폭발적인 인기λ₯Ό μ–»κΈ° μ‹œμž‘ν–ˆλ‹€.

### 가상머신 vs 도컀
가상 λ¨Έμ‹ κ³Ό λΉ„κ΅ν•΄μ„œ 도컀가 μ§€λ‹ˆλŠ” μž₯점은 λ‹€μŒκ³Ό κ°™λ‹€.

- **μ»¨ν…Œμ΄λ„ˆλŠ” 호슀트 OS와 컀널을 곡유**ν•˜λ―€λ‘œ **μ»¨ν…Œμ΄λ„ˆ μ‹€ν–‰μ΄λ‚˜ 정지 속도가 λΉ λ₯΄λ‹€.**

- 호슀트 OS의 컀널을 κ³΅μœ ν•˜λ―€λ‘œ VM만 μ‚¬μš©ν•˜λŠ” κ²½μš°μ™€ 비ꡐ해 **ν•œ λŒ€μ˜ 호슀트 λ¨Έμ‹  μƒμ—μ„œ 훨씬 λ§Žμ€ μ»¨ν…Œμ΄λ„ˆλ₯Ό μ‹€ν–‰ν•  수 μžˆλ‹€.** 이λ₯Ό 톡해 λ¦¬μ†ŒμŠ€λ₯Ό ν•œ κ³³μ—μ„œ μ‰½κ²Œ 관리할 수 μžˆλ‹€.

- λ„μ»€λŠ” λΌμ΄λΈŒλŸ¬λ¦¬λ‚˜ ν”„λ ˆμž„μ›Œν¬ 등을 도컀 μ΄λ―Έμ§€λ‘œ λ¬Άμ–΄μ„œ κ³΅μœ ν•  수 μžˆλŠ” κ²ƒμœΌλ‘œ, νŠΉμ •ν•œ ν™˜κ²½μ—μ„œλŠ” μž¬ν˜„λ˜μ§€λ§Œ μžμ‹ μ˜ κ°œλ°œν™˜κ²½μ—μ„œλŠ” μž¬ν˜„λ˜μ§€ μ•ŠλŠ” λ¬Έμ œκ°€ λ°œμƒν•˜κΈ° μ–΄λ ΅λ‹€. λ”°λΌμ„œ 버그λ₯Ό 효율적으둜 μˆ˜μ •ν•  수 μžˆλ‹€.



좜처: 그림으둜 λ³΄λŠ” 인프라 ꡬ쑰 3μž₯ - 3κ³„μΈ΅ν˜• μ‹œμŠ€ν…œμ„ μ‚΄νŽ΄λ³΄μž

0 comments on commit afd8a33

Please sign in to comment.