1인 개발을 위해서 환경을 꾸밀 때에는 많은 제약이 있다. 여유 자금이 많아서 서버를 사놓고 VM을 여러 개 설치하여 사용할 수 있겠지만, 난 가난한 가장으로 그러한 환경을 꾸밀 수가 없었다. 사실 현재 밴쿠버에서 유학생으로 있고 집도 좁아서 서버를 설치해 둘 공간도 없긴 하다. 그래서 최근 사양이 좋은 Laptop을 구매하였고 어떻게 개발환경을 꾸밀까 고민을 했었다.
kubernetes를 local로 설치할 경우 다양한 방법이 있다. Linux machine일 경우에는 더 많은 tool들을 사용할 수 있지만, 난 macOS 환경이라 제약이 좀 있었다.
대표적으로 모든 OS 환경에 사용할 수 있는 것이 minikube, kind, k3d, docker desktop kubernetes 등이 있다.
Kubernetes 설치가 아니라 실행이라고 적었다. 사실 이 툴을 이용하여 kubernetes를 설치하는 것이 아니라 실행해야 한다고 하는게 맞을 것 같다. 그만큼 간단하다는 얘기이다.
Settings 메뉴로 들어가면 Kubernetes Menu가 보인다. 클릭해보자.
처음은 `Enable Kubernetes` 가 Check되어 있지 않다. 그것을 체크를 해주고 설치를 하면 몇 분 후에 설치가 완료된다.
현재 나의 환경에는 v1.22.4가 설치되어 있다.
Kubernetes에 접근하기
kubernetes를 설치하고 나면 이제 이 cluster 환경에 접근이 가능해야 한다. 기본적으로 kubernetes의 authentication 정보는 `~/.kube/config` 에 저장이 된다. Docker desktop은 현재 PC를 master node로 하여 설치되므로, 설치가 완료되면 auth 정보가 해당 파일에 자동으로 저장된다. 너무 쉽다.
하지만 cluster 환경에 접근은 authentication으로만은 불가능하다. 기본적인 접근은 `kubectl`이라고 하는 Command Line Interface를 통해서 수행한다. 가장 기본이고 가장 많이 사용하는 것이므로 꼭 기억하자.
kubectl 설치하기
내 환경이 mac이므로 이것을 기준으로 설명하겠다. 나머지는 공식문서 Link로 대신한다.
$ kubectl cluster-info
Kubernetes control plane is running at https://kubernetes.docker.internal:6443
CoreDNS is running at https://kubernetes.docker.internal:6443/api/v1/namespaces/kube-system/services/kube-dns:dns/proxy
To further debug and diagnose cluster problems, use 'kubectl cluster-info dump'
오늘은 나의 개발환경의 가장 기본이 되는 kubernetes 설치에 대해서 확인해 보았다.