Articolo valido per server cloud, server dedicati e server virtuali

In questo articolo trovi un elenco di problemi che possono influire negativamente sulle prestazioni di un server Linux. Inoltre, ti mostriamo quali programmi utilizzare per monitorare il tuo server, al fine di individuare eventuali problematicità ed eliminarne le cause.

Nota bene

Ti raccomandiamo di effettuare un monitoraggio regolare del tuo server, al fine di rilevare sovraccarichi nelle prestazioni ed eventuali problemi che possono verificarsi nella fase iniziale, notare velocemente un eventuale guasto del server o di singoli componenti o applicazioni. Questo vale anche per certi tipi di attacchi informatici. Se si viene attaccati, una risposta rapida è essenziale per fermare l'attacco e minimizzare i danni causati.

Prestazioni del sever: tipologie di problemi

I problemi di performance di un server possono essere di diversa natura. Per questo motivo, è fondamentale identificarne con precisione le cause. Qui trovi un elenco dei problemi che si possono verificare nelle diverse circostanze:

Bassa velocità di accesso dell'SSD/disco rigido:

  • Può verificarsi con i server dedicati.

  • È una possibile causa se il server impiega molto tempo quando vengono avviati il sistema operativo o i programmi, e/o quando si accede al server.

  • Può anche accadere se il sistema operativo o i programmi usano il file di swap o se devono essere caricati o salvati dei dati.

Carico elevato del sistema o della CPU:

  • Un tasso di utilizzo della CPU costantemente alto è un indicatore che il processore del server è sovraccarico.

  • Se il carico del sistema o della CPU è troppo alto, ci saranno ritardi nell'esecuzione delle applicazioni e delle attività dell'utente.

  • Se il server ha troppa poca RAM, questo può portare il processore ad essere permanentemente molto carico.

  • Un carico del processore permanentemente elevato potrebbe essere causato da un malware.

Basso throughput di dati delle interfacce di rete:

  • Porta ad un ritardo generale nella visualizzazione e nei tempi di risposta.

  • Una grande varietà di problemi può verificarsi se le interfacce di rete sono troppo occupate.

  • I problemi di performance vanno da alte latenze a messaggi di errore quando si aprono le pagine web.

Suggerimenti per l'analisi

  • Per determinare la causa dei problemi di prestazione, è importante distinguere se sono temporanei o permanenti.

  • Se i problemi di prestazione sono temporanei, controlla se c'è un modello riconoscibile. A tal fine, analizza i processi eseguiti e i compiti regolarmente eseguiti dal tuo server.

  • Se necessario, riprogramma i compiti regolarmente eseguiti e poi controlla se i problemi di prestazione si verificano ancora dopo questo cambiamento.

  • Se necessario, controlla se i problemi di prestazione si verificano sempre quando si esegue una certa azione. Questo potrebbe essere, ad esempio, un caricamento della pagina molto lento o un upload o download molto lento.

  • Ricerca quali aggiornamenti sono stati installati sul server e scopri se è necessario installare un nuovo aggiornamento che influisce sulle prestazioni del tuo server.

  • Se un processo ti è sconosciuto o non sei sicuro che sia un malware, ti raccomandiamo di cercare il nome del processo su Internet. Presta particolare attenzione ai processi che richiedono un numero insolitamente grande di risorse.

Importante

Ti consigliamo di installare regolarmente e per tempo le patch di sicurezza e gli aggiornamenti per il sistema operativo e i programmi installati, e di testarli in anticipo per verificare i possibili effetti sul tuo ambiente specifico. Inoltre, assicurati che le patch di sicurezza e gli aggiornamenti per i plug-in che utilizzi vengano installati prontamente.

Utilizzare il programma top per un'analisi iniziale del carico attuale del sistema

Per eseguire un'analisi iniziale del carico attuale del sistema, puoi utilizzare il programma top. Questo programma è incluso di default nella maggior parte delle distribuzioni Linux.

Con il programma top puoi visualizzare sia le informazioni di sistema che i processi attualmente in esecuzione. Nella panoramica, è possibile ordinare le attività per CPU, utilizzo della memoria e tempo di esecuzione.

Inoltre, questo programma offre un'interfaccia interattiva per la manipolazione dei processi e per la configurazione individuale. La maggior parte delle caratteristiche può essere selezionata da comandi interattivi o da voci nei file di configurazione personali o di sistema.

Per avviare top, immetti il comando "top" sulla linea di comando. Puoi combinare questo comando con una varietà di opzioni.

Puoi trovare una panoramica delle opzioni qui: top - pagina man di Linux

Puoi trovare maggiori informazioni sull'analisi del carico del sistema con top qui: Analizzare il carico attuale di un sistema con il programma top (Linux)

Utilizzare il programma atop per un'analisi più approfondita del carico del sistema

Atop è un programma di monitoraggio delle prestazioni ASCII con cui è possibile visualizzare l'utilizzo di un sistema Linux. Non appena atop viene avviato, vengono visualizzati l'utilizzo della CPU e della memoria, e le informazioni sull'utilizzo dei file di swap, dei dischi rigidi/SSD e della connessione di rete a intervalli di 10 secondi (impostazione predefinita). Inoltre, per ogni processo e thread, è possibile visualizzare, tra le altre cose, l'utilizzo della CPU, il consumo di memoria e l'I/O del disco rigido. In aggiunta, con atop è possibile salvare le statistiche a livello di sistema e di processo in un formato binario compresso in un file per l'analisi a lungo termine. Per impostazione predefinita, i file di log che sono stati creati vengono conservati per 28 giorni.

Per sapere come installare atop e creare file di log per un'analisi più approfondita del carico di un sistema, consulta il seguente articolo del nostro Centro Assistenza: Utilizzare Atop per un'analisi approfondita del carico di un sistema (Linux)

Testare la connessione di rete del server

Di seguito ti mostriamo i comandi che puoi utilizzare per testare la connessione di rete del tuo server.

Per ottenere informazioni significative sulle prestazioni della connessione di rete del server, esegui i test di prestazione diverse volte e in diversi momenti della giornata.

Per visualizzare le connessioni di rete attualmente aperte, utilizza il seguente comando:

[root@localhost ~]# sudo ss -tpn


Per verificare quali processi sono attualmente in attesa di connessioni dall'esterno, immetti il seguente comando:

[root@localhost ~]# sudo ss -tulpn

Per testare la perdita di pacchetti, immetti il comando ping nella forma seguente. Limita il numero di ping con l'opzione -c:

[root@localhost ~]# ping -c NUMERO INDIRIZZO_IP

oppure

[root@localhost ~]# ping -c NUMERO DOMINIO_DEL_SERVER

In alternativa, è possibile utilizzare il programma Traceroute in caso di problemi di connessione. Con Traceroute puoi determinare attraverso quali router viene instradato un pacchetto.

Per installare Traceroute, inserisci i seguenti comandi:

CentOS 7, CentOS Stream 8 e CentOS Stream 9

[root@localhost ~]# yum update
[root@localhost ~]# yum install traceroute

Ubuntu

[root@localhost ~]# sudo apt-get update
[root@localhost ~]# apt-get install inetutils-traceroute

Per utilizzare Traceroute, inserisci il seguente comando:

[root@localhost ~]# traceroute INDIRIZZO-IP

Verificare i file di log del server

Puoi trovare le istruzioni su come verificare i file di log del tuo server qui: Verificare i file di log (server cloud e server dedicati)