Назад | Перейти на главную страницу

Как я могу сопоставить службу в облачных серверах Google?

Я работаю над преобразованием нашего приложения в более мелкие службы. Я добавляю новые службы на внутренний сервер (т. Е. Недоступные для всех), а затем делаю записи в файле / etc / hosts наших веб-серверов. Образец записи

10.160.x.xx newservice.mydomain.com    

Такой подход работает. Но если я тестирую службу с веб-сервера, я вижу, что работает ping, а не nslookup. Так ping newservice.mydomain.com успешно, а не nslookup newservice.mydomain.com
Почему это так? Как сделать так, чтобы nslookup тоже работал?

nslookup спрашивает DNS-серверы, и они ничего не знают о вас hosts файл, поэтому они не будут разрешать содержащиеся в нем записи. Если ты хочешь hosts чтобы файл был доступен через поиск DNS, вам необходимо использовать DNS-сервер, который знает о нем (например, systemd-resolved можно настроить на анализ файла).

Однако, используя hosts запись здесь кажется избыточной, поскольку каждый экземпляр вычислительного движка может быть разрешен с помощью облачного DNS-сервера Google по умолчанию (169.254.169.254). Имя каждой вычислительной машины [INSTANCE_NAME].[ZONE].c.[PROJECT_ID].internal (подробнее о внутреннем DNS можно прочитать здесь), поэтому вы должны иметь доступ к своим серверам под этим именем.