Інструменти контролю та моніторингу EC2 не можуть надати вам ці дані, оскільки файлова система ваших примірників доступна ТІЛЬКИ самим екземпляром . Як основна архітектура обладнання, так і модель безпеки вимагають цього обмеження. Подумайте, як це було б погано, якби програмне забезпечення поза вашим комп’ютером могло б тикатися на файли на ваших жорстких дисках!
Ось непростий спосіб змусити cron (встановлений у більшості систем у будь-якому випадку) періодично перевіряти ці дані. Ваші системи в будь-якому разі повинні мати мінімальні вимоги для обробки повідомлень про кореневу пошту. Я рекомендую мати принаймні матеріалістичний агент вихідної пошти та налаштувати псевдонім root або адміністратора для передачі вам у всіх системах, якими ви керуєте. Багато програм, включаючи cron
очікують такої конфігурації.
Ви можете додати це у свій crontab:
0 0 * * * test $(df / | grep ^/ | awk '{print $4}') -lt 1048576 && echo "Warning: Free disk space is less than 1G on /"
Щоб зламати це, це
- Створює роботу, яка руниться раз на день о 00:00.
- Cron автоматично обробляє електронну пошту системному адміністратору з виведенням завдань. Це завдання дає результат лише в тому випадку, якщо є помилка або якщо місце на диску мало
- У
test
команді встановлює просте порівняння оболонки з використанням -lt
менш ніж оператора і значенням equivolent фіксованого 1 Гб вільного простору.
df
Команда перевіряє вільний простір на /
файлову систему
grep
Отримує вас тільки рядок виводу вам потрібно замість заголовків df
включають в себе.
awk
Прибуде тільки четвертий стовпець у висновку, вільний простір номер.
&&
Каже , щоб запустити наступну команду , тільки якщо перша одна ( test x -lt y
) повертає істину.