Вопрос или проблема
Я сталкиваюсь с проблемой на своем сервере Ubuntu на экземпляре DigitalOcean, где процесс kauditd0 потребляет 100% CPU (такого никогда не случалось ранее). Я пробовал несколько методов, чтобы остановить его, но он продолжает появляться. Вот детальный обзор ситуации:
вставьте описание изображения сюда
Фон:
У меня есть API NestJS, развернутый на экземпляре Ubuntu. Процесс kauditd0 использует большое количество CPU, из-за чего сервер работает медленно. Я пытался остановить kauditd0 вручную через htop, и это срабатывает, но он снова запускается, используя 100% CPU.
вставьте описание изображения сюда
Ответ или решение
Проблема с использованием CPU 100% в DigitalOcean Droplet: kauditd0
Проблема с 100% использованием процессора состоянием kauditd0 на вашем сервере Ubuntu в среде DigitalOcean может вызывать серьезные затруднения в работе вашего приложения на NestJS. Давайте разберем, что такое kauditd0, причины его высокой загрузки и возможные шаги для решения этой проблемы.
Понимание kauditd0
kauditd0 — это демон ядра, отвечающий за сбор аудиторских событий в операционной системе Linux. Он регистрирует различные действия, связанные с безопасностью, что позволяет отслеживать пользователи и процессы. При наличии неправильной конфигурации или аномальных охватов аудита этот процесс может поднимать нагрузку до максимума, что и происходит в вашем случае.
Потенциальные причины высокой загрузки CPU
-
Ошибки конфигурации аудита: Возможно, у вас слишком много включенных правил аудита, что заставляет kauditd0 работать чрезмерно интенсивно.
-
Недостаток ресурсов: Если ваша Droplet имеет ограниченные ресурсы, то экземпляры kauditd0 могут затрагивать производительность сервера.
-
Атака или вредоносное ПО: Иногда высокие нагрузки могут быть следствием атак или наличия вирусов, которые генерируют большое количество аудиторских записей.
-
Системные обновления: Если недавние обновления системы привели к изменению в режиме работы kauditd0, это также может быть причиной его неэффективной работы.
Рекомендации по устранению проблемы
-
Проверка конфигурации аудита:
- Запустите команду
auditctl -l
, чтобы просмотреть текущие правила аудита. - Убедитесь, что нет избыточных правил, особенно тех, которые фиксируют частые события. Удалите или измените ненужные правила.
- Запустите команду
-
Мониторинг процессов:
- Используйте утилиты, такие как
htop
илиtop
, чтобы увидеть, какие процессы генерируют много аудита. Это поможет вам понять, что именно вызывает такую нагрузку.
- Используйте утилиты, такие как
-
Ограничьте аудит:
- Попробуйте временно отключить аудит с помощью команды
sudo service auditd stop
. Посмотрите, изменится ли нагрузка на CPU. Если нагрузка снизилась, возможно, потребуется пересмотреть конфигурацию или вовсе отключить аудит, если это допустимо по безопасности.
- Попробуйте временно отключить аудит с помощью команды
-
Логиkauditd:
- Обратите внимание на логи, связанные с kauditd0. Часто они могут дать подсказки о том, что происходит в системе. Просмотрите
/var/log/audit/audit.log
, чтобы выяснить причины возникновения высокой загрузки.
- Обратите внимание на логи, связанные с kauditd0. Часто они могут дать подсказки о том, что происходит в системе. Просмотрите
-
Обновления системы:
- Проверьте все недавние обновления и версию ядра. При необходимости выполните даунгрейд или восстановление версии системы до стабильной.
-
Перезапуск сервера:
- Если проблема сохраняется, перезагрузка Droplet может помочь восстановить нормальную работу системы, однако это временное решение.
-
Обратитесь в поддержку DigitalOcean:
- Если все указанные меры не помогли, рекомендуется обратиться в службу поддержки DigitalOcean для получения дополнительной помощи и рекомендаций.
Заключение
Проблема с высоким использованием CPU процессом kauditd0 может существенно повлиять на рабочие процессы вашего приложения на NestJS. Убедитесь, что вы тщательно проверяете конфигурацию аудита и мониторите процессы, чтобы установленное решение соответствовало вашим критериям. Следуя вышеупомянутым рекомендациям, вы сможете минимизировать нагрузку на сервер и обеспечить его стабильную работу.