Docker Swarm DNS потерял IP-адрес

Системная информация:

  • Версия Docker Engine: 17.06.2-ee-6

Моя команда и я наблюдаем за странным поведением в нашем докере недавно был кластер, где REST-запрос к сервису (здесь: myservice) случайно завершился неудачей с отклоненным соединением.

Мы удалили и повторно развернули myservice в целях устранения неполадок. Внезапно число запросов на отказ при отказе соединения увеличилось , хотя все контейнеры были только недавно запущены и работоспособны.

Итак, мы запустили host myservice из контейнера в той же сети и получили что-то вроде этого:

myservice has address 172.10.13.241
myservice has address 172.10.0.81
Host myservice not found: 3(NXDOMAIN)

Результат показывает два IP-адреса и при тестировании IP-адресов напрямую (используя curl для пример) адрес 172.10.13.241 работает, в то время как адрес 172.10.0.81 всегда дает сбой при отказе соединения - объясняя, почему мы получили отказанное соединение для 50% запросов.

Затем мы снова удалили myservice и запустили host myservice, как только все контейнеры остановились, чтобы найти следующий результат:

myservice has address 172.10.0.81
Host myservice not found: 3(NXDOMAIN)

Сломанный IP-адрес все еще зарегистрирован, хотя служба была удалена.

Мы также убедились, что нас не обмануло DNS-кэширование, перезапустив контейнер, из которого мы выполнили команду, но результат остался прежним.


Вопросы:

  • Как это может произойти?
  • Можно ли / как удалить потерянное сопоставление DNS из сети Docker?
  • Что мы можем сделать, чтобы этого не случилось?
0
задан 7 January 2020 в 14:25
0 ответов

Теги

Похожие вопросы