Обнаружение службы Amazon не работает должным образом - PullRequest
0 голосов
/ 28 марта 2019

У меня есть 2 службы, развернутые в ECS в одном VPC и одной подсети. ServiceB зависит от ServiceA и пытается подключиться к нему через порт 4000. Порт отображается правильно в образе Docker, и ServiceA запускается нормально и привязывается к порту 4000, но по каким-то причинам в журналах он показывает таинственный IP 169.254.A.B, к которому он привязывается, также если я запускаю ifconfig из контейнера, который он показывает Мне единственный IP-адрес, назначенный контейнеру, является 169.254.A.B, однако задаче назначен частный IP-адрес в пределах диапазона подсети - 172.31.C.D, а общедоступному IP-адресу, назначенному ему, является 52.14.X.Y. Если я запускаю ServiceB локально и указываю на 52.14.X.Y:4000, он подключается. То же самое происходит, если я запускаю его с этой конечной точкой внутри ECS, что ожидается. Теперь я хочу избавиться от IP-адресов и использовать Service Discovery, и я настроил ServiceA для имени servicea.myproject, и я могу видеть запись, созданную на маршруте 53 для этой зоны и этого VPC, но ServiceB не удается разрешить ее, если Я указываю на это как servicea.myproject:4000.

Мои вопросы: откуда взялся этот загадочный IP 169.254.A.B и почему он работает как «мост» к публичной сети? Почему Service Discovery работает не так, как я ожидаю?

...