Wyszukiwanie w witrynie

Jak monitorować wydajność Nginx za pomocą Netdata w CentOS 7


Netdata to bezpłatne, skalowalne, adaptacyjne, konfigurowalne, rozszerzalne i potężne narzędzie typu open source do monitorowania wydajności i stanu systemów Linux w czasie rzeczywistym, które gromadzi i wizualizuje wskaźniki. Działa na komputerach stacjonarnych, komputerach osobistych, serwerach, urządzeniach wbudowanych, IoT i nie tylko.

Przeczytaj także: Jak monitorować wydajność Apache za pomocą Netdata w CentOS 7

Jest to narzędzie do monitorowania stanu systemu, które pozwala monitorować, jak działają systemy i aplikacje lub usługi, takie jak serwery internetowe, a także dlaczego działają wolno lub nieprawidłowo. Jest niezwykle skuteczny i wydajny pod względem wykorzystania procesora, a także innych zasobów systemowych.

W tym artykule wyjaśnimy, jak monitorować wydajność serwera internetowego Nginx HTTP przy użyciu Netdata w systemie CentOS 7 lub RHEL 7 dystrybucja.

Pod koniec tego przewodnika będziesz mógł oglądać wizualizacje aktywnych połączeń, żądań, statusu i szybkości połączenia swojego serwera WWW Nginx.

Wymagania:

  1. Serwer CentOS 7 lub serwer RHEL 7 z minimalną instalacją.
  2. Instalacja serwera Nginx HTTP z włączonym modułem ngx_http_stub_status_module.

Krok 1: Zainstaluj Nginx na CentOS 7

1. Najpierw zacznij od włączenia Repozytorium EPEL, a następnie zainstaluj serwer Nginx HTTP z repozytoriów oprogramowania EPEL za pomocą menedżera pakietów YUM.

yum install epel-release
yum install nginx 

2. Następnie sprawdź wersję Nginx zainstalowaną w Twoim systemie, należy ją skompilować z modułem stub_status wskazanym przez - -with-http_stub_status_module argument konfiguracyjny, jak pokazano na poniższym zrzucie ekranu.

nginx -V

3. Po pomyślnej instalacji Nginx, uruchom go i włącz automatyczne uruchamianie przy starcie systemu i upewnij się, że jest uruchomiony.

systemctl status nginx
systemctl enable nginx
systemctl status nginx

4. Jeśli korzystasz z dynamicznej zapory firewall z zaporą sieciową, musisz otworzyć port 80 (HTTP) i 443 ( HTTPS), na którym serwer WWW nasłuchuje żądań połączeń klientów.

firewall-cmd --permanent --add-port=80/tcp
firewall-cmd --permanent --add-port=443/tcp
firewall-cmd --reload 

Krok 2: Krok 2: Włącz moduł Nginx Stub_Status

5. Teraz włącz moduł stub_status, którego netdata używa do zbierania danych z Twojego serwera WWW Nginx.

vim /etc/nginx/nginx.conf

Skopiuj i wklej poniższą konfigurację lokalizacji do bloku serwera, jak pokazano na zrzucie ekranu.

location /stub_status {
 	stub_status;
 	allow 127.0.0.1;	#only allow requests from localhost
 	deny all;		#deny all other hosts	
 }

6. Następnie przetestuj nową konfigurację nginx pod kątem błędów i zrestartuj usługę nginx, aby zastosować ostatnie zmiany.

nginx -t
systemctl restart nginx

7. Następnie przetestuj stronę stanu Nginx za pomocą narzędzia wiersza poleceń curl.

curl http://127.0.0.1/stub_status

Krok 3: Zainstaluj Netdata na CentOS 7

8. Istnieje jednowierszowy skrypt powłoki, którego możesz użyć do rozpoczęcia instalacji najnowszej wersji netdata z repozytorium Github. Ten skrypt pobierze inny skrypt w celu wykrycia Twojej dystrybucji Linuksa i zainstaluje pakiety systemowe wymagane do budowania danych sieciowych; następnie pobiera najnowsze pliki źródłowe netdata; buduje i instaluje.

Użyj poniższego polecenia, aby uruchomić skrypt kickstartera, opcja all pozwala na zainstalowanie wymaganych pakietów dla wszystkich wtyczek netdata, w tym tych dla Nginx.

bash <(curl -Ss https://my-netdata.io/kickstart.sh) all

Jeśli nie uzyskujesz dostępu do systemu jako root, zostaniesz poproszony o podanie hasła użytkownika dla polecenia sudo, a także zostaniesz poproszony o potwierdzenie niektórych operacji poprzez naciśnięcie [Enter].

8. Po zbudowaniu i zainstalowaniu netdata skrypt automatycznie uruchomi usługę netdata poprzez systemowego menedżera usług i umożliwi jej uruchomienie przy starcie systemu. Netdata domyślnie nasłuchuje na porcie 19999.

9. Następnie otwórz port 19999 w zaporze sieciowej, aby uzyskać dostęp do internetowego interfejsu użytkownika netdata.

firewall-cmd --permanent --add-port=19999/tcp
firewall-cmd --reload 

Krok 4: Skonfiguruj Netdata do monitorowania wydajności Nginx

9. Konfiguracja netdata dla wtyczki Nginx jest przechowywana w pliku konfiguracyjnym /etc/netdata/python.d/nginx.conf, zapisanym w YaML formatować.

vim /etc/netdata/python.d/nginx.conf

Domyślna konfiguracja wystarczy, aby rozpocząć monitorowanie serwera WWW Nginx.

Jeżeli dokonałeś jakichkolwiek zmian w pliku konfiguracyjnym, po przeczytaniu dokumentacji zrestartuj usługę netdata, aby zastosować zmiany.

systemctl restart netdata

Krok 5: Monitoruj wydajność Nginx za pomocą Netdata

10. Teraz otwórz przeglądarkę internetową i użyj następującego adresu URL, aby uzyskać dostęp do internetowego interfejsu użytkownika netdata.

http://domain_name:19999
OR
http://SERVER_IP:19999

Na liście wtyczek po prawej stronie kliknij „nginx local”, aby rozpocząć monitorowanie serwera internetowego Nginx. Będziesz mógł oglądać wizualizacje aktywnych połączeń, żądań, statusu i szybkości połączenia, jak pokazano na poniższym zrzucie ekranu.

Repozytorium Netdata Github: https://github.com/firehol/netdata

To wszystko! Netdata to działające w czasie rzeczywistym rozproszone narzędzie do monitorowania wydajności i stanu systemów Linux. W tym artykule pokazaliśmy, jak monitorować wydajność serwera WWW Nginx za pomocą danych sieciowych w CentOS 7. Skorzystaj z poniższego formularza komentarza, aby podzielić się pytaniami lub przemyśleniami na temat tego przewodnika.