PowerFlex-kehikko: /var/log space -ongelmat, kun Syslog-edelleenlähetysominaisuus on käytössä
Summary: Tässä artikkelissa selitetään /var/log-tilan ongelma, joka johtuu siitä, että lokin kiertoa ei tapahdu riittävän usein.
Symptoms
Nykyinen logrote-määritys kiertää viestitiedostoa kerran viikossa, mutta jos syslog-edelleenlähetys on otettu käyttöön VxFlex Managerissa, se ei välttämättä kierrä tarpeeksi nopeasti.
Faktat:
- Syslog-edelleenlähetysominaisuus on otettu käyttöön VxFlex Managerissa.
- /var/log-osio täyttyy nopeasti.
- Tämä voi vaihdella suuresti järjestelmästä toiseen
- Etäsyslog on käytössä laitteissa, joissa on integroitu VxFlex-kehikko- tai -laitejärjestelmä ja määritetty lähettämään syslog-tapahtumia VxFlex Manageriin
Cause
Resurssivarasto epäonnistuu kaikkien resurssien osalta, kun /var/log-tiedostojärjestelmän arvo on 100 %.
Huomautus: Alla luetellut varoitukset tai kriittiset hälytykset eivät välttämättä toimi, jos tila on liian täynnä tarkistusten suorittamiseen tai jos se täyttyy liian nopeasti.
- VxFlex Manager -käyttöliittymä näyttää varoituksen, jos >75 %:
VxFlex Manager -käyttöliittymä näyttää kriittisen, jos > 95%:
Df -h osoittaa, että /var/log on erittäin suurella käyttökapasiteetilla ja kasvaa nopeasti.
Resolution
Voit korjata lokin kierron VxFlex Manager -laitteissa, joissa syslog-edelleenlähetys on käytössä, määrittämällä logrotaten, pakkaamalla aiemmin luodut lokit, muuttamalla rsyslog-asetuksia ja alentamalla virheenkorjauslokin tasoja seuraavasti:
Vaihe 1: Siirry ssh:sta VxFlex Manageriin ja ryhdy root-käyttäjäksi: sudo su -
Vaihe 2: Muokkaa (vi editor) syslog logrotate -sääntöjä varmistamalla, että seuraava teksti on olemassa /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 }
Vaihe 3: Tarkista seuraavalla komennolla, onko uusi määritys tallennettu oikein:
cat /etc/logrotate.d/syslog
Vaihe 4: Valitse jokin seuraavista vaihtoehdoista sen mukaan, miten nopeasti /var/log-tila täyttyy:
Jos ympäristö ei täytä /var/log-tiedostoa päivittäin, mutta tarvitsee viikoittaista kiertoa, muuta logrotate viikoittaisesta päivittäiseksi seuraavalla komennolla:
cp /etc/cron.weekly/logrotate /etc/cron.daily/
Jos ympäristö täyttyy /var/log nopeammin kuin päivittäinen kierto mahtuu, muuta logrotate päivittäisestä tuntikohtaiseksi seuraavalla komennolla:
cp /etc/cron.daily/logrotate /etc/cron.hourly/
Vaihe 5: Pakkaa olemassa olevat tiedostot ja vapauta tilaa suorittamalla seuraava komento:
for log in `ls /var/log/messages-*`; do sudo gzip $log; done
Huomautus: Jos /var/log/messages-tiedosto on niin täynnä, ettei sitä voi pakata, tyhjennä se seuraavalla komennolla:
cat /dev/null > /var/log/messages
Vaihe 6: Tarkista logrote-määrityksen toimivuus seuraavalla komennolla:
logrotate -f /etc/logrotate.d/syslog
Vaihe 7: Voit lopettaa välitettyjen syslog-tapahtumien kirjaamisen VxFlex Manager -laitteen /var/log/messages-tiedostoon seuraavasti:
- Luo conf-tiedosto kansioon /etc/rsyslog.d/ seuraavalla komennolla:
vi 21-stop-remote-host-syslog-logging.conf - Lisää seuraava rivi yllä olevaan äskettäin luotuun tiedostoon:
if $fromhost-ip != '127.0.0.1' then ~ - Tallenna tiedosto kirjoittamalla seuraava:
:wq! - Käynnistä rsyslog-palvelu uudelleen:
systemctl restart rsyslog.service
Huomautus: 21 on RSYSLOGissa käytettävä prioriteettinumero. Uudelleenkäynnistyksen jälkeen rsyslog ei tallenna saapuvia etäsyslogeja kansioon /var/log/messages. VxFlex Managerin paikalliset järjestelmälokit tallennetaan edelleen kansioon /var/log/messages.
Huomautus: Vaikka syslog-edelleenlähetys ei olisi käytössä VxFlex Managerissa, isännät voidaan ohjata VxFlex Manageriin, joka saattaa lähettää roskapostia /var/log/messages-tiedostoon. Määritä vaihe 7, jos viestitiedosto tulvii, riippumatta siitä, onko VxFlex Manager syslog käytössä vai ei.
Vaihe 8: Muuta VxFlex Manager -laitteen lokitietojen virheenkorjauksen kirjaustasoa seuraavasti:
- Muokkaa kirjaamistasoa seuraavalla komennolla:
vi /etc/logstash/logstash.yml - Etsi tiedostosta virheenkorjausasetukset
- Lokin tason muuttaminen infosta (oletus)virheeksi

- Muokkaa seuraavaa tiedostoa: vi /etc/logstash/log4j2.properties
- Oletuskokoonpanossa on rivi, joka alkaa rootLogger.appenderRef.console, kommentoi tätä riviä käyttämällä # kuten alla:
-
Käynnistä logstash-palvelu uudelleen suorittamalla seuraava komento: Systemctl restart logstash
Vaihe 8: Käynnistä VxFlex Manager -laite uudelleen, jos /var/log-tiedostojärjestelmä oli täysin täynnä. Näin varmistetaan, että kaikkien palveluiden varmuuskopiointi aloitetaan oikein.
Muistiinpano: Lähetä testihälytys varmistaaksesi, että hälytysliitäntä toimii oikein, kun olet ratkaissut tilaongelmat ja käynnistät laitteen uudelleen.
Additional Information
- Korjausta, joka lopettaa syslog-viestien kirjaamisen kansioon /var/log/messages, valmistellaan VxFlex Managerin tulevaa versiota varten.
- Tämä koskee kaikkia VxFlex Managerin versioita, joissa on syslog-edelleenlähetysominaisuus versioon 3.4.0.4271 asti.