Skrypt powłoki do wysyłania alertu e -mail, gdy pamięć się niska

Skrypt powłoki do wysyłania alertu e -mail, gdy pamięć się niska

Potężny aspekt programów powłoki UNIX/LINUX, takich jak grzmotnąć, to ich niesamowite wsparcie dla wspólnych konstrukcji programowania, które umożliwiają podejmowanie decyzji, wykonywanie poleceń, tworzenie nowych funkcji i wiele więcej. Możesz pisać polecenia w pliku znanym jako skrypt powłoki i wykonać je zbiorowo.

Daje to niezawodny i skuteczny sposób podawania systemu. Możesz pisać skrypty do automatyzacji zadań, na przykład codziennie tworzenia kopii zapasowych, aktualizacji systemu itp.; Utwórz nowe niestandardowe polecenia/narzędzia/narzędzia i nie tylko. Możesz napisać skrypty, które pomogą Ci nadążyć za tym, co rozwija się na serwerze.

Jednym z kluczowych elementów serwera jest pamięć (Baran), ma to duży wpływ na ogólną wydajność systemu.

W tym artykule udostępnimy mały, ale użyteczny skrypt powłoki, aby wysłać wiadomość e -mail z ostrzeżeniem do jednego lub więcej administratorów systemu, jeśli pamięć serwera działa nisko.

To jest skrypt jest szczególnie przydatny do obserwowania Linux VPS (Wirtualne prywatne serwery) z niewielką ilością pamięci, powiedz o 1 GB (około 990 MB).

Konfiguracja środowiska testowego

  1. A Centos/Rhel 7 serwer produkcyjny z Mailx narzędzie zainstalowane z działającym serwerem pocztowym postfix.

Tak właśnie Alertmemory.cii Skrypt działa: Najpierw sprawdza rozmiar wolnej pamięci, a następnie określa, czy ilość wolnej pamięci jest mniejsza lub równa określonym rozmiarze (100 MB do celów tego przewodnika), używany jako znak ławki dla najmniej dopuszczalnego rozmiaru bezpłatnej pamięci.

Jeśli ten warunek jest prawdziwy, wygeneruje listę 10 najlepszych procesów zużywających pamięć RAM serwera i wyśle ​​wiadomość e -mail na określone adresy e -mail.

Notatka: Będziesz musiał wprowadzić kilka zmian w skrypcie (zwłaszcza narzędzie nadawcy poczty, użyj odpowiednich flag), aby spełnić wymagania dotyczące dystrybucji Linux.

Skrypt powłoki, aby sprawdzić pamięć serwera
#!/bin/bash #########################################################################. ######################################### #script Nazwa: AlertMemory.SH #description: Wyślij pocztę alert, gdy pamięć serwera działa nisko #Args: #Author: Aaron Kili Kisisa #Email: [e-mail chroniony] #LICENSE: GNU GPL-3 ############## #########################################################. ######################### ## ## Deklaruj zmienne poczty ##Alert statusu pamięci serwera„## wysyłanie poczty jako z =”[chroniony e -mail]„## wysyłanie poczty do =”[chroniony e -mail]„## Wyślij kopię węgla do również_to =”[chroniony e -mail]„## Otrzymuj całkowity darmowy rozmiar pamięci w megabajtach (MB) za darmo = $ (za darmo -mt | grep total | awk 'print 4') ## Sprawdź, czy bezpłatna pamięć jest mniejsza lub równa się do 100 MB Jeśli [[„$ free” -le 100 ]]; Następnie ## Pobierz najlepsze procesy zużywając pamięć systemową i zapisz w pliku tymczasowym ps -eo PID, PPID, CMD,%MEM,%CPU - -SORT = -%MEM | głowa>/tmp/top_procceses_consuming_memory.plik txt =/tmp/top_proccesses_consuming_memory.txt ## Wyślij wiadomość e -mail Jeśli pamięć systemowa działa niskie echo -e „ostrzeżenie, pamięć serwera działa nisko!\ n \ nfree pamięć: $ free mb "| mailax -a" $ plik "-s" $ temat "-r from" -c "$ do" "$ również_to exit 0 

Po utworzeniu skryptu /etc/scenariusze/alertmemory.cii, Spraw, aby był wykonywalny i symbolizja do Cron.cogodzinny.

# chmod +x/etc/scripts/alertmemory.sh # ln -s -t /etc /cron.godzinę/alertmemory.SH/etc/Scripts/AlertMemory.cii 

Oznacza to, że powyższy skrypt będzie uruchamiany co 1 godzinę, o ile serwer będzie uruchomiony.

Wskazówka: Możesz przetestować, czy działa zgodnie z przeznaczeniem, ustaw wartość znaku ławki nieco wysoko, aby łatwo wywołać wiadomość e -mail, i określić niewielki przedział około 5 minut.

Następnie sprawdzaj z wiersza poleceń za pomocą swobodnego polecenia podanego w skrypcie. Po potwierdzeniu, że działa, zdefiniuj rzeczywiste wartości, których chcesz użyć.

Poniżej znajduje się zrzut ekranu pokazujący przykładowy e -mail z alertem.

Linux Memory E -mail Alert

To wszystko! W tym artykule wyjaśniliśmy, jak używać skryptu powłoki do wysyłania czujnych e -maili do administratorów systemu w przypadku pamięci serwera (RAM), działa nisko. Możesz podzielić się wszelkimi przemyśleniami dotyczącymi tego tematu, z nami za pośrednictwem poniższego formularza opinii.