관리 메뉴

피터의 개발이야기

Minikube 드라이브 Hyperkit 설치하기 본문

Kubernetes/minikube

Minikube 드라이브 Hyperkit 설치하기

기록하는 백앤드개발자 2024. 1. 17. 00:27
반응형

ㅁ 들어가며

 minikube의 런타임 드라이브는 Docker Desktop이 기본이다.

인그레스(Ingress) 컨트롤러로 Minikube에서 인그레스 설정하기에서 docker로 Ingress 테스트를 진행하는데 실패하였다.

그래서 driver가 문제가 될 수 있다는 글을 보아서 drive 설치 및 docker의 네트워크 문제에 대해서 분석을 해 보았다.

 

ㅁ Docker 안의 Docker 한계

 ㅇ minikube를 사용하면서 네트워크 관련 작업을 할 때에 한계점을 만나게 된다.

 ㅇ minikube 드라이브를 Docker를 사용할 경우 minikube node는 Docker 컨테이너로 생성된다.

 ㅇ Ingress로 로드밸런스나 서비스를 생성하여 외부 접속 테스트를 할 때이면 외부에서는 쉽게 접속이 되지 않는다.

 

 ㅇ minikube의 서비스를 외부 연결을 할 때에 아래의 경고가 발생한다.

 ㅇ docker driver의 경우 터미널에서 프로세스를 유지해야 외부에서 접속이 가능하였다.

    ㄴ 프로세스를 유지해야 하는 이유는 터널링으로 외부 연결을 유지하기 때문인듯 하다.

    ㄴ docker 안에 docker 컨테이너가 있다보니 네트워크도 복잡하기 때문이다.

  ㅇ host의 eth0 -> docker0 -> veth(virtual ethernet interface) -> 컨테이너의 eth0 
      ㄴ 컨테이너 eth0 -> docker0 -> veth(virtual ethernet interface) -> 컨테이너 안의 컨테이너 eth0 
  ㅇ 함께 보면 좋은 사이트: 도커 네트워크의 이해

 

ㅁ HyperKit 설치

brew install hyperkit

 

ㅁ 사용법

# minikube 기동 시 드라이브 지정
$ minikube start --driver=hyperkit

# 기본 드라이브 지정
$ minikube config set driver hyperkit

 

ㅁ 함께 보면 좋은 사이트

minikube driver hyperkit 공식문서

반응형
Comments