Записки админа
12.6K subscribers
631 photos
28 videos
221 files
2.39K links
Пишу о Linux и администрировании серверов.

Связаться с автором: @servers

Заметки в браузере: https://sysadmin.pm/

Буст канала: https://tttttt.me/sysadminnotes?boost
Download Telegram
Привет всем недавно подписавшимся. Добро пожаловать на огонёк. У нас тут есть вкусный чаёк, печеньки, и разные полезности для людей, работаютщих с Linux на серверах. 🤓

Вот сегодня, например, смотрим на earlyoom - инструмент для убийства процессов, потребляющих больше всего памяти в системе. И нет, это не замена oom killer'а, это отдельная утилита, которая может оказаться полезной в работе.

📗 Открыть на сайте

#будничное #earlyoom #oom
🎛 oomd.

А ещё, вот на что рекомендую обратить внимание (на случай если как и я, пропустили эту новость):

Facebook открыл код своего обработчика нехватки памяти в системе.

ℹ️ Чем удобен и хорош oomd - у нас появляется возможность описать (.json конфигом) логику работы обработчика, мы можем указать ему какие приложения можно завершать, при каких условиях это делать, какие приложения завершать нельзя и т. д. Сами процессы, описывая конфиг, мы можем группировать как нам будет удобно, и применять к группам определённые правила.

Работает oomd в пространстве пользователя, что на синтетических тестах показало куда бОльшую эффективность чем OOM я ядре. Инструмент уже активно используется в самом Facebook и при этом, уже отлично показал себя в работе под серьёзными нагрузками.

🔹 На русском языке информацию можно изучить, например, на OpenNET.

🔸 Github проекта.

Будем смотреть на oomd в работе. На первый взгляд, выглядит очень интересно, особенно если предложенную PSI (Pressure Stall Information) подсистему таки примут в ядро.

P. S. Ранее я уже писал о куда более простом аналоге обработчика - earlyoom. Штука весьма занятная, хотя oomd конечно, даёт куда больше возможностей, если пытаться их сравнить. 🤓

#oom
🎛 А ещё, тут обнаружилась утилита r245, которая при исчерпании доступной памяти, может убить процесс из заранее созданного списка. Максимально просто и "дубово" я бы сказал, но для некоторых случаев может оказаться полезным.

# pip install r245

📗 Если же нужно более гибкое решение, то стоит обратить внимание либо на earlyoom, о котором я как-то писал заметку, либо на oomd от Facebook.

#oom #будничное
⚙️ Тут ещё один OOM инструмент появился - https://gitlab.freedesktop.org/hadess/low-memory-monitor/ Мониторит память, затем прибивает процессы в юзерспейсе, и если этого оказывается мало, только тогда запускает ядерный OOM.

#oom
8️⃣ Тут ребята из Capsule8 выпустили занятный разбор CVE-2019-14891 в cri-o. Это когда все процессы pod'а, работают в рамках одной memory cgroup, и при определённых условиях могут быть убиты OOM, чем потенциальный атакующий и может воспользоваться.

#crio #security #oom
🛠 bustd - и вот тут ещё один OOM для вас, если по какой-то причине earlyoom\oomd не подойдёт для использования.

Github: https://github.com/vrmiguel/bustd

#oom #system
🗜 WTH! Who killed my pod - Whodunit? История о том, как автор обнаружил, что OOM убивает его поды и решил разобраться, почему это происходит. #oom #kubernetes #напочитать