๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
DevOps/Kubernetes

[Kubernetes] ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค linux, mac minikube ์„ค์น˜

by ๐ŸŒปโ™š 2021. 1. 27.

Kubernetes ํด๋Ÿฌ์Šคํ„ฐ ์„ค์น˜ minikube

์ฟ ๋ฒ„๋„คํ‹ฐ์Šค๋ฅผ ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์„ค์น˜ํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ์—ฌ๋Ÿฌ๊ฐ€์ง€๊ฐ€ ์žˆ๋‹ค.

  • minikube
  • kubeadm
  • kubespray (ssh)
  • AWS, GKE(Google Kubernetes ์—”์ง„)
  • rancher

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

 

 

Kubernetes ํด๋Ÿฌ์Šคํ„ฐ ํ†ต์‹  ๊ตฌ์กฐ

minikube๋ฅผ ์„ค์น˜ํ•˜๋ฉด Kubernetes Cluster๋ฅผ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ํด๋Ÿฌ์Šคํ„ฐ์˜ ์ œ์–ด๋Š” kubectl์ด๋ผ๋Š” Kubernetes ํด๋ผ์ด์–ธํŠธ๋ฅผ ํ†ตํ•ด์„œ CLI ํ˜•ํƒœ๋กœ ๋ช…๋ นํ•˜์—ฌ ์ œ์–ด๊ฐ€ ๊ฐ€๋Šฅํ•˜๋‹ค.

 

  • minikube : Kubernetes Cluster provisioning tool
  • kubectl : Kubernetes Cluster manage tool

Kubernetes ํด๋ผ์ด์–ธํŠธ๋ฅผ ์ด์šฉํ•ด์„œ Kubernetes Cluster์˜ API Server๊ณผ ํ†ต์‹ ํ•˜๊ณ  ํด๋Ÿฌ์Šคํ„ฐ ๋‚ด์˜ API Server๋Š” Worker Node์™€ ํ†ต์‹ ํ•˜์—ฌ ์ปจํ…Œ์ด๋„ˆ๋ฅผ ๊ด€๋ฆฌํ•œ๋‹ค.

 

 

Kubernetes ์„ค์น˜

์„ค์น˜ ์ „์— virtual box๋ฅผ ์„ค์น˜๊ฐ€ ํ•„์š”ํ•˜๋‹ค.

Minikube ์„ค์น˜

๊ตฌ๊ธ€์—์„œ ์ œ๊ณตํ•˜๋Š” ๋ฆฌํฌ์ง€ํ† ๋ฆฌ๋ฅผ ํ†ตํ•ด ๋ฒ„์ „๋ณ„๋กœ ์„ค์น˜๊ฐ€ ๊ฐ€๋Šฅํ•˜๊ณ , ๋ฒ„์ „ ๋Œ€์‹  latest๋กœ ๋ฐ›๋Š” ๊ฒฝ์šฐ ์ตœ์‹  ๋ฒ„์ „์„ ์„ค์น˜ํ•œ๋‹ค. ํ•ด๋‹น ์‹ค์Šต์—์„œ๋Š” minikube 0.23 ๋ฒ„์ „๊ณผ kubernetes 1.8 ๋ฒ„์ „์„ ์„ค์น˜ํ•œ๋‹ค. ์•„๋ž˜ ๋งํฌ์—์„œ ๋‹ค์šด ๋ฐ›์„ ์ˆ˜ ์žˆ๋Š” ๋ชฉ๋ก์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.

storage.googleapis.com/minikube/

 

MacOS

curl -Lo minikube https://storage.googleapis.com/minikube/releases/v0.23.0/minikube-darwin-amd64 && chmod +x minikube && sudo mv minikube /usr/local/bin

 

Linux

curl -Lo minikube https://storage.googleapis.com/minikube/releases/v0.23.0/minikube-linux-amd64 && chmod +x minikube && sudo mv minikube /usr/local/bin

 

minikube start

ํ•ด๋‹น ๋ช…๋ น์–ด๋กœ Kubernetes ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ๊ตฌ์„ฑํ•ด์ค€๋‹ค.

 

Kubectl ์„ค์น˜

Kubernetes ๊ด€๋ฆฌ๋ฅผ ์œ„ํ•ด Kubernetes ํด๋ผ์ด์–ธํŠธ๋ฅผ ์„ค์น˜ํ•ด์ค€๋‹ค. ์•„๋ž˜์„œ ์„ค์น˜๊ฐ€๋Šฅํ•œ ๋ชฉ๋ก์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.

storage.googleapis.com/kubernetes-release/

 

MacOS

curl -Lo kubectl https://storage.googleapis.com/kubernetes-release/release/v1.8.0/bin/darwin/amd64/kubectl && chmod +x kubectl && sudo mv kubectl /usr/local/bin/

 

Linux

curl -Lo kubectl https://storage.googleapis.com/kubernetes-release/release/v1.8.0/bin/linux/amd64/kubectl && chmod +x kubectl && sudo mv kubectl /usr/local/bin/

 

 

์„ค์น˜ ๋ฐ ํด๋Ÿฌ์Šคํ„ฐ ์ž‘๋™ ํ™•์ธ

 kubectl cluster-info

ํด๋Ÿฌ์Šคํ„ฐ๊ฐ€ ์ •์ƒ์ ์œผ๋กœ ์‹คํ–‰๋˜๊ณ  ์žˆ๋Š” ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.

 

๋Œ“๊ธ€