- AWS NLB - Istio ingress - RMQ 3.12.2 (аналогично в 3.12.1). По какой-то причине, раз в 10 минут (иногда через минуту, иногда через 8-9 и т.п.) происходит такое:
2023-07-23 22:17:40.767410+00:00 [error] <0.3329.0> closing AMQP connection <0.3329.0> (10.131.2.7:35368 -> 10.129.2.25:5672 - node2-RemotePhysiologicMonitoring/Consumer):
2023-07-23 22:17:40.767410+00:00 [error] <0.3329.0> missed heartbeats from client, timeout: 10s
и коннекшн закрывается. Причём я в wireshark смотрю - сервис прилежно шлёт heartbeat'ы, сервер отвечает. Такое впечатление, что коннекшен почему-то закрывает RMQ. Со стороны istio тоже ничего подозрительного - штатно открывает/закрывает TCP...
Может есть какие идеи? Как найти причину?
Вы только со стороны клиента трафик смотрите? Возможно хербиты у вас только до балансера ходят а дальше грусть
валидно, но остальной трафик ходит без проблем в это же время - сообщения могу паблишить, консьюмер их получает... хартбиты какие-то особенные в этом смысле?
Погодите, если паблишите/консьюмите - что за соединение разваливается?
Connection которое. Его .net либа поднимает сразу же после разрыва назад.
Вы в одном соединении и паблишите и консьюмите?
Да (сделал тестовую прогу для этого)
Так не надо. Отдельное соединение, канал на каждый процесс паблишинга/консьюминга нужно
Пробовал только паблишить - эффект тот же... Та да, я тоже думаю, что дело в промежуточных балансировщиках, но пока не могу понять, где и что же не так. У меня там envoy (не хапрокся), попробую keepalive покрутить ему...
Fixed. Проблема была на стороне istio, а именно того, как прописаны ингресы - неправильный конфиг - неправильный селектор у сервисов, трафик не туда ходил.
Обсуждают сегодня