포스트 목록

2020년 3월 15일 일요일

[Kubernetes] Windows에 도커 설치 및 쿠버네티스 활성화 하기

Windows에 도커 설치

 윈도우즈에 도커를 설치하기는 쉽습니다.

https://hub.docker.com/editions/community/docker-ce-desktop-windows

위 사이트에 들어가신 후 Get Docker를 누르시면 됩니다.

그리고 설치 파일을 실행 후 설치하시면 됩니다.


다만 저의 경우 설치 후 실행하니 위와 같은 에러가 발생하였습니다.

위 에러는 도커가 윈도우즈에서 실행하기 위해서는 Hyper-V라는 옵션을 사용하는데 해당 옵션을 켜지 않아 발생한 에러입니다.

인터넷을 찾아보면 세 가지 방법을 제시를 하고 있는데, 저의 경우는 어떠한 방법도 되지 않았습니다만 일단 소개해 드리겠습니다.

A. 관리자 권한으로 실행한 명령 프롬프트에 dism.exe /Online /Enable-Feature:Microsoft-Hyper-V /All 입력
C:\Windows\system32>dism.exe /Online /Enable-Feature:Microsoft-Hyper-V /All

배포 이미지 서비스 및 관리 도구
버전: 10.0.18362.1

이미지 버전: 10.0.18362.720

기능을 사용하도록 설정하는 중
[==========================100.0%==========================]
작업을 완료했습니다.

B. 관리자 권한으로 실행한 명령 프롬프트에 bcdedit /set hypervisorlaunchtype auto 입력
C:\Windows\system32>bcdedit /set hypervisorlaunchtype auto
작업을 완료했습니다.

C. 제어판 -> 프로그램 -> Windows 기능 켜기/끄기 -> Hyper-V 체크 해제 후 재부팅 -> 다시 Hyper-V 체크 후 재부팅

제 PC 기준으론 세 가지 방법이 모두 안됐지만 BIOS에 직접 설정을 해주니 해결 되었습니다.

D. HP 기준으로 BIOS SETUP -> Advanced 탭 -> System Options -> Virtualization Technology, Virtualization Technology for Directed I/O 둘 다 체크 후 재부팅

설치가 완료되었으면 윈도우즈 파워쉘을 실행하여 docker version 명령을 치시면 버전정보가 나오면서 정상적으로 설치가 완료된 것을 확인할 수 있습니다.
PS C:\Users\kube> docker version
Client: Docker Engine - Community
 Version:           19.03.8
 API version:       1.40
 Go version:        go1.12.17
 Built:             Wed Mar 11 01:23:10 2020
 OS/Arch:           windows/amd64
 Experimental:      false

...

Server: Docker Engine - Community
 Engine:
  Version:          19.03.8
  API version:      1.40 (minimum version 1.12)
  Go version:       go1.12.17
  Built:            Wed Mar 11 01:29:16 2020
  OS/Arch:          linux/amd64
  Experimental:     false

...

쿠버네티스 활성화 하기

도커를 설치 후 쿠버네티스를 활성화 하기 위해서는 시스템 트레이에 도커를 클릭한 뒤 Settings를 클릭합니다.

그 뒤 Kubernetes 탭을 눌러 Enable Kubernetes, Deploy Docker Stacks to Kubernetes by default 두 개를 체크해주면 됩니다.



두 작업이 완료 되었다면 파워쉘에서 kubectl version으로 버전을
PS C:\Users\kube> kubectl version
Client Version: version.Info{Major:"1", Minor:"15", GitVersion:"v1.15.5", 
GitCommit:"20c265fef0741dd71a66480e35bd69f18351daea", GitTreeState:"clean", 
BuildDate:"2019-10-15T19:16:51Z", GoVersion:"go1.12.10", Compiler:"gc", 
Platform:"windows/amd64"}
Server Version: version.Info{Major:"1", Minor:"15", GitVersion:"v1.15.5", 
GitCommit:"20c265fef0741dd71a66480e35bd69f18351daea", GitTreeState:"clean", 
BuildDate:"2019-10-15T19:07:57Z", GoVersion:"go1.12.10", Compiler:"gc", 
Platform:"linux/amd64"}

kubectl get pods -n kube-system으로 pod정보를 얻을 수 있습니다.
PS C:\Users\kube> kubectl get pods -n kube-system
NAME                                     READY   STATUS    RESTARTS   AGE
coredns-5c98db65d4-cxqzk                 1/1     Running   0          5m
coredns-5c98db65d4-skssk                 1/1     Running   0          5m
etcd-docker-desktop                      1/1     Running   0          4m13s
kube-apiserver-docker-desktop            1/1     Running   0          4m
kube-controller-manager-docker-desktop   1/1     Running   0          4m4s
kube-proxy-l9rbh                         1/1     Running   0          5m
kube-scheduler-docker-desktop            1/1     Running   0          4m
storage-provisioner                      1/1     Running   0          3m58s

댓글 없음:

댓글 쓰기