Molte volte, gli amici impegnati nella manutenzione dei server sperano di avere una piattaforma di monitoraggio delle prestazioni del server in grado di fornire una panoramica generale, in modo da poter cogliere le dinamiche di funzionamento dei server dell'azienda in tempo reale. Attualmente sul mercato esistono molte piattaforme di monitoraggio delle prestazioni di rete di terze parti, come Alibaba Cloud, Tencent Cloud, Linode, Vultr e altri provider di hosting VPS con i propri servizi di monitoraggio delle prestazioni del server.
Se crei la tua piattaforma di monitoraggio del server, puoi provare gli strumenti di analisi dei log del server che abbiamo condiviso in precedenza: ngxtop e GoAccess, che possono aiutarci a visualizzare le anomalie del server dal punto di vista dell'analisi dei log del server. Puoi anche utilizzare lo strumento Smokeping per monitorare lo stato della linea di rete del server, come ping convenzionale, dig, echoping, curl, ecc.
Questo articolo condividerà due eccellenti strumenti di monitoraggio del server: uno è il PHP proxy-x-prober open source gratuito. Ci sono molti sondaggi PHP su Internet, ma x-prober è adatto agli "amanti della bellezza" l'altro è Netdata, uno strumento di monitoraggio in tempo reale delle prestazioni del server Linux con un'interfaccia interessante e uno stile accattivante; Questi due tipi di monitoraggio possono migliorare notevolmente le prestazioni dei lavori di funzionamento e manutenzione.
Per ulteriori prestazioni del server, comandi di monitoraggio della rete e strumenti di monitoraggio, ecco:
- Riepilogo dei comandi di monitoraggio del sistema Linux: CPU master, memoria, I/O del disco, ecc. per individuare i colli di bottiglia delle prestazioni
- Installazione e configurazione di smokeping: strumento di monitoraggio delle prestazioni di rete open source gratuito per la distribuzione master/slave visiva
- Strumenti di analisi dei log del server: ngxtop e GoAccess: monitoraggio in tempo reale e gestione visiva per trovare rapidamente l'origine delle eccezioni
1. Sonda PHP open source gratuita: x-prober
sito web:
- Progetto: https://github.com/kmvan/x-prober
- Scarica: https://api.inn-studio.com/download?id=xprober
- Demo: https://tz.inn-studio.com/
Questa è una sonda PHP che può sostituire la sonda Yahei. Ha una bella interfaccia, funzioni semplici ma pratiche ed è adatta alle esigenze di base della sonda del server. (Clicca per ingrandire)
La sonda x-prober può visualizzare lo stato del server, le statistiche sul traffico, le informazioni sul server, le informazioni PHP, le estensioni PHP, i database, i punteggi delle prestazioni del server, ecc.
2. Installazione e utilizzo dello strumento di monitoraggio in tempo reale di Linux Netdata
sito web:
- Sito ufficiale: https://my-netdata.io/
- Demo: https://my-netdata.io/#demosites
- Pagina iniziale: https://github.com/firehol/netdata
2.1 Introduzione alla funzione Netdata
Netdata è uno strumento di monitoraggio delle prestazioni del server Linux con un'interfaccia molto interessante, funzioni molto potenti e installazione molto semplice. Si aggiorna in tempo reale, si installa con un clic, non richiede alcuna manutenzione e visualizza i dati di monitoraggio direttamente nel browser. Netdata raccoglie migliaia di indicatori al secondo, ma rappresenta solo l'1% di un singolo core della CPU, una piccola quantità di memoria e nessuna lettura e scrittura di I/O del disco. Come mostrato di seguito: (clicca per ingrandire)
Netdata monitora molti contenuti, tra cui principalmente:
CPU: utilizzo, interruzioni, softirq, frequenza, stato CPU totale e per core
Memoria: RAM, utilizzo della memoria swap e del kernel, KSM (unione della stessa pagina del kernel), NUMA
Dischi: Per disco: I/O, Operazioni, Backlog, Utilizzo, Spazio, RAID software (md)
Interfacce di rete: Per interfaccia: larghezza di banda, pacchetti, errori, cadute
Rete IPv4, rete IPv6: larghezza di banda, pacchetto, errore, frammento, tcp: connessione, pacchetto, errore, handshake, udp: pacchetto, errore, broadcast: larghezza di banda, pacchetto, multicast: larghezza di banda, pacchetto
netfilter/iptables Firewall Linux: connessioni, eventi di tracciamento della connessione, errori
File server e client NFS: NFS v2, v3, v4: I/O, caching, read-ahead, chiamate RPC
Server Web Apache e lighttpd: stato mod (v2.2, v2.4) e statistiche del registro della cache per più server
Server web Nginx: stato stub per più server
Tomcat: accesso, thread, memoria disponibile, volumi
File di registro del server Web: estrai i parametri delle prestazioni del server Web in tempo reale e applica più controlli di integrità
Database MySQL: più server, ogni server mostra: larghezza di banda, query/gestori, blocchi, problemi, operazioni tmp, connessioni, parametri binlog, thread, parametri innodb e altro ancora
Database Postgres: più server, ciascun server mostra: statistiche per database (connessioni, tuple di lettura-scrittura restituite, transazioni, blocchi), processi backend, indici, tabelle, write-ahead, scrittori in background e altro
Database Redis: più server, ciascun server visualizza: operazioni, tasso di successo, memoria, chiave, client, server slave
CouchDB: lettura/scrittura, metodi di richiesta, codici di stato, attività, replica, per db, ecc.
Database memcached: più server, ogni server mostra: larghezza di banda, connessioni, progetti
Server dei nomi NSD: query, zone, protocolli, tipi di query, trasporti, ecc.
PowerDNS: query, risposte, memorizzazione nella cache, latenza e altro ancora
Server di posta elettronica Postfix: coda di messaggi (voce, dimensione)
Gruppi di continuità NUT e APC: carico, capacità, tensione batteria, temperatura, indicatori di utilità, indicatori di uscita
PHP-FPM: istanze multiple, ciascuna riporta connessioni, richieste, prestazioni
smartd: valore S.M.A.R.T
2.2 Metodo di installazione dei dati netti
Tutti i sistemi Linux possono utilizzare il seguente metodo per installare netdata con un clic (non è necessario utilizzare sudo):
# 基础安装 bash <(curl -Ss https://my-netdata.io/kickstart.sh) # 或者 # 安装所有的组件 bash <(curl -Ss https://my-netdata.io/kickstart.sh) all
La struttura delle directory di Netdata è la seguente:
– il demone in /usr/sbin/netdata
– file di configurazione in /etc/netdata
<x2 > – file web in /usr/share/netdata
– plugin < x2> in /usr/libexec/netdata
– memorizza nella cache i file in /var/cache/netdata
< x2> – file db in /var/lib/netdata
– file di registro <x2 > in /var/log/netdata
– file pid in /var /run/netdata.pid
– file logrotate su /etc/logrotate.d/netdata
Come mostrato di seguito:
Il seguente messaggio indica che Netdata è stato installato con successo.
2.3 Operazioni di utilizzo dei Netdata
Dopo l'installazione, utilizza ip:19999 per accedervi. Questa è l'interfaccia di Netdata. Si può vedere che è molto intuitiva. Apri la pagina per visualizzare vari dati di monitoraggio. Puoi anche fare clic rapidamente sugli indicatori corrispondenti a destra visualizzarlo. (Clicca per ingrandire)
Ogni dato di monitoraggio viene aggiornato in tempo reale ed è anche possibile fare clic con il mouse per visualizzare i dettagli.
Netdata ha una funzione di importazione ed esportazione. Puoi esportare i dati di monitoraggio per un certo periodo di tempo e puoi anche importare dati di backup.
Se hai installato più macchine e desideri accedervi tramite un browser, fai clic su my-netdata nell'angolo in alto a sinistra. Quindi fare clic sull'icona delle tre barre verticali.
Registra l'ID di registrazione e, quando torni a casa, inserisci e aggiungi ciascun ID di registrazione nel browser di casa.
3. Riepilogo
Il problema più grande con il monitoraggio Netdata è probabilmente il problema della lingua. Attualmente, il sito Web ufficiale è solo in inglese e non ci sono altre lingue inserito in questa directory.
La sonda x-prober è in qualche modo simile alla sonda Yahei nel funzionamento. Il vantaggio principale è che è molto più bella e può essere utilizzata come sostituto della sonda. Netdata può essere utilizzato come monitoraggio di server a livello aziendale, ma è un po' "sprecato" per uso personale.