[Kubernetes] Minikube for local Kubernetes

by 스뎅(thDeng) on

kubernetes(http://kubernetes.io/)를 사용하려면 여러대의 master node와 slave node가 필요하다. local에서는 여러 node를 띄우기 어려우니 테스트하기 위해 single node로 사용할 수 있는 minikube라는 툴을 제공한다.

minikube는 Linux, MacOS, Windows 모든 OS를 지원하는데, VirtualBoxVMware Fusion 등이 필요하다. 각 OS별 설치는 kubernetes 홈페이지github 페이지에서 확인하면 되고, 여기서는 MacOS 기준으로 설명한다.

아래 명령을 실행해서 minikube 커맨드를 받아 /usr/loca/bin 경로에 추가한다. /usr/loca/bin은 path가 잡혀 있으니 언제든 minikube 명령어를 실행할 수 있다.

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

minikube start 명령으로 VirtualBox나 VMWare Fusion으로 실행하면 된다. 처음 실행할 때 minikube 이미지를 받아와서 설치하기 때문에 시간이 조금 걸린다.

$ minikube start
Starting local Kubernetes cluster...
Downloading Minikube ISO
36.00 MB / 36.00 MB [==============================================] 100.00% 0s
Kubectl is now configured to use the cluster.

kubernetes cli인 kubectl을 이용해서 실행 중인 kubernetes cluster 정보를 얻어올 수 있다. MacOS는 homebrew 등으로 kubectl을 간단히 설치할 수 있다.

$ brew update
      ...
$ brew install kubectl
      ...
$ kubectl cluster-info
Kubernetes master is running at https://192.168.99.100:8443
KubeDNS is running at https://192.168.99.100:8443/api/v1/proxy/namespaces/kube-system/services/kube-dns
kubernetes-dashboard is running at https://192.168.99.100:8443/api/v1/proxy/namespaces/kube-system/services/kubernetes-dashboard

kubernetes는 대부분 kubectl을 통해서 컨트롤하지만, 간단한건 UI를 통해서도 가능하다.

$ minikube dashboard
Opening kubernetes dashboard in default browser...

위 커맨드를 실행하면 브라우저로 아래와 같은 dashboard 화면을 볼 수 있다.

minikube dashboard

참고

별도로 명시하지 않을 경우, 이 블로그의 포스트는 다음 라이선스에 따라 사용할 수 있습니다: Creative Commons License CC Attribution-NonCommercial-ShareAlike 4.0 International License