Estou no processo de transformar nosso aplicativo em serviços menores. Eu adiciono os novos serviços em um servidor back-end (ou seja, não acessível ao público) e então faço entradas no arquivo /etc/hosts de nossos servidores web. Entrada de amostra
10.160.x.xx newservice.mydomain.com
Essa abordagem funciona. Mas se eu testar o serviço do servidor web, vejo que o ping funciona, não o nslookup. Então ping newservice.mydomain.com
é bem sucedido, não nslookup newservice.mydomain.com
Por que é assim? Como posso fazer o nslookup também funcionar?
Responder1
nslookup
pergunta aos servidores DNS, e eles não têm conhecimento do seu hosts
arquivo local, portanto não resolverão as entradas contidas nele. Se você deseja que seu hosts
arquivo seja acessível por meio de pesquisas de DNS, você deve usar um servidor DNS que tenha conhecimento sobre ele (por exemplo, systemd-resolved
pode ser configurado para analisar o arquivo).
No entanto, usar uma hosts
entrada parece redundante aqui, pois cada instância do mecanismo de computação pode ser resolvida usando o servidor DNS padrão da nuvem do Google ( 169.254.169.254
). O nome de cada mecanismo de computação é [INSTANCE_NAME].[ZONE].c.[PROJECT_ID].internal
(mais informações sobre o DNS interno estão disponíveis aqui), então você poderá acessar seus servidores com esse nome.