Использование Consul для регистрации сервисов, работающих в режиме docker swarm, меня немного смущает.
По умолчанию эти сервисы регистрируются под локальным IP-адресом их сети докера (например, 5.0.xx) в Консуле.Это делает их доступными для других служб, работающих в той же оверлейной сети, но при этом он не использует внутренний DNS докера.
Example :
node-00 toto-service-0d4a3 : 5.0.0.3:20011
node-01 tutu-service-0cfe5 : 5.0.0.14:60011
, если пачка звонит toto после того, как Consul обнаружит ее, она отправит данные на 5.0.0.3:20011.
Кроме того, «toto» может вызываться из внешнего механизма докера ив этом случае обнаружение службы Consul бесполезно.
Какова лучшая практика регистрации служб роя в Consul?
Я знаю, что могу использовать Traefik для предоставления службы под определенным именемкак toto.domain.my, но в этом случае внешние службы не могут использовать Consul для обнаружения «toto».Я думаю, что Traefik более полезен для предоставления услуги в Интернете через фактическое доменное имя.