[Kubernetes] 4. Minikube๋ก ์์ํ๋ kubernetes
Kubernetes ํด๋ฌ์คํฐ๋ฅผ ๊ตฌ์ถํ๊ธฐ ์ํด ๋ ๊ฐ์ ๋ ธ๋๋ฅผ ์ค๋นํ๊ณ ์ด๋ฅผ ๋ง์คํฐ์ ๊ฐ ๋ ธ๋๋ก ๋๋์ด์ผ ํ๋ ๊ตฌ์กฐ๋ฅผ ๊ฐ์ถฐ์ผ ํ์ง๋ง ์ด๋ ์ค์ ์๋น์คํ๊ธฐ ์ํ ํ๊ฒฝ์ ๋ํ ๊ถ์ฅ ์ฌํญ์ด์์ต๋๋ค.
์ฟ ๋ฒ๋คํฐ์ค๋ฅผ ์ค ์๋น์คํด๋ณด๊ธฐ ์ ์ ์ง์ ์ฌ์ฉํด๋ณด๋ ๋ฐฉ๋ฒ์ ์ฌ๋ฌ ๊ฐ์ง ์์ต๋๋ค. AWS์ EKS, GCP์ GKE ๋ฑ ํด๋ผ์ฐ๋ ๋ฒค๋๋ฅผ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ ์ง์ ์ฟ ๋ฒ๋คํฐ์ค ํด๋ฌ์คํฐ๋ฅผ ๊ตฌ์ถํ๋ ๋ฐฉ๋ฒ์ด ์์ง๋ง ์ค์ ๋ก ์ฒดํํด๋ณด๊ธฐ ์ํด ํด๋ผ์ฐ๋ ๋ฒค๋์ ๊ฐ๋น์ผ ๋น์ฉ์ ์ฌ์ฉํ๊ฑฐ๋ ๋ง์คํฐ, ๋ ธ๋์ ํ๋์จ์ด ์ฅ๋น๋ฅผ ์ง์ ๊ตฌ์ ํ๋ ๊ฒ์ ๋น์ฉ์ ์ผ๋ก ๋ถ๋ด์ด ๋ ์ ์์ ๊ฒ์ ๋๋ค.
Minikube๋ ๋ก์ปฌ ํ๊ฒฝ์์ ์ต์์ ์ฟ ๋ฒ๋คํฐ์ค ํ๊ฒฝ์ ์ ๊ณตํ๊ธฐ ์ํ ํ๋ก์ ํธ๋ก ์ฐ๋ฆฌ๋ ์ฟ ๋ฒ๋คํฐ์ค๋ฅผ ๊ฐ๋จํ๊ฒ ์ฒดํํด๋ณด๊ธฐ ์ํด ์ผ๋ จ์ ๋ง์คํฐ, ์ฌ๋ ์ด๋ธ ๋ ธ๋๋ฅผ ๊ตฌ์ฑํ๊ณ API๋ฅผ ์ฐ๋ํ๋ ๋ฒ๊ฑฐ๋ก์ด ์์ ์ ๊ตณ์ด ํ์ง ์์๋ ๋ฉ๋๋ค.
https://github.com/kubernetes/minikube
kubernetes/minikube
Run Kubernetes locally. Contribute to kubernetes/minikube development by creating an account on GitHub.
github.com
์์ ๊ฐ์ ๋น์ทํ ์๋ฃจ์ ์ผ๋ก Ubuntu Linux์ ์ ๊ณต์์ธ Canonical์์๋ microk8s๋ผ๋ ์๋ฃจ์ ์ ์ ๊ณตํด์ฃผ๊ณ ์์ต๋๋ค.
MicroK8s - Zero-ops Kubernetes for developers, edge and IoT | MicroK8s
MicroK8s is the simplest production-grade upstream K8s. Lightweight and focused. Single command install on Linux, Windows and macOS. Made for devops, great for edge, appliances and IoT. Full high availability Kubernetes with autonomous clusters.
microk8s.io
Microk8s๋ ์ฐ๋ถํฌ ๋ฆฌ๋ ์ค์์ ํธํ์ฑ์ด ๋งค์ฐ ์ข๊ณ , ์ฐ๋ถํฌ ๋ฆฌ๋ ์ค์์ ์ค์น๊ฐ ๋งค์ฐ ์ฝ๊ณ ํํ ๋ฆฌ์ผ์ด ์ ๋์ด ์๋ค๋ ์ฅ์ ์ด ์๋๋ฐ์. ํนํ Microk8s๋ ๋ผ์ฆ๋ฒ ๋ฆฌํ์ด์ ๊ฐ์ Embedded ํ๊ฒฝ์์๋ ์ฝ๊ฒ ์ฌ์ฉํ ์ ์๋ Embedded Kubernetes๋ฅผ ์ ๊ณตํ๊ธฐ ๋๋ฌธ์ ์์ ๊ธฐ๊ธฐ์์ ์ฟ ๋ฒ๋คํฐ์ค๋ฅผ ์ด์ํด๋ณด๋ ค๊ณ ์๋ํด๋ณด์๋ ๊ฑฐ๋ผ๋ฉด microk8s๋ ์ข์ ์ ํ์ด๋ผ๊ณ ํ ์ ์์ ๊ฒ ๊ฐ๋ค์.
Minikube
Minikube๋ Mini + kube์ ์ฝ์๋ก ์ฟ ๋ฒ๋คํฐ์ค์ ํด๋ฌ์คํฐ ๊ตฌ์ถ ๊ณผ์ ์ ๋ํญ ์ค์ด๊ณ , ๊ฐ๋ฅํ ํ๋์ ๋จ์ผ ๋ก์ปฌ ํ๊ฒฝ์์ ์ฝ๊ฒ ์ฟ ๋ฒ๋คํฐ์ค๋ฅผ ์ฒดํํด๋ณด๊ธฐ ์ํด ๊ฐ๋ฐ๋ ํ๋ก์ ํธ์ ๋๋ค.
- 2 CPUs or more
- 2GB of free memory
- 20GB of free disk space
- Internet connection
- Container or virtual machine manager, such as: Docker, Hyperkit, Hyper-V, KVM, Parallels, Podman, VirtualBox, or VMWare
Minikube๋ฅผ ์ค์นํ๊ธฐ ์ํ ์ต์ ์ฌ์์ ์์ ๊ฐ์ด ๋์ผ ์ฝ์ด ์ด์์ ํ๋ก์ธ์์ ์ต์ 2 GB์ ๋ฉ๋ชจ๋ฆฌ๋ง ๊ฐ์ถฐ์ ธ ์์ผ๋ฉด ๋ฉ๋๋ค. ์์ฆ ํ๋๋์คํฌ ํฌ๊ธฐ๋ ๋ชปํด๋ 1 TB ์ด์์ด ๋๊ธฐ ๋๋ฌธ์ ํฐ ๋ฌธ์ ๋ ์์ ๊ฒ์ด๋ผ๊ณ ๋ด ๋๋ค.
๋ค๋ง Windows ์ด์์ฒด์ ์์๋ CPU์์ Virtualization Support(๊ฐ์ํ) ๊ธฐ๋ฅ์ด ์ง์๋์ด์ผ ํฉ๋๋ค. ๋ฆฌ๋ ์ค ์ธ์ ์ด์์ฒด์ ์์๋ ์ปจํ ์ด๋๋ฅผ ๊ตฌ๋ํ ์, VMware, Virtualbox ๋ฑ์ ๊ฐ์ํ ๊ธฐ์ ์ ์ฌ์ฉํ๊ธฐ ๋๋ฌธ์ ๋๋ค.
๋ Minikube๋ NVIDIA GPU Support๋ ๋๊ธฐ ๋๋ฌธ์ DeepOps์ ๊ฐ์ ๋ฅ๋ฌ๋ ํ๊ฒฝ์ ๊ตฌ์ถํ๋ ์ค์ต์ ์์ด์๋ ๋งค์ฐ ๊ฐ๋ ฅํ ์๋ฃจ์ ์ ์ ๊ณตํ๋ ๋ชจ์ต์ด ๋ณด์ด๊ธฐ ๋๋ฌธ์ ์ฒ์ ์ฟ ๋ฒ๋คํฐ์ค๋ฅผ ์ฌ์ฉํ์๋ ๋ถ์ด๋ผ๋ฉด ์ฌ๋ฌ๋ชจ๋ก ์ฒดํํ ์ ์๋ ์ข์ ์๋ฃจ์ ์ด๋ผ๊ณ ์๊ฐํฉ๋๋ค.
๊ทธ๋ผ ๋ณธ๊ฒฉ์ ์ธ ์ค์น๋ฅผ ๋ค์ด๊ฐ๋ณด๋๋ก ํ์ฃ .
Minikube ์ค์น
Minikube๋ฅผ ์ค์นํ๊ธฐ ์ ์, ๋ฐ๋์ Docker๊ฐ ์ค์น๋์ด ์์ด์ผ ํ๋ฉฐ, ๋ง์ฝ Docker๊ฐ ์ค์น๋์ด ์์ง ์๋ค๋ฉด ์๋์ ๊ธ์ ์ด์ฉํด์ ๋จผ์ Docker๋ฅผ ์ค์นํด์ฃผ์๊ธฐ ๋ฐ๋๋๋ค.
Docker, ๊ทธ๊ฒ์ ๋ฌด์์ด๊ณ , ์ค์น๋ ์ด๋ป๊ฒํ ๊น?
์์ฆ Docker ๋ผ๊ณ ํ๋ ๊ฒ์ด ๊ต์ฅํ ์ธ๊ธฐ์ ๋๋ค. Docker ์ปจํ ์ด๋๋ ์๊ธฐ ์์ํ๊ฑด ์ ๋ ์๋ 10์๋ถํฐ์๋๋ฐ, ์ ๋ ๊ฝค ๋ง์ด ์ฌ์ฉํ๊ณ ์์ต๋๋ค. What is Docker? Docker๋ฅผ ๊ฒ์ํ์๋ ๋ถ๋ค์ ์๋ง ํ ๋ฒ
blog.neonkid.xyz
์ด ๊ธ์์ Minikube ์ค์น๋ฅผ ์ํด ์๋์ ํ๊ฒฝ์ ์ฌ์ฉํ์์ต๋๋ค.
- Ubuntu Linux 20.04
- 32 GB RAM
- AMD Ryzen 5 3700X 8 Core CPU
์๋ ํ๊ฒฝ์ด๋ผ๋ฉด, Virtualbox๋ฅผ ๋ณ๋๋ก ์ค์นํด์ผ ํ๊ณ , Mac ํ๊ฒฝ์ด๋ผ๋ฉด Docker Desktop์ ์ค์นํ ์ ์ฟ ๋ฒ๋คํฐ์ค ํ๊ฒฝ์ ์ฝ๊ฒ ์ค์นํ ์ ์์ต๋๋ค. ์์ธํ ์ค์น ๋ฐฉ๋ฒ์ ์๋์ URL์์ ํ์ธํ์ค ์ ์์ต๋๋ค.
https://minikube.sigs.k8s.io/docs/start/
minikube start
minikube is local Kubernetes
minikube.sigs.k8s.io
์ฐ๋ถํฌ ๋ฆฌ๋ ์ค์์ ์ค์นํ ๋ ์๋์ ๋ ๊ฐ์ง ๋ฐฉ๋ฒ์ ์ฌ์ฉํ ์ ์์ต๋๋ค.
- Minikube ์ค์น ๋ฐ์ด๋๋ฆฌ๋ฅผ ์ด์ฉํ๋ ๋ฐฉ๋ฒ
- Debian Package ๋ฐ์ด๋๋ฆฌ(.deb)๋ฅผ ์ด์ฉํ๋ ๋ฐฉ๋ฒ
์ค์น์ ๋์ด๋๋ ๋ ๋ค ํฐ ์ฐจ์ด๊ฐ ์๊ธฐ ๋๋ฌธ์ ๋ ๊ฐ์ง ๋ชจ๋ ์งํํด๋ณด๋๋ก ํ๊ฒ ์ต๋๋ค.
$ curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64
๋จผ์ Google Storage์ ์๋ Minikube ์ค์น ๋ฐ์ด๋๋ฆฌ๋ฅผ curl ๋ช ๋ น์ด๋ฅผ ์ด์ฉํด ๋ค์ด๋ก๋ ๋ฐ์ต๋๋ค.
$ sudo install minikube-linux-amd64 /usr/local/bin/minikube
์ ๋ช ๋ น์ด๋ฅผ ์ด์ฉํด minikube ๋ฐ์ด๋๋ฆฌ ์ค์น ๊ฒฝ๋ก๋ฅผ ์ ๋ ฅํด์ค๋๋ค. ์ผ๋ฐ์ ์ผ๋ก ๋ฆฌ๋ ์ค์์ ๋ฐ์ด๋๋ฆฌ ์ค์นํ ์ ์ฌ์ฉํ๋ ๊ฒฝ๋ก์ธ /usr/local/bin/minikube๋ฅผ ์ด์ฉํ๋๋ก ํ๊ฒ ์ต๋๋ค.
์ค์น๊ฐ ๋๋๋ฉด /usr/local/bin ๊ฒฝ๋ก์ minikube ํ์ผ์ด ์๊ธฐ๊ฒ ๋ฉ๋๋ค.
๋ ๋ฒ์งธ ๋ฐฉ๋ฒ์ผ๋ก DEB(Debian ํจํค์ง ๋ฐ์ด๋๋ฆฌ)๋ฅผ ์ด์ฉํ๋ ๋ฐฉ๋ฒ์ ๋๋ค. ์ด ์ญ์ curl ๋ช ๋ น์ด๋ฅผ ์ด์ฉํด์ Google Storage์ ์๋ Minikube deb ํ์ผ์ ๋ฐ์์ ์คํํ๋ ๋ฐฉ๋ฒ์ ๋๋ค.
$ curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube_latest_amd64.deb
๋จผ์ Google Storage์ ์๋ Minikube ์ค์น DEB ๋ฐ์ด๋๋ฆฌ๋ฅผ curl ๋ช ๋ น์ด๋ฅผ ์ด์ฉํด ๋ค์ด๋ก๋ ๋ฐ์ต๋๋ค.
$ sudo dpkg -i minikube_latest_amd64.deb
Debian ํจํค์ง ์ค์น ๋ช ๋ น์ด๋ฅผ ์ด์ฉํด minikube๋ฅผ ์ค์นํด์ฃผ๋ฉด ๋์ ๋๋ค.
$ minikube start
minikube start ๋ช ๋ น์ด๋ฅผ ์ฌ์ฉํ์ฌ ์ฟ ๋ฒ๋คํฐ์ค ์ค์น๋ฅผ ๋ง๋ฌด๋ฆฌํ๊ณ Minikube๋ฅผ ์คํํด์ค๋๋ค.
๋ง์ฝ ์์ ์ค๋ฅ๊ฐ ๋ํ๋๋ค๋ฉด, ์๋์ ๋ช ๋ น์ด๋ฅผ ์ด์ฉํด์ ํ์ฌ ํฐ๋ฏธ๋ ์ธ์ ์ ๊ทธ๋ฃน์ docker ๊ทธ๋ฃน์ผ๋ก ๋ฐ๊ฟ์ฃผ๋๋ก ํฉ์๋ค. ๋ณธ๋๋ ํฐ๋ฏธ๋์ ์ฌ์คํํด๋ ์๊ด์์ง๋ง, ํฐ๋ฏธ๋ ์ฌ์คํ์ด ๋ฒ๊ฑฐ๋กญ๋ค๋ฉด ์ด ๋ฐฉ๋ฒ์ ์ฐ๋ ๊ฑธ ์ถ์ฒํฉ๋๋ค.
$ sudo newgrp docker
์ด๋ ๊ฒํ๋ฉด ์ค๋ฅ ์์ด ์ ์งํ๋๋ ๊ฒ์ ์ ์ ์์ต๋๋ค.
Done! ๋ฉ์์ง๊ฐ ๋ํ๋๋ฉด Minikube ์ค์น๊ฐ ์๋ฃ๋ ๊ฒ์ ๋๋ค. ๊ทธ ๋ค์์ ์ฟ ๋ฒ๋คํฐ์ค๋ฅผ ์ ์ดํ ํ๋ก๊ทธ๋จ์ธ kubectl ๋ฐ์ด๋๋ฆฌ๊ฐ ํ์ํฉ๋๋ค.
kubectl ์ค์น
kubectl์ ์ฟ ๋ฒ๋คํฐ์ค ํด๋ฌ์คํฐ๋ฅผ ์ ์ดํ ์ ์๋ ๋ช ๋ น์ด ๋ฐ์ด๋๋ฆฌ์ ๋๋ค. ๋ง์น ssh์๋ ๊ฐ์์ ๋ก์ปฌ์ ์๋ ์ฟ ๋ฒ๋คํฐ์ค ํด๋ฌ์คํฐ ๋ฟ๋ง ์๋๋ผ ์๊ฒฉ์ ์๋ ์ฟ ๋ฒ๋คํฐ์ค ํด๋ฌ์คํฐ๋ ์ ์ดํ ์ ์์ด, ์ฟ ๋ฒ๋คํฐ์ค๋ฅผ ์ค์นํ์ง ์์ ํ๊ฒฝ์์๋ ์ฟ ๋ฒ๋คํฐ์ค๋ฅผ ์ฌ์ฉํ ์ค ์๊ฑฐ๋ ์ฌ์ฉํ๊ณ ์๋ฐ๋ฉด kubectl ๋ช ๋ น์ด๋ ์์ ์ ๋จธ์ ์ ์์ด์๋ ์๋ ํ์ ์์๋ผ๊ณ ํ ์ ์์ฃ .
$ snap install kubectl --classic
์ฐ๋ถํฌ์์๋ snap ํจํค์ง ๊ด๋ฆฌ์๋ฅผ ์ด์ฉํด์ kubectl ๋ช ๋ น์ด๋ฅผ ์ค์นํ ์ ์์ต๋๋ค.
kubectl์ ์ค์นํ ๋ค ์ฐ๊ฒฐ๋ ๋ ธ๋๋ฅผ ํ์ธํด๋ณด๋ฉด, ์์ ๊ฐ์ด minikube๊ฐ ๋ง์คํฐ ๋ฐ์ผ๋ก ์ ์ค์น๋์ด ์์์ ์ ์ ์์ต๋๋ค. ์ฟ ๋ฒ๋คํฐ์ค ํด๋ฌ์คํฐ ๊ตฌ์ถ์, ๋ณ๋์ ๋ง์คํฐ ์ค์น ๋ ธ๋ ์ค์น ๋ฐ API ์ฐ๊ฒฐ ๊ณผ์ ์์ด ๋ก์ปฌ ํ๊ฒฝ์์ ์ฝ๊ฒ ์ฟ ๋ฒ๋คํฐ์ค ํด๋ฌ์คํฐ์ ๋ ธ๋๊ฐ ๊ตฌ์ฑ๋ ์ ์์์ ์ ์ ์์ต๋๋ค.
Minikube Dashboard
Minikube์์๋ ์ฟ ๋ฒ๋คํฐ์ค๋ฅผ ์ฒ์ ์ฌ์ฉํ๋ ์ฌ๋๋ค์ด ๋ช ๋ น์ด์ ์ ์ํ๊ธฐ ์ด๋ ค์ ์ฝ๊ฒ ์ฌ์ฉํ ์ ์๋๋ก GUI ํ๊ฒฝ์ ์ ๊ณตํ๋๋ฐ, ์ด๊ฒ์ด ๋ฐ๋ก Minikube์ ๋์๋ณด๋์ ๋๋ค.
๋ฌผ๋ก ์ฟ ๋ฒ๋คํฐ์ค ํด๋ฌ์คํฐ๋ฅผ ํ๋๋ถํฐ ์ด๊น์ง ์ด์ดํ๊ฒ ๋ง์คํฐ, ๋ ธ๋๋ก ๊ตฌ์ฑํ์ ๋ถ๋ค๋ GUI๋ก ์ฌ์ฉํ ์ ์๋ ์ฌ๋ฌ ๊ฐ์ง ๋๊ตฌ๋ค์ด ์์ต๋๋ค. Rancher๊ฐ ๊ทธ ์ค ํ๋์ธ๋ฐ, ๋ง์ฐ์ค ํ๋๋ง์ผ๋ก ๊ฐํธํ๊ฒ ๋ ธ๋์์ ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ฐฐํฌํ๊ณ ๋ค์์คํ์ด์ค๋ ์ฝ๊ฒ ๋ง๋ค์ด๋ผ ์ ์์ด์ ๋ด๊ฐ ์ํ๋ ์๋ฒ๋ฅผ ์๋์ผ๋ก ๊ตฌ์ถํ๊ฑฐ๋ ์ด์์ฒด์ ๋ฑ์ ์ค์นํ์ง ์์๋ ์ฝ๊ฒ ๋ง๋ค ์ ์๋ค๋ ์ฅ์ ์ด ์์ต๋๋ค. ์ด ๋ถ๋ถ์ ๋์ค์ ๋ค๋ฅธ ํํธ์์ ์์ธํ ๋ค๋ค๋ณด๋๋ก ํ๊ฒ ์ต๋๋ค.
๊ทธ๋ฌ๋ ๊ณ ๊ธ ์ฟ ๋ฒ๋คํฐ์ค ์ฌ์ฉ์๋ค์๊ฒ ๊ทธ๋ ๊ฒ ์ถ์ฒํ์ง ์์ต๋๋ค. ์์ํ ๋ผ๋ฒจ ๋ฑ์ด ์์ฑ๋์ด ์คํ๋ ค ๊ตฌ์ฑ YAML ํ์ผ์ด ๋์ฑ ๋ณต์กํด์ง๊ธฐ ๋๋ฌธ์ ์ฟ ๋ฒ๋คํฐ์ค๋ฅผ CLI๋ก ์ฌ์ฉํ์๊ณ ์ปค์คํ ์ ์์ ๋กญ๊ฒ ํ์ค ์ ์๋ ๋ถ๋ค์๊ฒ๋ CLI ํ๊ฒฝ์ด ๋ ๋ซ์ต๋๋ค.
Minikube ๋ํ Rancher ์ ๋์ ๋ ๋ฒจ์ ์๋์ง๋ง ๋น์ทํ GUI ๋๊ตฌ๋ฅผ ์ ๊ณตํ๋๋ฐ, ํ ๋ฒ ์ฌ์ฉํด๋ณด๋๋ก ํ์ฃ .
$ minikube addons list
์ฟ ๋ฒ๋คํฐ์ค์์๋ ์ฟ ๋ฒ๋คํฐ์ค๋ฅผ ํจ์จ์ ์ผ๋ก ์ฌ์ฉํ ์ ์๋ addons๋ฅผ ์ ๊ณตํฉ๋๋ค. Minikube ๋ํ addons๊ฐ ์๋๋ฐ, ๊ทธ ์ค dashboard๊ฐ ์ด์ ํด๋นํ๋ฉฐ, ์ ๋ช ๋ น์ด๋ฅผ ์ด์ฉํด์ dashboard๊ฐ ํ์ฑํ ๋์ด ์๋์ง ํ์ธํ ์ ์์ต๋๋ค.
ํ์ฌ dashboard๊ฐ ํ์ฑํ ๋์ด ์์ง ์๊ธฐ ๋๋ฌธ์ ์ฐ๋ฆฌ๋ ์๋์ ๋ช ๋ น์ด๋ฅผ ํตํด์ dashboard๋ฅผ ํ์ฑํ ํด์ฃผ๋๋ก ํฉ์๋ค.
$ minikube addons enable dashboard
๊ทธ๋ฌ๋ฉด ์์ ๊ฐ์ด dashboard addon์ด ํ์ฑํ ๋์๋ค๋ ๋ฉ์์ง๋ฅผ ๋ฐ์ ์ ์์ต๋๋ค.
$ minikube dashboard
์ ๋ช ๋ น์ด๋ฅผ ์ด์ฉํ๋ฉด minikube dashboard ์๋ฒ๊ฐ ์คํ๋๋ฉฐ ์๋์ผ๋ก ์น์ ๋์์ค๋๋ค.
minikube๋ฅผ ๊ตฌ์ฑํ ๋ค, ์๋ฌด๊ฒ๋ ํ์ง ์์ ๊ธฐ๋ณธ์ ์ธ ์๋น์ค์ ๊ณ์ , ๋ค์์คํ์ด์ค๋ง ์กด์ฌํฉ๋๋ค. ์ฐ์ธก ์๋จ์ + ๋ฒํผ์ ์ด์ฉํด์ ์ํ๋ ๋ฆฌ์์ค๋ฅผ ์ถ๊ฐํ ์ ์์ต๋๋ค.
Minikube dashboard์์๋ Pod ์์ฑ์ ์ฝ๊ฒ ํด์ค ์ ์๋ ์์์ ํตํ ์์ฑ์ด ์์ต๋๋ค. ์ํ๋ ์ ํ๋ฆฌ์ผ์ด์ ์ด๋ฆ์ ์ ๋ ฅํ๊ณ , Docker Registry ์ฃผ์๋ฅผ ์ ๋ ฅํ ๋ค์ ์ํ๋ ํ๋ ๊ฐฏ์๋ฅผ ์ ๋ ฅํ๊ณ Deploy ๋ฒํผ์ ๋๋ฅด๋ฉด ํด๋น ๊ฐฏ์ ๋งํผ ์ปจํ ์ด๋๋ฅผ ์์ฑํด์ค๋๋ค.
ํ๋๋ฅผ 1๊ฐ๋ง ์ฃผ์์ผ๋ฏ๋ก ํ๋์ชฝ์ 1๊ฐ์ ํ๋๋ง์ด ๋ํ๋๋ฉฐ ์์ฑ ์ค์ธ ๊ฒฝ์ฐ ์ฃผํฉ์์ด, ์ค๋ฅ๊ฐ ๋ฐ์ํ์ ๊ฒฝ์ฐ ๋นจ๊ฐ์, ์ ์ ๋์ํ๋ฉด ์ด๋ก์์ผ๋ก ํ์๋ฉ๋๋ค.
์ด ์ค๋ฅ๋ kubectl CLI์์ ์ ๊ณตํ๋ ์ค๋ฅ ๋ก๊ทธ๋ฅผ ๊ทธ๋๋ก ๋ณด์ฌ์ฃผ๊ธฐ ๋๋ฌธ์ ์ฐธ๊ณ ์ฉ์ด ์๋ ์ค์ ์ด์์ฉ์ผ๋ก๋ ์ฌ์ฉํ ์ ์๋ ๋ ๋ฒจ์ ๋๋ค.
์ผ์ชฝ ์๋จ์ ์๋ "๋ก๊ทธ๋ณด๊ธฐ" ๋ฒํผ์ ๋๋ฌ์, ๋ก๊ทธ๋ฅผ ๋ณผ ์๋ ์๊ณ ,
์ ์คํ์ ํตํด์ ์ปจํ ์ด๋ ๋ด์ nginx ์ค์ ์ด ์ด๋ค์์ผ๋ก ๋์ด ์๋์ง๋ ์ฝ๊ฒ ํ์ธํ ์ ์์ต๋๋ค.
๋ง์น๋ฉฐ...
๋น๋ก ์ฟ ๋ฒ๋คํฐ์ค์ ์ค์น๋ ๋ณต์กํ๊ณ ์ด๋ ค์ ์ง๋ง ์ฟ ๋ฒ๋คํฐ์ค ํ์์๋ Minikube๋ผ๋ ๊ฐ์ํ ์ฟ ๋ฒ๋คํฐ์ค ํ๋ก์ ํธ๋ฅผ ๊ตฌ์ถํ์ฌ ๋ ๋ง์ ์์ง๋์ด๋ค์ด ์ฟ ๋ฒ๋คํฐ์ค๋ฅผ ์ฌ์ฉํ ์ ์๋๋ก ํ์์ผ๋ฉฐ ์ด ์ธ์๋ microk8s ๋ฑ์ ์ด์ฉํ์ฌ๋ ์ฝ๊ฒ ์ฒดํํด๋ณผ ์ ์๋ ๋ฐฉ๋ฒ ๋ฑ์ด ๋ง์ด ์์ต๋๋ค.
์ฟ ๋ฒ๋คํฐ์ค๋ฅผ ์ ๋ง๋ก ์ฒ์ ์ฌ์ฉํ์๋ ๋ถ๋คํํ ๋ ๊ฐ์ธ์ ์ผ๋ก Minikube๋ฅผ ๋ง์ด ์ถ์ฒ๋๋ฆฝ๋๋ค. GUI ๋๊ตฌ๊ฐ ์ ๋ง ์๋์ด์๊ณ , ๋ฌด์๋ณด๋ค๋ ๋์๋ณด๋์์ GUI์์ ํ๋ ํ๋๋ค์ CLI์ ์ด๋ค์์ผ๋ก ๋์ํ๋์ง ํํธ๋ฅผ ๋ณด์ฌ์ฃผ๊ธฐ๋ ํจ๊ณผ ๋์์ minikube ๋ช ๋ น์ด๋ฅผ ์๋ชป ์ ๋ ฅํ์ฌ๋ ํํธ๋ฅผ ์ ๊ณตํด์ฃผ๋ ๋ฑ ์ฌ๋ฌ๊ฐ์ง ์ด๋ณด์ ๋ถ๋ค์ ์ํ ์ต์ ๋ค์ด ์ ๋ง ๋ง์ด ์ ๊ณต๋ฉ๋๋ค.
๋ฐ๋ฉด microk8s๋ Minikube์ ๋ง์ฐฌ๊ฐ์ง๋ก ๊ฐ๋ณ๊ณ ๋ผ์ดํธํ ์ฟ ๋ฒ๋คํฐ์ค ํ๊ฒฝ์ ์ ๊ณตํด์ฃผ๊ธด ํ์ง๋ง dashboard์ ๊ฐ์ ์น์ ํ ์คํ์ผ์ ์ ๊ณตํด์ฃผ๊ธฐ ๋ณด๋จ, ์ ๋ง ๊ฐ๋ฒผ์ด ํํ์ ์ฟ ๋ฒ๋คํฐ์ค ๋ฐ ๊ฐ์ธ์ฉ๋๋ก ์ ํฉํ ํ๊ฒฝ์ ์ฟ ๋ฒ๋คํฐ์ค ํด๋ฌ์คํฐ๋ฅผ ๊ตฌ์ถํ ์ ์๋ ์ฉ๋์ ์ ํฉํ ์๋ฃจ์ ์ด๋ผ๊ณ ์๊ฐํฉ๋๋ค. ๋์ค์ ๊ธฐํ๊ฐ ๋๋ค๋ฉด microk8s์ ๋ํ ๊ธ๋ ๊ฐ์ด ๋จ๊ฒจ๋ณด๋๋ก ํ๊ฒ ์ต๋๋ค.
'Infrastructure > Kubernetes' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Kubernetes] 3. Controller๋ก ๋ ๋์๊ฐ ์ ํ๋ฆฌ์ผ์ด์ ๋ฐฐํฌ (0) | 2020.11.18 |
---|---|
[Kubernetes] 2. Kubernetes ๊ธฐ๋ณธ ๊ตฌ์ฑ๊ณผ ๊ฐ์ฒด(object) (0) | 2020.11.14 |
[Kubernetes] 1. Container Deployment์ Kubernetes (0) | 2020.11.07 |