작성
·
442
0
실습을 그대로 따라했는데 마지막에 curl external-data를 해도 커넥션이 되지 않습니다.
그 이유를 혹시 아실까요?
답변 1
1
안녕하세요
우선 결론부터 얘기하자면, 현재 호스트가 아마도 MacOS이실꺼고, 이 경우 새롭게 만들어진 Endpoint
의 경우 10번대 IP를 가지게 됩니다. 그리고 해당 IP는 호스트 시스템을 거쳐 외부로 보내서 찾으려고 시도합니다. 해당 부분은 Windows10에서는 다르게 동작합니다. (이에 대해서는 [요약 설명]을 더 참조하시면 좋으실 것 같습니다.)
즉 현재의 문제는 CoreDNS에서 IP를 리턴하지 못하는 이유가 아니라 리턴된 Cluster-IP에 대해서 경로를 명확하게 찾지 못하는 부분입니다.
자세한 내용은 아래의 내용을 참고하시면 될 것 같고...영상과 동일하게 실습하고자 하신다면, 다음의 방법으로 유사하게 진행 가능할 것 같습니다.
Windows 시스템을 사용해서 영상과 같이 진행
MacOS만을 사용해야 한다면...클러스터 내부의 Pod 에서 진행하는게 아니라 마스터 노드에서
external-node의 Cluster-IP로 curl
실행
[요약 설명]
Windows 시스템의 경우 10.nnn.nnn.nnn의 IP 영역을 외부로 돌려서 동작하지 않습니다.
MacOS의 경우 Vagrant NAT interface를 통해서 들어온 10.nnn.nnn.nnn의 IP를 외부에서 찾습니다.
그러한 이유로 Cluster IP 수준의 내부에서 Windows는 찾을 수 있고, MacOS의 경우에는 Cluster IP 수준이 아닌 노드 수준에서 찾을 수 있는 것입니다. (이건 암만 봐도 복잡하실 수도 있는데, 그게 정상입니다 -_-;;;)
더 세부적인 각각의 내용은 아래의 그림을 참조하시기 바랍니다.
[#1 Windows]
[#2 MacOS]
IP관련 정보: https://kr.ntunhs.net/IPInfo/KR/119/196.htm