У меня есть сервер Centos 6.5, на котором возникают проблемы со случайными таймаутами сети. Это случается 3-4 раза в день (я не мог определить конкретную минуту или час).
Когда это происходит, это влияет почти на все приложения на этом сервере, но длится всего несколько секунд. Пример:
1) Приложение, которое отправляет HTTP-запрос другому приложению на тот же сервер (но на другом IP) получает тайм-аут.
2) Приложение, которое подключается к почтовому серверу (размещенному в той же сети, но на другом сервере), также получает тайм-аут.
Что мне делать, чтобы выяснить природу этих таймаутов?
Я уже проверил основы, такие как сообщения в / var / log / messages, но не смог найти ничего, что могло бы указывать на причину этой проблемы.
И поскольку это происходит случайно, трудно быть уверенным, что я буду в сеансе SSH, когда это произойдет.
Я согласен с Иэном, что для отладки необходим некоторый мониторинг. Поскольку проблема возникает между двумя IP-адресами на одном сервере, основная причина может быть связана или не связана с сетью. Возможно, что в сети происходит что-то необычное, из-за чего сетевая карта «спотыкается». Также возможно, что основная причина кроется в сервере.
Чтобы увидеть, является ли сеть фактором, рассмотрите возможность запуска анализатора пакетов на сервере. Поскольку проблема носит временный характер, выполняйте постоянный мониторинг с опцией кольцевого буфера. Это можно сделать двумя способами:
а. Запустите Wireshark, оставаясь авторизованным на консоли сервера. Параметр кольцевого буфера находится в Capture ==> Параметры
б. Подключитесь к серверу по SSH и используйте инструмент командной строки, такой как screen или tmux, для создания сеанса, который сохраняется после выхода из системы. Затем в рамках постоянного сеанса используйте Tshark с флагом кольцевого буфера -b.
На этом этапе я предлагаю не указывать фильтр захвата. Вместо этого захватите все пакеты, потому что основная причина может быть в чем угодно. Сниффер создаст набор файлов, содержащих перехваченные пакеты. Уловка будет заключаться в нахождении интересующих пакетов в этих файлах захвата. Чтобы облегчить поиск, убедитесь, что часы сервера точны, а затем как можно точнее отметьте время, когда наблюдается симптом.
Для анализа файлов захвата, вероятно, проще всего использовать графический интерфейс Wireshark. Также может работать Tshark с флагом -r и передача результатов в grep. Используйте отметку времени, чтобы изолировать пакеты в интересующее время.