PowerFlex-rack: Problemen met /var/log-ruimte wanneer de functie voor het doorsturen van syslog is ingeschakeld
Summary: In dit artikel wordt het probleem in /var/log space uitgelegd omdat logrotatie niet vaak genoeg voorkomt.
Symptoms
De huidige logrotate-configuratie roteert het berichtenbestand één keer per week, maar in gevallen waarin syslog-forwarding is ingeschakeld in VxFlex Manager, roteert het mogelijk niet snel genoeg.
Feiten:
- De functie voor het doorsturen van syslog is ingeschakeld in VxFlex Manager.
- De partitie /var/log raakt snel vol.
- Dit kan sterk verschillen van systeem tot systeem
- Remote Syslog is ingeschakeld op apparaten in het geïntegreerde VxFlex rack- of apparaatsysteem en is geconfigureerd voor het verzenden van syslog-gebeurtenissen naar VxFlex Manager
Cause
De resource-inventaris mislukt voor alle bronnen wanneer het /var/log-bestandssysteem 100% is.
Opmerking: De waarschuwingen of kritieke waarschuwingen die hieronder worden vermeld, werken mogelijk niet als de ruimte te vol is om deze controles uit te voeren of als deze te snel vol raakt.
- De VxFlex Manager-gebruikersinterface geeft een waarschuwing weer als 75 >%:
Gebruikersinterface VxFlex Manager wordt kritiek weergegeven als > 95%:
De df -h geeft aan dat /var/log een zeer hoge gebruikte capaciteit heeft en snel groeit.
Resolution
Als u logboekrotatie wilt oplossen op VxFlex Manager-appliances waarbij syslog forwarding is ingeschakeld, kunt u met behulp van de volgende stappen logrotatie configureren, bestaande logboeken comprimeren, rsyslog-instellingen wijzigen en logboekniveaus voor foutopsporing verlagen:
Stap 1: ssh naar VxFlex Manager en rootgebruiker worden: sudo su -
Stap 2: Bewerk (vi editor) syslog logrotate regels door ervoor te zorgen dat de volgende tekst bestaat 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 }
Stap 3: Voer de volgende opdracht in om te controleren of de nieuwe configuratie correct is opgeslagen:
cat /etc/logrotate.d/syslog
Stap 4: Afhankelijk van hoe snel de /var/log-ruimte vol raakt, kiest u een van de volgende opties:
Voor omgevingen die /var/log niet dagelijks vullen, maar een rotatie nodig hebben die sneller is dan wekelijks, wijzigt u logrotate van wekelijks naar dagelijks met behulp van de volgende opdracht:
cp /etc/cron.weekly/logrotate /etc/cron.daily/
Voor omgevingen die /var/log sneller vullen dan dagelijkse rotatie kan accommoderen, wijzigt u logrotate van dagelijks in uurlijk met behulp van de volgende opdracht:
cp /etc/cron.daily/logrotate /etc/cron.hourly/
Stap 5: Comprimeer bestaande bestanden en maak ruimte vrij door de volgende opdracht uit te voeren:
for log in `ls /var/log/messages-*`; do sudo gzip $log; done
Opmerking: Als het bestand /var/log/messages zo vol is dat je het niet kunt zippen, gebruik dan de volgende opdracht om het te wissen:
cat /dev/null > /var/log/messages
Stap 6: Voer de volgende opdracht uit om te controleren of de logrotate-configuratie goed werkt:
logrotate -f /etc/logrotate.d/syslog
Stap 7: Ga als volgt te werk om te stoppen met het registreren van doorgestuurde syslog-gebeurtenissen naar het bestand /var/log/messages op de VxFlex Manager appliance:
- Maak het conf-bestand aan onder /etc/rsyslog.d/ met deze opdracht:
vi 21-stop-remote-host-syslog-logging.conf - Voeg de volgende regel toe aan het zojuist gemaakte bestand hierboven:
if $fromhost-ip != '127.0.0.1' then ~ - Sla het bestand op door het volgende te typen:
:wq! - Start de rsyslog-service opnieuw:
systemctl restart rsyslog.service
Opmerking: 21 is het prioriteitsnummer dat wordt gebruikt voor rsyslog. Na het opnieuw opstarten worden de inkomende externe syslogs niet opgeslagen in /var/log/messages. De lokale syslogs van VxFlex Manager worden nog steeds opgeslagen in /var/log/messages.
Opmerking: Zelfs als syslog forwarding niet is ingeschakeld op VxFlex Manager, kunnen hosts worden verwezen naar VxFlex Manager, die het bestand /var/log/messages kan spammen. Configureer stap 7 als het berichtenbestand overstroomd raakt, ongeacht of VxFlex Manager syslog is ingeschakeld of niet.
Stap 8: Wijzig het logboekregistratieniveau voor foutopsporing van logstash in de VxFlex Manager-appliance door de volgende stappen uit te voeren:
- Bewerk het registratieniveau met de volgende opdracht:
vi /etc/logstash/logstash.yml - Zoek naar foutopsporingsinstellingen in het bestand
- Wijzig het logboekniveau van info (standaard) in fout

- Bewerk het volgende bestand: vi /etc/logstash/log4j2.properties
- In de standaardconfiguratie is er een regel die begint met rootLogger.appenderRef.console becommentarieer deze regel met # zoals hieronder:
-
Start de logstash-service opnieuw door het volgende uit te voeren: Systemctl restart logstash
Stap 8: Start de VxFlex Manager appliance opnieuw op als het /var/log-bestandssysteem 100% vol was. Dit zorgt ervoor dat alle services de back-up correct starten.
Notitie: Verzend een testwaarschuwing om te controleren of de meldingsconnector goed werkt na het oplossen van ruimteproblemen en het opnieuw opstarten van het apparaat.
Additional Information
- Er wordt gewerkt aan een oplossing voor het stoppen van het loggen van syslog-berichten naar /var/log/messages voor een toekomstige release van VxFlex Manager.
- Dit is relevant voor alle versies van VxFlex Manager met de functie voor het doorsturen van syslog tot en met versie 3.4.0.4271.