Лига сисадминов
13K subscribers
365 photos
16 videos
15 files
1.97K links
Статьи, переводы статей, заметки, и юмор на тему системного администрирования.

Написать администратору: @s_league_admin_bot

КНД: https://clck.ru/3Fy4kQ
Download Telegram
Как ядро Linux управляет памятью приложений

Если вы когда-нибудь ловили себя на мысли - а что, собственно, творится между вызовом malloc() и настоящим железом в RAM? - то вот спойлер: в Linux там целая вселенная, про которую в обычной жизни как-то не вспоминаешь.

В сегодняшней статье рассмотрим всё по порядку: как ядро раздаёт виртуальную память процессам, откуда внезапно вылезают page fault’ы, почему overcommit вообще существует (и почему из-за него OOM killer иногда приходит в неожиданные моменты), плюс какое место в этой истории занимают huge pages.

https://telegra.ph/Kak-yadro-Linux-upravlyaet-pamyatyu-prilozhenij-11-21

#ит_статьи #linux #kernel #memory #oomkiller #overcommit #hugepages
👍14
Заметка о том, как на самом деле работает лимит памяти в Kubernetes: cgroups v2, overcommit и суровый OOM Killer

В мире Kubernetes принято считать, что requests и limits - это надежные границы, которые полностью изолируют приложения. По факту же, когда память на ноде заканчивается, абстракции кубера отходят на второй план, и в игру вступают механизмы ядра Linux.

Решил разобраться в деталях и провел серию тестов в песочнице (ALT Linux 11, Minikube на Proxmox). Ниже - что из этого получилось.

Важно сразу разделить три разных сценария:
- memcg OOM - контейнер упёрся в собственный memory limit.
- kubelet eviction - kubelet заметил давление по ресурсам на ноде и начал выселять pod’ы.
- global OOM - памяти на ноде не хватило быстрее, чем kubelet успел что-либо сделать, и сработал kernel OOM Killer.

Если смешать эти три механизма, легко случайно сделать неправильные выводы.

https://telegra.ph/Nebolshaya-zametka-o-tom-kak-na-samom-dele-rabotaet-limit-pamyati-v-Kubernetes-cgroups-v2-overcommit-i-surovyj-OOM-Killer-06-15

#ит_статьи #devops #kubernetes #linux #minukube #alt #cgroups #OOMKiller #overcommit
9👍6🔥1