Rack PowerFlex: Problemi di spazio /var/log quando è abilitata la funzione di inoltro Syslog
Summary: Questo articolo spiega il problema nello spazio /var/log dovuto al fatto che la rotazione del log non si verifica abbastanza frequentemente.
Symptoms
La configurazione logrotate corrente ruota il file dei messaggi una volta alla settimana, ma nei casi in cui l'inoltro syslog è abilitato in VxFlex Manager, potrebbe non ruotare abbastanza velocemente.
Fatti:
- La funzionalità di inoltro Syslog è abilitata in VxFlex Manager.
- La partizione /var/log si sta riempiendo rapidamente.
- Questo può variare notevolmente da sistema a sistema
- Syslog remoto è abilitato sui dispositivi nel sistema VxFlex integrated rack o appliance ed è configurato per inviare eventi syslog a VxFlex Manager
Cause
L'inventario delle risorse ha esito negativo per tutte le risorse quando il file system /var/log è al 100%.
Nota: Le avvertenze o gli avvisi critici elencati di seguito potrebbero non funzionare se lo spazio è troppo pieno per eseguire questi controlli o se si sta riempiendo troppo velocemente.
- L'interfaccia utente di VxFlex Manager mostra un avviso se il >75%:
L'interfaccia utente di VxFlex Manager mostra critico se il > 95%:
Il comando df -h indica che /var/log ha una capacità utilizzata molto elevata e sta crescendo rapidamente.
Resolution
Per correggere la rotazione dei registri negli appliance VxFlex Manager con inoltro syslog abilitato, è possibile configurare logrotate, comprimere i log esistenti, modificare le impostazioni rsyslog e abbassare i livelli dei log di debug utilizzando la seguente procedura:
Passaggio 1. Accedere tramite SSH a VxFlex Manager e diventare utente root: sudo su -
Passo 2: Modificare (vi editor) le regole syslog logrotate assicurandosi che il testo seguente esista in /etc/logrotate.d/syslog
/var/log/cron /var/log/maillog /var/log/messages /var/log/secure /var/log/spooler { size 100M nodateext rotate 5 compress missingok copytruncate postrotate /bin/killall -s SIGHUP -r rsyslog endscript }
Passaggio 3. Inserire il seguente comando per verificare se la nuova configurazione è stata salvata correttamente:
cat /etc/logrotate.d/syslog
Passaggio 4. A seconda della velocità con cui lo spazio /var/log si sta riempiendo, scegliere una delle seguenti opzioni:Per
gli ambienti che non riempiono /var/log su base giornaliera, ma che necessitano di una rotazione più rapida di quella settimanale, modificare logrotate da settimanale a giornaliero utilizzando il seguente comando:
cp /etc/cron.weekly/logrotate /etc/cron.daily/
Per gli ambienti che riempiono /var/log più velocemente di quanto la rotazione giornaliera possa ospitare, modificare logrotate da daily a hourly utilizzando il seguente comando:
cp /etc/cron.daily/logrotate /etc/cron.hourly/
Passaggio 5. Comprimere i file esistenti e liberare spazio eseguendo il seguente comando:
for log in `ls /var/log/messages-*`; do sudo gzip $log; done
Nota: Se il file /var/log/messages è così pieno che non è possibile comprimerlo, utilizzare il seguente comando per cancellarlo:
cat /dev/null > /var/log/messages
Passaggio 6. Per verificare se la configurazione logrotate funziona correttamente, eseguire il seguente comando:
logrotate -f /etc/logrotate.d/syslog
Passaggio 7. Per interrompere la registrazione degli eventi syslog inoltrati nel file /var/log/messages sull'appliance VxFlex Manager, effettuare le seguenti operazioni:
- Creare il file conf in /etc/rsyslog.d/ usando questo comando:
vi 21-stop-remote-host-syslog-logging.conf - Aggiungere la seguente riga al file appena creato in precedenza:
if $fromhost-ip != '127.0.0.1' then ~ - Salvare il file digitando quanto segue:
:wq! - Riavviare il servizio rsyslog:
systemctl restart rsyslog.service
Nota: 21 è il numero di priorità utilizzato per rsyslog. Dopo il riavvio, rsyslog non salverà i syslog remoti in ingresso in /var/log/messages. I syslog locali di VxFlex Manager verranno comunque salvati in /var/log/messages.
Nota: Anche se l'inoltro Syslog non è abilitato su VxFlex Manager, gli host possono essere indirizzati a VxFlex Manager, che può inviare spam al file /var/log/messages. Configurare il passaggio 7 se il file dei messaggi viene inondato, indipendentemente dal fatto che VxFlex Manager syslog sia attivo o meno.
Passo 8: Modificare il livello di registrazione di debug di logstash nell'appliance VxFlex Manager effettuando le seguenti operazioni:
- Modificare il livello di registrazione utilizzando il seguente comando:
vi /etc/logstash/logstash.yml - Cercare le impostazioni di debug nel file
- Modificare il livello di registro da info (predefinito) a error

- Modificare il file seguente: vi /etc/logstash/log4j2.properties
- Nella configurazione predefinita c'è una riga che inizia con rootLogger.appenderRef.console commenta questa riga usando # come di seguito:
-
Riavviare il servizio logstash eseguendo quanto segue: systemctl riavvio logstash
Passaggio 8: Riavviare l'appliance VxFlex Manager se il file system /var/log è pieno al 100%. Ciò garantisce che tutti i servizi avviino correttamente il backup.
Nota: Inviare un avviso di test per assicurarsi che il connettore degli avvisi funzioni correttamente dopo aver risolto i problemi di spazio e aver riavviato l'appliance.
Additional Information
- È in corso una correzione per interrompere la registrazione dei messaggi syslog in /var/log/messages per una versione futura di VxFlex Manager.
- Ciò è rilevante per tutte le versioni di VxFlex Manager che dispongono della funzionalità di inoltro syslog fino alla versione 3.4.0.4271 inclusa.