localhost:30000 접속 안되는 문제 관련 질문
7
2 asked
저는 Docker Desktop Kubernetes 환경에서 실습을 진행 중입니다.
강의 영상과 동일하게 Deployment와 NodePort 타입 Service를 생성했는데, 브라우저에서 localhost:30000으로 접속하면, ERR_CONNECTION_REFUSED가 발생하면서 접속이 되지 않습니다.
현재 제 실습 진행 상태입니다 !
(1) Pod는 정상 실행 중입니다.
kubectl get pod 결과 3개 Pod 모두 Running 상태였습니다.
(2) Spring Boot 애플리케이션도 컨테이너 내부에서 정상 실행 중입니다.
kubectl logs 확인 시 Tomcat이 8080 포트로 정상 실행되었습니다.
(3) Pod 내부에서 직접 요청하면 정상 응답이 옵니다.
kubectl exec -it <pod명> -- curl localhost:8080/ → 결과: Hello, World!
(4) Service도 Pod를 정상적으로 잡고 있습니다.
kubectl describe service spring-service 확인했었을 때, Endpoints에 10.244.x.x:8080 형태로 Pod 3개가 정상적으로 표시되었습니다.
그런데 NodePort 방식으로 localhost:30000 접속이 되지 않았고, 로컬 PC 포트(30000)과 서비스 포트(8080)를 포트포워딩한 뒤에는 정상 접속이 되었습니다.
kubectl port-forward service/spring-service 30000:8080
이후 localhost:30000으로 접속하니까 정상적으로 Hello, World가 나왔습니다.
강의 영상에서는 별도의 포트포워딩 없이도 NodePort로 정상 접속이 가능한데, 제 환경에서는 어떤 문제 때문에 접속이 되지 않는지 궁금합니다.
Answer 1
0
안녕하세요, 인프런 AI 인턴입니다. docu님.
Docker Desktop Kubernetes 환경에서는 NodePort로 직접적인 외부 접속이 어려울 수 있는데, 이는 Docker Desktop이 WSL2 기반에서 작동하기 때문입니다. 이 설정으로 localhost와 NodePort 프록시 간 연결이 자동으로 허용되지 않기 때문에 포트 포워딩이 필요한 것입니다.
문제 해결을 위한 제안
Docker Desktop 네트워크 이해: Docker Desktop은 기본적으로 WSL2로 구현되어 있어서 Windows의 네트워크와 다르게 작동합니다. WSL2 내부의 Kubernetes 노드들은 Windows에서 직접적으로 접근할 수 없는 네트워크 환경에 있습니다.
WSL2 네트워크 환경:
localhost대신에 WSL2 네트워크의 IP 주소로 접근해야 할 때가 있습니다. 그러므로kubectl cluster-info를 사용하여 클러스터 정보를 확인하고 올바른 IP로 접근하는 방법을 시도해볼 수 있습니다. (예:http://<클러스터IP>:30000)NodePort 설정 재확인:
kubectl describe service spring-service를 통해 NodePort 설정이 정확한지 확인하세요. 특히 포트가 노출되어 있는지, 방화벽 설정이나 네트워크 규칙이 없는지 점검해 봅니다.Docker Desktop 네트워크 설정 검토: Docker와 관련된 네트워크 설정이 올바르게 되어 있는지 확인하고 필요에 따라 조정합니다.
유사한 문제 해결 사례
Deployment-service 연결 과정에서 오류..? - 비슷한 상황에서 WSL2와 Docker 환경에서 NodePort의 접근 문제에 대해 다룬 사례입니다.
30000 Port로 접속이 안됩니다 ㅠㅠ - 비슷한 NodePort 문제 해결을 위한 팁을 제공하는 질문입니다.
이러한 자료를 참고하여 문제를 진단해 보시면 도움이 될 수 있습니다. NodePort와 WSL2 관련 환경에서의 포트 접근은 꽤 자주 발생하는 이슈입니다. 따라서 포트 포워딩을 손쉽게 사용하는 것도 하나의 방법일 수 있습니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
설치 관련 문의
0
33
2
Docker Desktop 설치 관련 질문
0
42
2
실습을 가상환경에서 해도 따라하는데 지장이 없나요?
0
62
2
쿠버네티스 학습
0
62
1
Docker Desktop 설치 관련 질문드립니다!
0
83
2
섹션 3 (14강) 04:52 분경 yaml 파일 작성에 대한 질문드립니다.
0
94
2
쿠버네티스 다음 강의
0
82
2
html 적용이 되지 않음
0
71
1
ERROR [internal] load metadata for docker.io/library/openjdk:17-jdk
0
139
2
이미지가 없다고 에러가 계속 떠요
0
91
3
Deployment-service 연결 과정에서 오류..?
0
81
2
Secret이 외부 노출을 어떤 식으로 피할 수 있게 하는지
0
78
2
Secret을 활용한 환경변수 분리 강의자료 문의
0
71
2
도커 쿠버네티스 기다림 오류 문제..
0
145
2
쿠버네티스 고급편은 언제 나오나요?
0
94
1
질문있습니다.
0
76
2
pdf 자료에 섹션3 누락
0
79
3
pvc CrashLoopBackOff 문제
0
141
6
AMI 유형
0
70
2
마스터 노드 vs 워커 노드
0
125
2
aws eks --region ap-northeast-2 update-kubeconfig --name kube-practice 권한 거부
0
121
2
30000 Port로 접속이 안됩니다 ㅠㅠ
0
158
3
안녕하세요. 실습 환경 질문드립니다.
0
84
1
50강 빌드파일
0
69
2

