Amplify — monitorowanie NGINX stało się proste
Nginx amplify to zbiór przydatnych narzędzi do wszechstronnego monitorowania serwera WWW Nginx o otwartym kodzie źródłowym i NGINX Plus. Dzięki NGINX Amplify możesz monitorować wydajność, śledzić systemy z uruchomionym Nginx oraz umożliwia praktyczne badanie i naprawianie problemów związanych z uruchamianiem i skalowaniem aplikacji internetowych.
Można go używać do wizualizacji i określania wąskich gardeł w wydajności serwera WWW Nginx, przeciążonych serwerów lub potencjalnych ataków DDoS; ulepszaj i optymalizuj wydajność Nginx dzięki inteligentnym poradom i rekomendacjom.
Ponadto może powiadamiać Cię, gdy coś jest nie tak z konfiguracją dowolnej aplikacji, a także służy jako narzędzie do planowania pojemności i wydajności aplikacji internetowych.
Architektura Nginx amplify jest zbudowana na 3 kluczowych komponentach, które opisano poniżej:
- NGINX Amplify Backend – podstawowy komponent systemu, wdrażany jako SaaS (Software as a Service). Zawiera skalowalną platformę gromadzenia metryk, bazę danych, silnik analityczny i podstawowy interfejs API.
- NGINX Amplify Agent – aplikacja w języku Python, którą należy zainstalować i uruchomić na monitorowanych systemach. Cała komunikacja między agentem a zapleczem SaaS odbywa się bezpiecznie za pośrednictwem protokołu SSL/TLS; cały ruch jest zawsze inicjowany przez agenta.
- NGINX Amplify Web UI – interfejs użytkownika kompatybilny ze wszystkimi głównymi przeglądarkami i jest dostępny wyłącznie poprzez TLS/SSL.
Internetowy interfejs użytkownika wyświetla wykresy wskaźników Nginx i systemu operacyjnego, pozwala na utworzenie zdefiniowanego przez użytkownika dashboardu, oferuje statyczny analizator do ulepszania konfiguracji Nginx oraz system alertów z automatycznymi powiadomieniami.
Krok 1: Zainstaluj agenta Amplify w systemie Linux
1. Otwórz przeglądarkę internetową, wpisz adres poniżej i utwórz konto. Na Twój adres e-mail zostanie wysłany link, za jego pomocą zweryfikuj adres e-mail i zaloguj się na nowe konto.
https://amplify.nginx.com
2. Następnie zaloguj się do zdalnego serwera, który ma być monitorowany, przez SSH i pobierz skrypt automatycznej instalacji agenta nginx amplify za pomocą polecenia curl lub wget.
wget https://github.com/nginxinc/nginx-amplify-agent/raw/master/packages/install.sh
OR
curl -L -O https://github.com/nginxinc/nginx-amplify-agent/raw/master/packages/install.sh
3. Teraz uruchom poniższą komendę z uprawnieniami superużytkownika, używając komendy sudo, aby zainstalować pakiet agenta amplify (API_KEY będzie prawdopodobnie inny, unikalny dla każdego dodawanego systemu ).
sudo API_KEY='e126cf9a5c3b4f89498a4d7e1d7fdccf' sh ./install.sh
Uwaga: prawdopodobnie pojawi się błąd wskazujący, że sub_status nie został skonfigurowany. Zostanie to zrobione w następnym kroku.
4. Po zakończeniu instalacji wróć do internetowego interfejsu użytkownika, a po około 1 minucie nowy system będzie widoczny na liście po lewej stronie.
Krok 2: Skonfiguruj stub_status w NGINX
5. Teraz musisz skonfigurować konfigurację stub_status, aby utworzyć kluczowe wykresy Nginx (użytkownicy Nginx Plus muszą skonfigurować albo moduł stub_status, albo moduł rozszerzony status).
Utwórz nowy plik konfiguracyjny dla stub_status w katalogu /etc/nginx/conf.d/.
sudo vi /etc/nginx/conf.d/sub_status.conf
Następnie skopiuj i wklej do pliku następującą konfigurację stub_status.
server {
listen 127.0.0.1:80;
server_name 127.0.0.1;
location /nginx_status {
stub_status;
allow 127.0.0.1;
deny all;
}
}
Zapisz i zamknij plik.
6. Następnie uruchom ponownie usługi Nginx, aby aktywować konfigurację modułu stub_status w następujący sposób.
sudo systemctl restart nginx
Krok 3: Skonfiguruj dodatkowe metryki NGINX na potrzeby monitorowania
7. Na tym etapie musisz skonfigurować dodatkowe wskaźniki Nginx, aby uważnie monitorować wydajność aplikacji. Agent będzie zbierał dane z aktywnych i rozwijających się plików access.log i error.log, których lokalizację automatycznie wykrywa. I co ważne, należy zezwolić na odczyt tych plików.
Wszystko, co musisz zrobić, to zdefiniować konkretny format_loga, taki jak ten poniżej, w głównym pliku konfiguracyjnym Nginx, /etc/nginx/nginx.conf.
log_format main_ext '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for" '
'"$host" sn="$server_name" ' 'rt=$request_time '
'ua="$upstream_addr" us="$upstream_status" '
'ut="$upstream_response_time" ul="$upstream_response_length" '
'cs=$upstream_cache_status' ;
Następnie użyj powyższego formatu dziennika podczas definiowania dziennika dostępu, a poziom dziennika dziennika błędów powinien być ustawiony na ostrzegaj, jak pokazano.
access_log /var/log/nginx/suasell.com/suasell.com_access_log main_ext;
error_log /var/log/nginx/suasell.com/suasell.com_error_log warn;
8. Teraz ponownie uruchom usługi Nginx, aby zastosować najnowsze zmiany.
sudo systemctl restart nginx
Krok 4: Monitoruj serwer WWW Nginx za pośrednictwem agenta Amplify
9. Na koniec możesz rozpocząć monitorowanie swojego serwera internetowego Nginx z poziomu interfejsu internetowego Amplify.
Aby dodać kolejny system do monitorowania, po prostu przejdź do Wykresy, kliknij „Nowy system” i wykonaj powyższe kroki.
Strona główna Nginx Amplify: https://amplify.nginx.com/signup/
Amplify to potężne rozwiązanie SaaS do monitorowania systemu operacyjnego, serwera internetowego Nginx oraz aplikacji opartych na Nginx. Oferuje pojedynczy, ujednolicony interfejs internetowy umożliwiający monitorowanie wielu zdalnych systemów z systemem Nginx. Skorzystaj z poniższego formularza komentarza, aby podzielić się swoimi przemyśleniami na temat tego narzędzia.