Minikube 설치를 마친 후 실행만 해주면 쿠버네티스를 맛볼 수 있다. 실행 명령어는!
> minikube start
타 프로그램들은 어떻게든 설치를 하고 나면 실행 과정에서 오류가 나는 일은 거의 없다. 하지만 Minikube 는 설치가 잘되더라도(바이너리 파일을 갖다 쓰는 정도이니 설치랄 것도 없지만) 이 Minikube 가 실행되기 까지 많은 설정들이 필요할 수도 있다. 시스템마다 조금씩 다르겠지만 Minikube 를 VM 에서 실행하려면 하이퍼바이저가 필요하며, VM 에서 실행하지 않으려면 Linux 시스템과 docker 가 필요하다. 하이퍼바이저(Hyperviser) 란 VirtualBox 나 VMware, Hyper-V 같이 물리적인 호스트에서 다수의 가상머신(VM) 을 실행할 수 있도록 하여, CPU, 메모리, 네트워크 대역폭 등의 컴퓨팅 자원을 더 효과적으로 사용할 수 있게 하는 도구이다. Windows 에서 Minikube 를 실행하려면 리눅스 환경이 필요하므로 하이퍼바이저가 반드시 필요하다. 하이퍼바이저의 구동 환경 역시 까다롭다. 대부분의 하이퍼바이저는 CPU 가 가상화(indel: VT-x / amd: AMD-v) 를 지원해야 하고 컴퓨터의 Bios 에서 가상화(Virtualization) 같은 가상화 관련 항목이 활성화 되어 있어야 한다. 참고로 지금 내가 사용중인 Windows 10 에서, Home 에디션을 제외하고는 hyper-v 가 설치되어 있으며, Docker Desktop 을 설치하여 hyper-v 를 활성화 시키거나 수동으로 Powershell 에서 활성화를 시켜 따로 하이퍼바이저를 설치하지 않고 진행하였다.
Minikube 실행 전 준비사항
1. CPU 가상화 지원 (체크: SecurAble) 및 Bios 가상화 활성화 확인
2. 하이퍼바이저 설치 (VirtualBox, hyper-V, KVM 등)
3. Minikube 실행시 해당 하이퍼바이저 명시 (default: virtualbox)
오류 메시지
만약 가상화가 활성화 되어 있지 않은 경우 해당하는 오류 메시지를 나타내며 실행을 중지한다. 아래는 하이퍼바이저를 설치했지만 명시하지 않아 default 하이퍼바이저인 virtualbox 가 없다는 오류 메시지이다.
C:\Windows\system32> minikube start
o minikube v0.35.0 on windows (amd64)
> Creating virtualbox VM (CPUs=2, Memory=2048MB, Disk=20000MB) ...
@ Downloading Minikube ISO ...
184.42 MB / 184.42 MB [============================================] 100.00% 0s
! Unable to start VM: create: precreate: VBoxManage not found. Make sure VirtualBox is installed and VBoxManage is in the path
아래는 로컬에 활성화 되어 있는 Hyper-V 를 명시했지만 외부 가상 스위치가 없다는 오류 메시지이다.
C:\Windows\system32> minikube start --vm-driver=hyperv
o minikube v0.35.0 on windows (amd64)
> Creating hyperv VM (CPUs=2, Memory=2048MB, Disk=20000MB) ...
! Unable to start VM: create: precreate: no External vswitch found. A valid vswitch must be available for this command to run. Check https://docs.docker.com/machine/drivers/hyper-v/
Hyper-V 관리자에서 [가상 스위치 관리자...] 를 클릭하여 Minikube 에 사용할 외부 네티워크 스위치를 생성한다.
다른 하이퍼바이저를 사용할 때도 오류 메시지가 나타난다면 위처럼 메시지를 보고 해결하면 될 것이다.
정상 동작
C:\Windows\system32>minikube start --vm-driver=hyperv
o minikube v0.35.0 on windows (amd64)
> Creating hyperv VM (CPUs=2, Memory=2048MB, Disk=20000MB) ...
- "minikube" IP address is 192.168.10.163
- Configuring Docker as the container runtime ...
- Preparing Kubernetes environment ...
@ Downloading kubelet v1.13.4
@ Downloading kubeadm v1.13.4
- Pulling images required by Kubernetes v1.13.4 ...
- Launching Kubernetes v1.13.4 using kubeadm ...
: Waiting for pods: apiserver proxy etcd scheduler controller addon-manager dns
- Configuring cluster permissions ...
- Verifying component health .....
+ kubectl is now configured to use "minikube"
= Done! Thank you for using minikube!
C:\Windows\system32>minikube status
host: Running
kubelet: Running
apiserver: Running
kubectl: Correctly Configured: pointing to minikube-vm at 192.168.10.163
정상적으로 시작이 되었다면 VM 에 minikube 가 구동되고 있을 것이다. ㅊㅋㅊㅋ!
WRITTEN BY
- 손가락귀신
정신 못차리면, 벌 받는다.