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

После перезагрузки на сервере внезапно возникло большое количество ЦП softirq

Виртуальный сервер с ОЗУ 48 ГБ, поддерживающий около 25 тыс. TCP-соединений (устройства, выполняющие вход в систему для создания туннеля SSH), исчерпал оперативную память и начал менять местами, становился медленным и т. Д. Мы обновились и перезагрузились. Даже после того, как 25k соединений были восстановлены и начальный шторм DDOS был устранен, сервер теперь показал огромное количество использования softtirq. Как мне найти причину?

Здесь вы можете увидеть события:

Поразительно, что софтирка раньше было не много. Теперь 8 потоков ядра занимают около 60% ЦП (ksoftirqd потоки).

Глядя на графики Мунина, я вижу прерывания PCI-MSI 49153-edge virtio0-input.0 сильно увеличилось (обратите внимание на шкалу log y):

Объем сетевого трафика, с которым приходится иметь дело машине, практически не изменился.

Я написал быстрый скрипт на Python, который показывает прерывания в секунду, каждую секунду, с /proc/interrupts из PCI-MSI 49153-edge virtio0-input.0, и в основном это около 50-100 в секунду, но время от времени случаются всплески от 5000 до 10000.

Потому что в процессе обновления панель управления хостера ВМ объявила, что необходимо перенести ВМ на другой сервер. Я предположил, что на этом сервере другой контроллер Ethernet, другой контроллер прерываний с другой эмуляцией или что-то еще, но они даже перенесли виртуальную машину обратно, и нет никакой разницы.

Другое отличие состоит в том, что виртуальная машина была vmlinuz-4.15.0-45-generic к /boot/vmlinuz-4.15.0-72-generic. Я могу представить, что со всеми патчами для процессоров Intel в последнее время что-то пробралось.

Большой вопрос в том, как мне добраться до первопричины или получить дополнительную информацию, откуда берутся эти прерывания? Перезагрузка сервера до старого ядра возможна, но нежелательна.

Оказалось, что кто-то установил поверх, на котором есть сервис systemd, который собирает информацию о процессах учета. Снятие его исправило.