Netdata je open source monitorovací systém 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 linuxové distribuci – byla testována na Alpine Linux, Arch Linux, CentOS, Ubuntu atd. Nabízí nástroje pro monitorování stavu vašich serverů, CPU, využití paměti, IPv4 a IPv6 sítí a uživatelských aplikací v reálném čase, jako je Nginx , fail2ban, MySQL, MongoDB atd.
V tomto tutoriálu vám ukážu, jak monitorovat Nginx pomocí Netdata. Tento tutoriál se bude zabývat instalací webového serveru Nginx, povolením modulu 'stub_status' a instalací Netdata na CentOS 7.
Co uděláme
- Nainstalujte webový server Nginx.
- Povolte modul 'stub_status' Nginx.
- Nainstalujte Netdata na CentOS 7.
- Monitorujte Nginx pomocí Netdata.
- Testování.
Předpoklady
- Server CentOS 7
- Oprávnění uživatele root
Krok 1 – Instalace webového serveru Nginx
V tomto kroku nainstalujeme webový server Nginx z úložiště EPEL (Extra Packages for Enterprise Linux). Před instalací Nginx se ujistěte, že je na vašem serveru nainstalováno úložiště EPEL.
Pokud jej nemáte, můžete jej nainstalovat pomocí příkazu níže.
yum -y install epel-release
Dále nainstalujte Nginx pomocí příkazu yum níže.
yum -y install nginx
A pokud byla instalace dokončena, spusťte službu a povolte její automatické spouštění při spouštění systému pomocí příkazů systemctl níže.
systemctl start nginx
systemctl enable nginx
Po instalaci otevřete porty HTTP a HTTPS pomocí příkazu firewall-cmd níže.
firewall-cmd --add-service=http --permanent
firewall-cmd --add-service=https --permanent
firewall-cmd --reload
Poznámka: Pokud nemáte příkaz firewall-cmd, můžete nainstalovat balíčky firewalld z úložiště.
yum -y install firewalld
Webový server Nginx byl nainstalován.
Krok 2 – Povolení modulu Nginx stub_status
Chcete-li monitorovat Nginx pomocí Netdata, musíme povolit modul 'stub_status' úpravou konfigurace. Ujistěte se, že vaše verze Nginx má modul s názvem 'stub_status', zkontrolujte modul pomocí příkazu níže.
nginx -V
Měli byste získat výsledek podobný následujícímu.
Ujistěte se, že máte v seznamu modul 'stub_status'.
Dále upravte konfigurační soubor nginx 'nginx.conf', abyste povolili modul 'stub_status'. Přejděte do adresáře '/etc/nginx/' a upravte konfiguraci pomocí vim.
cd /etc/nginx/
vim nginx.conf
Vložte následující konfiguraci do 'serveru {} ' 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.
Nyní otestujte konfiguraci nginx a ujistěte se, že nedochází k chybě. Poté restartujte nginx.
nginx -t
systemctl restart nginx
Modul 'stub_status' Nginx byl povolen - můžeme to zkontrolovat pomocí příkazu curl, jak je znázorněno níže.
curl http://127.0.0.1/stub_status
Když je povoleno, můžete vidět výsledek, jak je uvedeno níže.
Krok 3 – Instalace Netdata na CentOS 7
V tomto kroku nainstalujeme Netdata na server CentOS 7. Před instalací Netdata musíme nainstalovat nějaké balíčky pro instalaci Netdata.
Nainstalujte balíčky potřebné pro instalaci Netdata pomocí následujícího příkazu yum.
yum -y install zlib-devel libuuid-devel libmnl-devel gcc make git autoconf autogen automake pkgconfig curl jq nodejs
Dále si stáhněte zdrojový kód Netdata pomocí následujícího příkazu git.
cd ~
git clone https://github.com/firehol/netdata.git --depth=1
Přejděte do adresáře netdata a spusťte instalační skript Netdata s právy sudo.
cd netdata/
sudo ./netdata-installer.sh
Stiskněte 'Enter' pro pokračování v instalaci Nedata.
A když je instalace dokončena, uvidíte výsledek jako níže.
Netdata byla nainstalována na CentOS 7 a běží na portu '19999'.
Otevřete port pomocí příkazu firewall-cmd níže.
sudo firewall-cmd --permanent --add-port=19999/tcp
sudo firewall-cmd --reload
Netdata poskytuje skript služeb systemd, takže můžete spravovat Netdata pomocí příkazu systemctl. Restartujte netdata a povolte jejich automatické spouštění při každém startu systému.
systemctl restart netdata
systemctl enable netdata
Zkontrolujte otevřený port serveru – ujistěte se, že máte port 19999 ve stavu 'LISTEN'.
netstat -plntu
Nástroj pro monitorování Netdata byl nainstalován na CentOS 7.
Krok 4 – Monitorování Nginx pomocí Netdata
V této fázi byl nainstalován Nginx, byl povolen modul stub_status a instalace Netdata byla dokončena. V tomto kroku chceme monitorovat webový server nginx pomocí Netdata. Sledování požadavků, aktivního připojení a stavu.
Netdata poskytuje moduly pro monitorování systémových aplikací. Existují některé aplikace jako Apache, Nginx, MongoDB atd., které používají python moduly pro monitorování pomocí Netdata.
Přejděte do adresáře netdata 'python.d' a upravte konfigurační soubor nginx.conf pomocí vim.
cd /etc/netdata/python.d/
vim nginx.conf
Přejděte na spodní řádek a ujistěte se, že máte konfiguraci, jak je uvedeno níže.
localhost:
name : 'local'
url : 'http://localhost/stub_status'
Uložte a ukončete.
Nyní restartujte službu netdata pomocí příkazu systemctl.
systemctl restart netdata
Krok 5 – Testování
Otevřete webový prohlížeč a navštivte IP adresu serveru s portem 19999.
http://192.168.1.11:19999/
A získáte Netdata Dashboard.
Klikněte na 'nginx local' vpravo a podívejte se na aktivní připojení Nginx, požadavky, stav a rychlost připojení.
Netdata byla nainstalována na server CentOS 7 a webový server Nginx je monitorován pomocí Netdata.
Předvolba
- https://github.com/firehol/netdata/wiki/