Outsider's Dev Story

Stay Hungry. Stay Foolish. Don't Be Satisfied.
RetroTech 팟캐스트 44BITS 팟캐스트

Docker for Mac으로 Kubernetes 로컬에서 사용하기

최근 스터디로 Kubernetes를 보고 있는데 세미나에서는 몇 번 들었지만 실제로 사용해보는 것은 처음이다. 클라우드 서비스들에서 GKE, (Google Kubernetes Engine), Amazon EKS를 제공하고 있지만, 공부 목적으로 과금이 되는 클라우드만 사용할 수는 없으므로 로컬에서 환경을 마련해야 한다.

이제 막 보기 시작했지만 Kubernetes의 특성상 로컬에서 환경을 구축하기가 꽤 어려운데 보통은 VirtualBox등의 가상환경 시스템을 이용하는 minikube를 많이 사용하는 것으로 보인다. 최근에는 Docker for Mac에서 Kubernetes를 지원하기 시작했으므로 이를 이용하면 쉽게 로컬에서 Kubernetes를 사용할 수 있다.

Docker for Mac edge

Docker for Mac의 현재 최신 버전은 17.12.0-ce인데 아래에서 보듯이 안정(Stable) 버전에서는 아직 Kubernetes를 지원하지 않는다.

Docker for Mac의 버전 정보

Kubernetes를 사용하려면 edge 버전을 사용해야 한다. Preference의 General 탭에 가면 맨 아래에 edge 버전으로 변경하는 링크가 있는 것을 볼 수 있다.

Docker for Mac의 설정화면에서 edge 변경 화면

이 링크로 이동한 후 다운로드 페이지에서 Edge 버전을 다운받아서 재설치하면 안정 버전을 제거하고 Edge 버전으로 재설치한다. 이때 기존에 받아놓은 Docker 이미지나 설정은 모두 지워지므로 주의해야 한다.

Docker for Mac edge 버전의 버전 정보

현재 Edge 최신 버전은 18.02.0-ce-rc1이고 Kubernetes v1.8.2가 포함되어 있다. 참고로 포함된 Kubernetes를 최신 버전으로 올린다거나 하지는 못한다. 현재 Kubernetes의 최신 버전은 v1.9.2이다.

Docker for Mac 환경설정의 kubernetes 탭

Preference의 Kubernetes 탭에서 활성화를 하면 클러스터를 설치하는데 약간의 시간이 걸린 뒤 완료된다. 이제 터미널에서 kubectl 명령어로 버전이 제대로 출력되면 설치가 제대로 된 것이다.

$ kubectl version --output=yaml
clientVersion:
  buildDate: 2017-10-24T19:48:57Z
  compiler: gc
  gitCommit: bdaeafa71f6c7c04636251031f93464384d54963
  gitTreeState: clean
  gitVersion: v1.8.2
  goVersion: go1.8.3
  major: "1"
  minor: "8"
  platform: darwin/amd64
serverVersion:
  buildDate: 2017-10-24T19:38:10Z
  compiler: gc
  gitCommit: bdaeafa71f6c7c04636251031f93464384d54963
  gitTreeState: clean
  gitVersion: v1.8.2
  goVersion: go1.8.3
  major: "1"
  minor: "8"
  platform: linux/amd64
2018/01/31 18:00 2018/01/31 18:00