 |
» |
|
|
 |
L'inoltro dei registri eventi è una funzionalità del daemon standard UNIX syslogd. Oltre a registrare i messaggi nei file di log dell’host locale, syslogd è in grado di inoltrarli verso uno o più sistemi remoti. Questi sistemi sono detti collettori o server di consolidazione dei registri eventi. La consolidazione dei registri eventi offre vantaggi come i seguenti: Analisi più semplice dei registri – Il registro centralizzato fornisce all’amministratore una singola ubicazione per eseguire l’analisi dei file di log. Fornisce un’unica visualizzazione degli eventi che interessano più sistemi. Maggiore protezione – Una violazione della sicurezza può compromettere i registri eventi locali ma non la copia centralizzata. Il sistema di consolidazione dei registri eventi può essere rafforzato con modalità che probabilmente sarebbero inadatte per i client di inoltro dei registri. Archiviazione semplificata dei registri – In alcuni casi è più semplice archiviare un gruppo di registri centralizzati piuttosto che sistema per sistema.
Vi sono alcuni svantaggi nell’utilizzo del daemon syslogd standard in un server di consolidazione dei registri eventi:
syslogd supporta l’inoltro utilizzando solamente UDP. Universal Datagram Protocol – UDP – è un protocollo “senza connessione” e non offre il controllo di flusso né garantisce la consegna dei messaggi. È perciò possibile che i messaggi dei registri così inoltrati vadano perduti. Le funzionalità di filtraggio di syslogd sono piuttosto semplici: è possibile filtrare solamente in base alla priorità ed al servizio del messaggio. Un sistema di consolidazione dei registri eventi presenta un unico punto debole. Nel caso che il sistema non sia disponibile, i messaggi inoltrati dai client andranno perduti. I messaggi continueranno ad esistere nei singoli sistemi client. Sono perduti solamente per il registro consolidato.
Consolidazione dei registri eventi migliorata |  |
Distributed Systems Administration Utilities – DSAU – per ovviare alle debolezze di syslogd prima citate, utilizza syslog-ng, o syslog “Next Generation”. syslog-ng è un sostitutivo open source di syslogd. Esegue tutte le funzionalità di syslogd, oltre ad offrire quelle seguenti: Migliori funzionalità di filtraggio. Oltre ai livelli di filtraggio per priorità e servizio di syslog, syslog-ng è in grado di eseguire filtraggi secondo espressioni regolari in base al nome del programma, il nome host, il testo del messaggio stesso, l’indirizzo IP del mittente, e così via.
Rotazione dei registri in base ai nomi di file di output – La registrazione con nomi di file di output può essere basata su modelli di nomi che supportano espansioni con macro. Ad esempio, se il modello dei nomi di file di output contiene una macro per il mese, ogni mese sarà creato un nuovo nome di file. Esecuzione di programmi – Un messaggio può attivare l’avvio di un programma, inviando il messaggio verso il suo input standard. Inoltro dei registri per file di log di testo arbitrari – Assieme allo strumento clog_tail di DSAU, è possibile usare syslog-ng per l’inoltro e la consolidazione dei file di log arbitrari di applicazioni basate su testo, come i file di log dei pacchetti di Serviceguard.
Coesistenza con syslog |  |
Distributed Systems Administration Utilities configura syslog-ng per coesistere ed operare a fianco del daemon standard syslogd. syslogd continua a gestire la registrazione eventi locale del sistema. syslog-ng è utilizzato per l’inoltro dei messaggi ad un sistema di consolidazione dei registri eventi ed è utilizzato nel sistema di consolidazione per la ricezione ed il filtraggio dei messaggi. I diagrammi seguenti illustrano la relazione fra syslogd e syslog-ng. La Figura 3-1 descrive la configurazione di un sistema client syslog-ng che inoltra i file di log a un server remoto di consolidazione.
L’area grigia rappresenta le operazioni standard di syslogd. Applicazioni come il daemon cmcld di Serviceguard, chiamano syslog (vedere syslog(3C)) per inviare i messaggi a syslogd. syslog salva i messaggi in /var/adm/syslog/syslog.log e nei file correlati del sistema locale. Le applicazioni frequentemente hanno dei propri file di log. In questo esempio, Serviceguard mantiene un registro eventi delle operazioni dei pacchetti in /etc/cmcluster/nome_pacchetto/nome_pacchetto.log. Il daemon clog_tail di DSAU, etichettato nel diagramma come “Lettore file di log”, controlla i registri eventi testuali ed invia le nuove righe a syslog-ng per l’elaborazione. In un cluster Serviceguard, clog_tail controlla per impostazione predefinita tutti i file di log dei pacchetti. Il lettore_file_di_log invia tutti i nuovi messaggi dei registri in una named pipe (fifo_registro_consolidato), che è una delle origini dei registri per syslog-ng. Il daemon syslog-ng legge i nuovi dati dalla named pipe e li inoltra al server di consolidazione dei registri eventi. Il daemon locale syslogd, oltre a salvare i messaggi dei registri eventi nel file locale /var/adm/syslog/syslog.log, è anche configurato per inoltrare tutti i messaggi all’istanza locale di syslog-ng. A sua volta, syslog-ng inoltra questi messaggi al sistema di consolidazione dei registri eventi. Per l’inoltro dei messaggi, l’amministratore può scegliere di utilizzare UDP, TCP oppure TCP con ssh.
La Figura 3-2 mostra la configurazione nel server di consolidazione dei registri eventi.
Il server di syslog-ng legge i dati dei registri in arrivo dai client connessi con UDP o con TCP. Nota: le frecce grigie indicano un’operazione di lettura, quelle nere, di scrittura. L'area grigia è identica alla configurazione del client nella Figura 3-1: “Configurazione per l’inoltro dei registri eventi con syslog-ng”. In termini di sistema locale, syslog-ng agisce come client ed elabora i messaggi di syslog e quelli di clog_tail inoltrati localmente. Il server di syslog-ng elabora tutti i messaggi e li filtra nei corrispondenti file di log consolidati. In questo esempio specifico, l’amministratore ha creato il filesystem “/clog” per contenere i registri consolidati. /clog/syslog/ conterrebbe il file correlato con syslog. /clog/packages conterrebbe i registri consolidati dei pacchetti del cluster Serviceguard.
|