Я смотрю на хост Docker Swarm, который является единственным хостом в нашем кластере Docker Swarm (нет, не рекомендуется).
Из-за Проблема с DNS в Moby мы отправили внутриконтейнерный трафик через внешний IP-адрес хоста (192.168.1.50) или через docker_gwbridge
(172.18.0.1). Это работает, поскольку эти запросы будут DNAT привязаны к 172.18.0.2 (который выходит на контейнер Docker, обрабатывающий функции VIP / балансировки нагрузки)
Мы случайно видим, что продолжительность запроса между контейнером nginx и контейнером memcached (двумя разными контейнерами) занимает 1 секунду или больше.
Мы видим это, запустив mc_conn_tester.pl внутри контейнера nginx.
Когда трафик между двумя контейнерами проходит через 192.168.1.50, mc_conn_tester.pl сообщает о большом количестве 1-секундных запросов, когда мы также используем 192.168.1.50 в тесте. Если вместо этого мы запустим mc_conn_tester.pl против 172.18.0.1, мы не увидим никаких 1-секундных запросов.
Когда трафик между двумя контейнерами проходит через 172.18.0.1, mc_conn_tester.pl сообщает о lof одного 1-секундного запроса, когда мы используем 172.180.1 в тесте. Если мы запустим mc_conn_tester.pl вместо 192.168.1.50, мы не увидим никаких 1-секундных запросов.
Что может вызвать такое поведение и дать задержку в 1 секунду (и больше), и как мы можем отладить это дальше?
Последующие действия https://github.com/moby/moby/issues/36032