CloudWatch предупреждает об использовании оперативной памяти в Amazon EC2 с использованием пользовательских метрик - использовать «--mem-used-incl-cache-buff» или нет? - PullRequest
0 голосов
/ 08 января 2020

Я использую несколько серверов Amazon Linux 2 на AWS и отслеживаю их показатели с помощью CloudWatch. Все это работает очень хорошо, за исключением одного показателя c, который я не совсем понимаю - мониторинг памяти.

В документации Amazon по настройке метрик CloudWatch указано использование "--mem used-incl-cache- опция "buff": (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/mon-scripts.html)

Если вы включите эту опцию, память, используемая в настоящее время для кэширования и буферов, будет считаться "использованной", когда метрики сообщаются для - -mem-util, --mem-used и --mem-vend.

Чтобы установить расписание cron для метрик, сообщаемых в CloudWatch, начните редактирование crontab с помощью команды crontab -e. Добавьте следующую команду, чтобы сообщать об использовании памяти и дискового пространства в CloudWatch каждые пять минут:

*/5 * * * * ~/aws-scripts-mon/mon-put-instance-data.pl --mem-used-incl-cache-buff --mem-util --disk-space-util --disk-path=/ --from-cron

Эта команда отлично сработала для меня. Проблема заключается в настройке оповещений - когда мне следует начать беспокоиться об использовании памяти?

Одна из моих машин сообщает об использовании памяти 79% с использованием «mem-used-incl-cache-buff» и только 18% при отключении этой команды.

Я пытаюсь настроить оповещение на случай, если меня беспокоит использование памяти - 90% это использует "mem-used-incl-cache-buff"? Больше? Меньше? Разве я не должен использовать "mem-used-incl-cache-buff" при создании этих предупреждений?

Я изучал, как решить эту проблему, и нашел этот веб-сайт, который дает некоторое представление: https://www.linuxatemyram.com/

Linux занимает неиспользуемую память для кэширования диска. Это выглядит так, как будто у вас мало памяти, но это не так! Все в порядке!

Я могу понять это, но когда я должен быть обеспокоен?

Предупреждающие признаки подлинной ситуации с нехваткой памяти, на которую вы, возможно, захотите разобраться:

  • доступная память (или «свободная + буферы / кэш») близка к нулю

  • используемый своп увеличивает или колеблется

  • dmesg | grep oom-killer показывает OutOfMemory-killer на работе

Первая точка, по-видимому, указывает на то, что когда "mem-used-incl-cache-buff" достигает 100%, Я должен быть обеспокоен. Означает ли это, что оповещение должно быть установлено на 95%, 97% или 99%?

Спасибо за любую помощь или руководство.

...