Google Cloud Server에서 서비스를 매핑하려면 어떻게 해야 하나요?

Google Cloud Server에서 서비스를 매핑하려면 어떻게 해야 하나요?

저는 우리의 애플리케이션을 더 작은 서비스로 만드는 과정에 있습니다. 백엔드 서버에 새 서비스를 추가한 다음(즉, 공개적으로 액세스할 수 없음) 웹 서버의 /etc/hosts 파일에 항목을 만듭니다. 샘플 항목

10.160.x.xx newservice.mydomain.com    

이 접근 방식은 효과적입니다. 하지만 웹 서버에서 서비스를 테스트하면 nslookup이 아닌 ping이 작동하는 것을 볼 수 있습니다. 그래서 ping newservice.mydomain.com성공한 것이 아니라 nslookup newservice.mydomain.com
왜 그럴까? nslookup도 작동하게 하려면 어떻게 해야 합니까?

답변1

nslookupDNS 서버에 요청하면 로컬 파일에 대한 지식이 없으므로 hosts그 안에 포함된 항목을 확인하지 않습니다. DNS 조회를 통해 파일에 액세스할 수 있게 하려면 hosts해당 파일에 대한 지식이 있는 DNS 서버를 사용해야 합니다(예: systemd-resolved파일을 구문 분석하도록 구성할 수 있음).

그러나 hosts각 컴퓨팅 엔진 인스턴스는 기본 Google 클라우드 DNS 서버( 169.254.169.254)를 사용하여 확인할 수 있으므로 여기서 항목을 사용하는 것은 중복된 것처럼 보입니다. 각 컴퓨팅 엔진의 이름은 [INSTANCE_NAME].[ZONE].c.[PROJECT_ID].internal(내부 DNS에 대한 자세한 내용은 여기에서 확인할 수 있습니다.), 따라서 해당 이름으로 서버에 액세스할 수 있어야 합니다.

관련 정보