хостера. Наш робот периодами к ним
ходит и собирают с них какую-то инфу. Периодически робот сталкивается с сетевыми ошибками.
Владельцы этих сайтов заинтересованы, чтобы наш робот к ним ходил и не было таких проблем.
Был некоторый пинг-понг между нами и техподдержкой того хостера о том, на чьей же стороне проблема.
В общем мне передали задачу. Было бы довольно просто, если бы проблема воспроизводилась постоянно, но
она очень плавающая (mtr вроде б могла немного прояснить ситуацию).
Т.к. у нас графитовый стек для приема метрик, я настроил плагин ping у collectd. Получаю метрики по
времени отклика и drop rate пингов.
Робот находится в ДЦ одного хостера N. У данного хостера 2 независимых канала, робот ходит через первый.
Получение метрик настроил по следующему принципу: пару серверов (на одном из них работает робот), выходящих в сеть через 1-ый канал ДЦ
хостера N, один сервер - через 2-ой, еще один сервер - находится в хетцнере.
После некоторого наблюдения видно, что drop rate с наших серверов, находящихся в ДЦ хостера N, периодами достигает 20%.
А у сервера, находящегося в hz, потерь практически нет (ну или иногда бывает в пару %).
Хотя наш хостер N и заявляет, что у него 2 совсем независимых канала, но пока метрикам подтверждается, что
проблема есть.
Но теперь встает вопрос - как более полно понять где именно проблема?
Видится, что надо нечто mtr-а, которая будет запускаться периодами и показывать потери/время отклика по каждому
из хопов ведущему к проблемному сайту. Как вообще такие метрики получить?
Понятно, что mtr не является сильно точной методикой проверки, но есть метод лучше?
Смысла мерить дропы у хопов мало. Потому что отвечает тебе контрол плейн, а трафик форвардит датаплейн.
Обсуждают сегодня