๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

Docker Study

Kubectl๊ณผ Minikube

kubectl 

  • kubectl์€ kubernetes CLI(command line interface) ๋‘๊ตฌ ์ค‘ ํ•˜๋‚˜๋กœ ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค์˜ ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ๊ด€๋ฆฌํ•˜๋Š” ๋ช…๋ น์–ด ๋„๊ตฌ์ด๋‹ค
    • ํด๋Ÿฌ์Šคํ„ฐ์—์„œ ์‹คํ–‰ ์ค‘์ธ ์ปจํ…Œ์ด๋„ˆ ์ƒํƒœ๋ฅผ ๋ชจ๋‹ˆํ„ฐ๋งํ•  ์ˆ˜ ์žˆ๋‹ค.
    • pod๋‚˜ service ๋“ฑ ๋ฆฌ์†Œ์Šค๋ฅผ ์ƒ์„ฑ ๋ฐ ์‚ญ์ œ, ๋กœ๊ทธ ํ™•์ธ๋“ฑ ๋‹ค์–‘ํ•œ ์ž‘์—…์„ ํ•œ๋‹ค.
    • ํด๋Ÿฌ์Šคํ„ฐ์™€ ํ†ต์‹ ํ•˜์—ฌ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๋น ๋ฅด๊ฒŒ ๋ฐฐํฌํ•˜๊ณ  ๊ด€๋ฆฌํ•˜๋Š” ๊ฒƒ์ด ๊ฐ€๋Šฅํ•˜๋‹ค.
    • ๋งˆ์Šคํ„ฐ ๋…ธ๋“œ์— ๋ช…๋ น์„ ๋ณด๋‚ด ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ๊ด€๋ฆฌํ•˜๋‹ค. (๋งˆ์Šคํ„ฐ ๋…ธ๋“œ๊ฐ€ ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ๊ด€๋ฆฌํ•œ๋‹ค.)

Install

brew install kubectl

์•„๋ž˜ ๋ช…๋ น์–ด๋กœ ์ตœ์‹  ๋ฒ„์ „์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.

kubectl version --client

minikube

  • ๋กœ์ปฌ ๊ฐœ๋ฐœ ํ…Œ์ŠคํŠธ์šฉ์œผ๋กœ ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ๊ตฌ์ถ•ํ•  ์ˆ˜ ์žˆ๋Š” ๋„๊ตฌ์ด๋‹ค.
  • ๊ฐ€์ƒ๋จธ์‹  ์œ„์—์„œ ์‹คํ–‰๋˜๋ฉฐ ๋กœ์ปฌ์—์„œ ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์ƒ์„ฑํ•œ๋‹ค.
  • kubectl์€ minikube์— ์˜ํ•ด ์ž๋™์œผ๋กœ minikube์— ์—ฐ๊ฒฐ๋˜๋„๋ก ๊ตฌ์„ฑ๋˜์–ด ์žˆ๋‹ค.

Install

brew install minikube

์•„๋ž˜ ๋ช…๋ น์–ด๋กœ ์›น ๊ธฐ๋ฐ˜ UI ๋Œ€์‹œ๋ณด๋“œ๋กœ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.

minikube dashboard

๊ฐ€์ƒ ๋จธ์‹  ์‹คํ–‰ํ•˜๊ธฐ

minikube start
  • ๋กœ์ปฌ ๊ฐœ๋ฐœ ๋ฐ ํ…Œ์ŠคํŠธ์šฉ์œผ๋กœ ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์‹œ์ž‘ํ•˜๋Š” ๋ช…๋ น์–ด์ด๋‹ค.
  • minikube๋Š” ๊ฐ€์ƒํ™” ์†Œํ”„ํŠธ์›จ์–ด๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๊ฐ€์ƒ๋จธ์‹ ์„ ์‹œ์ž‘ํ•˜๊ณ  ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์‹คํ–‰ํ•œ๋‹ค.
  • ๋กœ์ปฌ ๊ฐ€์ƒ๋จธ์‹  ์„ค์ • → ๊ฐ€์ƒ ๋จธ์‹  ๋‚ด๋ถ€์— ํด๋Ÿฌ์Šคํ„ฐ ์ƒ์„ฑ → ํด๋Ÿฌ์Šคํ„ฐ๋Š” ๋งˆ์Šคํ„ฐ ๋…ธ๋“œ ์ƒ์„ฑ ๋ฐ ์›Œ์ปค๋…ธ๋“œ์— ํ•„์š”ํ•œ ์†Œํ”„ํŠธ์›จ์–ด ์„ค์น˜
minikube start --driver=docker

or

minikube start --driver=virtualbox
  • --driver ์˜ต์…˜์„ ์‚ฌ์šฉํ•˜์—ฌ ๊ฐ€์ƒํ™” ๊ธฐ์ˆ ์„ ์„ ํƒํ•  ์ˆ˜ ์žˆ๋‹ค.
  • ๊ฐ€์ƒ๋จธ์‹  ๊ธฐ์ˆ ์„ ์‚ฌ์šฉํ•˜์—ฌ ๊ฐ€์ƒ ๋จธ์‹ ์„ ์ƒ์„ฑํ•˜๊ณ  ๊ทธ ์œ„์—์„œ ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์‹คํ–‰ํ•œ๋‹ค.
  • ๊ฐ€์ƒํ™” ์†Œํ”„ํŠธ์›จ์–ด๋ฅผ ๋” ๋งŽ์ด ์ œ์–ดํ•˜๊ณ  ์‹ถ์€ ๊ฒฝ์šฐ ์œ ์šฉํ•˜๋‹ค.