Monit moduły obciążenia cpu

Cytat z gielo data 2024-10-18, 17:07Udostępniam dwa moduły dla systemu monitorowania monit, o którym pisałem w artykule Monitorowanie serwera www.
Pierwszy sprawdza obciążenie procesora i po przekroczeniu zadanego obciążenia np. 20%, wysyła na maila stosowny komunikat o zdarzeniu i jaki proces za to odpowiada.
Drugi moduł sprawdza obciążenie każdego z rdzeni cpu i jeżeli wszystkie przekraczają ustalony limit np. 15% wysyłany jest odpowiedni komunikat do administratora.
Do czego można użyć niniejszych modułów Monit ?
Pierwszy moduł można użyć np. do namierzenia problematycznych procesów. Zdarza się, że jakiś proces jak np. MySQL, czy ClamAV w losowych porach powoduje drastyczny wzrost obciążenia, by po kilku minutach wszystko wróciło do normy. W takim przypadku możemy szybko zareagować na dany problem np. optymalizując swoją bazę danych.
Drugi moduł może się sprawdzić np. do wykrywania ataków DoS/DDoS, czy nadmiernego skanowania naszych stron np. testami AB. Jeśli obciążenie poszczególnych procesów np. dla PHP-FPM wzrośnie ponad miarę, to także powinniśmy otrzymać stosowny komunikat. Czasem także w okresie świąt obciążenie naszych stron potrafi wzrosnąć kilkukrotnie, co przy odpowiednim ustawieniu dla modułu powinno zaowocować konkretnym komunikatem.
Poniżej linki do modułów skompilowanych dla Raspberry Pi5 oraz kod źródłowy do samodzielnej kompilacji.
Żeby ustawić własne limity obciążenia, należy zmodyfikować odpowiednią opcję w pliku źródłowym modułu i samemu go skompilować. Jak wygląda polecenie do kompilacji zamieściłem w pliku źródłowym danego modułu.
Check Load CPU
Skompilowany moduł dla Raspberry Pi5
Check Load Multi CPU
Skompilowany moduł dla Raspberry Pi5
Wpisy jakie należy dodać do pliku konfiguracyjnego monitrc
check program load_check_cpu with path "/etc/monit/customscripts/check_load_cpu"
every 2 cycles
if status != 0 then alertcheck program load_check_multi_cpu with path "/etc/monit/customscripts/check_load_multi_cpu"
every 2 cycles
if status != 0 then alert
Udostępniam dwa moduły dla systemu monitorowania monit, o którym pisałem w artykule Monitorowanie serwera www.
Pierwszy sprawdza obciążenie procesora i po przekroczeniu zadanego obciążenia np. 20%, wysyła na maila stosowny komunikat o zdarzeniu i jaki proces za to odpowiada.
Drugi moduł sprawdza obciążenie każdego z rdzeni cpu i jeżeli wszystkie przekraczają ustalony limit np. 15% wysyłany jest odpowiedni komunikat do administratora.
Do czego można użyć niniejszych modułów Monit ?
Pierwszy moduł można użyć np. do namierzenia problematycznych procesów. Zdarza się, że jakiś proces jak np. MySQL, czy ClamAV w losowych porach powoduje drastyczny wzrost obciążenia, by po kilku minutach wszystko wróciło do normy. W takim przypadku możemy szybko zareagować na dany problem np. optymalizując swoją bazę danych.
Drugi moduł może się sprawdzić np. do wykrywania ataków DoS/DDoS, czy nadmiernego skanowania naszych stron np. testami AB. Jeśli obciążenie poszczególnych procesów np. dla PHP-FPM wzrośnie ponad miarę, to także powinniśmy otrzymać stosowny komunikat. Czasem także w okresie świąt obciążenie naszych stron potrafi wzrosnąć kilkukrotnie, co przy odpowiednim ustawieniu dla modułu powinno zaowocować konkretnym komunikatem.
Poniżej linki do modułów skompilowanych dla Raspberry Pi5 oraz kod źródłowy do samodzielnej kompilacji.
Żeby ustawić własne limity obciążenia, należy zmodyfikować odpowiednią opcję w pliku źródłowym modułu i samemu go skompilować. Jak wygląda polecenie do kompilacji zamieściłem w pliku źródłowym danego modułu.
Check Load CPU
Skompilowany moduł dla Raspberry Pi5
Check Load Multi CPU
Skompilowany moduł dla Raspberry Pi5
Wpisy jakie należy dodać do pliku konfiguracyjnego monitrc
check program load_check_cpu with path "/etc/monit/customscripts/check_load_cpu"
every 2 cycles
if status != 0 then alert
check program load_check_multi_cpu with path "/etc/monit/customscripts/check_load_multi_cpu"
every 2 cycles
if status != 0 then alert