Netdata je open source monitorovací nástroj pro linuxové servery. Poskytuje sledování výkonu a zdraví v reálném čase s krásným řídicím panelem a analýzami. Netdata by měla běžet na jakékoli distribuci Linuxu, byla testována na Alpine Linux, Arch Linux, CentOS, Ubuntu atd. Sleduje CPU, využití paměti, IPv4 a v6, uživatelské aplikace jako Nginx, fail2ban, MySQL, MongoDB atd.
V tomto tutoriálu vám ukážu, jak monitorovat Nginx pomocí Netdata. Výukový program se bude zabývat instalací webového serveru Nginx, povolením modulu 'stub_status' v Nginx a instalací Netdata na Ubuntu 16.04 Xenial Xerus.
Co uděláme:
- Nainstalujte webový server Nginx.
- Nainstalujte nástroj Netdata Monitoring Tool na Ubuntu 16.04.
- Povolte modul Nginx 'stub_status'.
- Nakonfigurujte Netdata pro sledování Nginx.
- Nakonfigurujte bránu firewall UFW.
- Testování.
Předpoklad
- Server Ubuntu 16.04
- Oprávnění uživatele root
Krok 1 – Instalace webového serveru Nginx
Prvním krokem, který musíme udělat, je instalace webového serveru Nginx z úložiště. Aktualizujte úložiště Ubuntu před instalací Nginx pomocí příkazu apt update.
apt update
Nainstalujte Nginx z úložiště Ubuntu pomocí příkazu apt install níže.
apt install -y nginx
Po dokončení instalace spusťte Nginx a přidejte jej, aby se automaticky spustil při spouštění pomocí příkazů systemctl.
systemctl start nginx
systemctl enable nginx
Webový server běží, zkontrolujte to pomocí curl.
curl -I localhost
Ujistěte se, že máte výsledek '200 OK' http stav jako na snímku obrazovky níže.
Webový server Nginx byl nainstalován.
Krok 2 – Instalace nástroje Netdata Monitoring Tool na Ubuntu 16.04
V tomto kroku nainstalujeme monitorovací nástroj Netdata ze zdroje. Nainstaluji jej ručně pomocí dodaného instalačního programu. Před instalací Netdata musíme nainstalovat některé potřebné balíčky.
Nainstalujte balíčky potřebné pro instalaci Netdata pomocí příkazu apt install níže.
apt install -y zlib1g-dev uuid-dev libmnl-dev gcc make git autoconf autoconf-archive autogen automake pkg-config curl
Až budou všechny balíčky nainstalovány, stáhněte si zdrojový kód Netdata z githubu pomocí příkazu git.
git clone https://github.com/firehol/netdata.git --depth=1
Přejděte do adresáře 'netdata' a spusťte instalační skript 'netdata-installer.sh' s právy sudo.
cd netdata/
sudo ./netdata-installer.sh
Stiskněte 'Enter' pro pokračování instalace Netdata.
Po dokončení instalace získáte níže uvedený výsledek.
Monitorovací nástroj Netdata poskytuje servisní skript pro systém systemd. Spusťte netdata a přidejte je, aby se automaticky spouštěly při spouštění pomocí příkazů systemctl níže.
systemctl start netdata
systemctl enable netdata
Ve výchozím nastavení běží na portu 19999, zkontrolujte port pomocí netstat a ujistěte se, že máte port 19999 ve stavu 'LISTEN'.
netstat -plntu
Nástroj Netdata Monitoring Tool byl nainstalován.
Krok 3 – Povolení modulu Nginx 'stub_status'
K monitorování webového serveru Nginx pomocí nástroje pro monitorování Netdata potřebujeme nějakou další konfiguraci. Nejprve musíme povolit modul nginx 'stub_status' pro konfiguraci virtuálního hostitele.
Před úpravou konfigurace virtuálního hostitele se ujistěte, že jste nainstalovali verzi nginx s modulem 'stub_status'. Zkontrolujte to příkazem níže.
nginx -V
Ujistěte se, že máte modul 'stub_status', jak je uvedeno níže.
Dále přejděte do konfiguračního adresáře nginx a upravte „výchozí“ soubor virtuálního hostitele pomocí editoru vim.
cd /etc/nginx/sites-available/
vim default
Vložte konfiguraci níže na 'server{} ' block.
location /stub_status {
stub_status;
# Security: Only allow access from the IP below.
allow 127.0.0.1;
# Deny anyone else
deny all;
}
Uložte a ukončete.
Otestujte konfiguraci nginx a ujistěte se, že došlo k chybě, a restartujte službu nginx.
nginx -t
systemctl restart nginx
Modul 'stub_status' Nginx byl povolen, zkontrolujte jej pomocí příkazu netstat níže.
curl http://127.0.0.1/stub_status
A dostanete výsledek, jak je uvedeno níže.
Krok 4 – Konfigurace Netdata pro sledování Nginx
Netdata poskytuje moduly Python pro monitorování našich nainstalovaných aplikací v systému, včetně webových serverů Nginx. K monitorování Nginx pomocí Netdata potřebujeme modul Nginx 'stub_status' a ten již byl povolen.
Nyní přejděte do konfiguračního adresáře netdata. A pak upravte soubor nginx.conf v adresáři python.d.
cd /etc/netdata/
vim python.d/nginx.conf
Ujistěte se, že máte konfiguraci jako níže.
localhost:
name : 'local'
url : 'http://localhost/stub_status'
Uložte soubor a ukončete vim.
Nyní restartujte Netdata pomocí systemctl.
systemctl restart netdata
Konfigurace síťových dat pro monitorování Nginx byla dokončena.
Krok 5 – Konfigurace brány UFW
V tomto tutoriálu povolím Ubuntu firewall UFW. Otevřu porty HTTP a HTTPS a poté otevřu nový port 19999 pro přístup k panelu Netdata Dashboard.
Ujistěte se, že jste nainstalovali balíček brány firewall UFW, pokud ne, nainstalujte jej pomocí příkazu níže.
apt install -y ufw
Nyní otevřete porty pro ssh, http, https a netdata port 19999 pomocí níže uvedených příkazů 'ufw allow'.
ufw allow ssh
ufw allow http
ufw allow https
ufw allow 19999/tcp
Dále spusťte UFW firewall a přidejte jej tak, aby se spouštěl automaticky při spouštění.
ufw enable
Zadejte „y ' na ano a stiskněte 'Enter'.
Až budete hotovi, zkontrolujte stav brány firewall, jak je uvedeno níže.
ufw status
A získáte nové porty, je na seznamu níže.
Krok 6 – Testování
Otevřete prohlížeč a zadejte adresu serveru s portem 19999.
http://192.168.1.11:19999/
Měli byste vidět Netdata Dashboard.
Klikněte na 'nginx local' vpravo a podívejte se na aktivní připojení Nginx, požadavky, stav a rychlost připojení.
Webový server Nginx je nyní monitorován pomocí Netdata a Netdata byla nainstalována na server Ubuntu 16.04.