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

Потерянный IP-адрес Docker Swarm DNS

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


Моя команда и я недавно наблюдали странное поведение в нашем кластере Docker, когда 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, перезапустив контейнер, из которого мы запускали команду, но результат остался прежним.


Вопросы: