Container/Kubernetes

맥북에서 minikube 쿠버네티스 서비스 접근이 안될 때

검정비니 2023. 12. 30. 19:57
728x90
반응형

쿠버네티스 공부를 로컬호스트 상에 Kubernetes 클러스터 구축을 위해 가장 많이 사용되는 방식은 아마 도커와 minikube를 사용하는 방법일 것이다.

 

이 minikube를 사용한 클러스터의 경우 가장 큰 단점으로는 NodePort나 LoadBalancer와 같은 서비스에 대해서 external IP가 제대로 할당되지 않아서 서비스를 만들어도 외부 클러스터에서 접근이 잘 안되는 문제일 것이다.

이 문제를 처음 접하는 사람들은 "혹시 서비스가 제대로 만들어지지 않았나?"나 "kube-proxy"에 뭔가 문제가 있나?" 등의 삽질을 많이 하게 될 것이다.

 

실제로 필자 역시 처음 minikube를 사용해서 쿠버네티스 공부를 할 때에는 문제를 제대로 파악하지 못해서 몇시간동안 삽질을 했던 적이 있다.

 

서비스를 실행시키는 플랫폼과 minikube를 실행시키는 엔진 종류마다 다르지만, 맥 OS(M1 Macbook Pro와 Intel MacbookPro에서 테스트 진행)에서 Docker 엔진을 통해서 minikube 클러스터를 구축하게 되면 external IP를 할당받지 못해서 외부 접근이 안되는 문제가 지속적으로 발생하였다.

 

문제 해결을 위해 강제로 접근이 가능한 url을 얻기 위해 다음 커멘드를 사용하였다:

# To access the service "my-svc" run the following command:
minikube service my-svc --url

위의 커멘드를 통해서 출력된 url을 사용해보니 정상적으로 서비스로 접근이 되는 것을 확인할 수 있었다.

 

반응형