Kust VPN-serveri kettaruumi kasv tuleb ja kuidas seda piirata
Logide kasv, ümbernimetatud inode ja piiramata journal näivad kõik ühe täis kettana. Mõõtke tempo, piirake kirjutaja ja kontrollige piiri pärast taaskäivitust.
Tunnel lakkab ühendusi vastu võtmast, teenus taaskäivitub kaks korda ja seejärel ei ilmu selle logisse midagi. See vaikus on vihje, sest ketta täitis just logi ja deemonil pole kuhugi kirjutada viga, mida ootate. Ükskõik milline kaua töötav teenus võib sellesse olekusse sattuda ja logs-nimelise kataloogi kustutamine parandab seda harva. Kestev lahendus on teada, milline hoidla kasvas, kes vastutab selle säilitamise eest ja kas kirjutaja tegelikult ruumi vabastas.
Leidke hoidla, mis kasvas, ja tempo, millega see kasvas
Alustage kahe kergesti ununeva numbriga: vabad plokid ja vabad inode’id. Failisüsteem võib teatada ohtrast ruumist ja ikkagi kirjutamisest keelduda, sest inode’id on otsas, mis juhtub siis, kui teenus loob ühe faili seansi kohta. Küsige mõlemat näitu samalt köitelt, sest vastused võivad samal pärastlõunal lahkneda. Tehke seda siis, kui host on terve, et numbrid kirjeldaksid tavapärast tööd, mitte katkestust.
df -h /var
df -i /varSeejärel omistage kasv omanikule. Journali enda kasutusnumber hõlmab ainult journali ega näe kunagi deemonit, mis kirjutab oma konfiguratsioonifailist tulnud teele.
journalctl --disk-usageKasv ajas ütleb rohkem kui ükski üksik näit. Sisse jäänud silumistase, iga katset logiv korduskatse tsükkel või püüdmisfail, mida keegi ei peatanud: igaüks neist võib ühel hetkel tavalina ja tund hiljem murettekitavana näida. Võtke üks näit, oodake hõivatud periood üle, võtke teine ja jagage intervalliga. Tempo, mida oskate nimetada, muudab võimsuse otsuseks, mitte tulekahjuks.
Mida rotatsioon avatud failiga teeb
Logifail on nimi, mis osutab inode’ile, ja ruum tuleb tagasi alles siis, kui viimane avatud käepide sulgub. Nimetage fail ümber ja kirjutaja jätkab sama inode’i täitmist; kustutage see ja kirjutaja jätkab inode’i täitmist hoopis ilma nimeta. Just seetõttu kirjeldab lause „kustutasin faili ja ketas jäi täis“ failikirjeldajaid, mitte katkist failisüsteemi. Kirjutaja taaskäivitamine või rotatsioonirežiimi valimine, mis faili uuesti avab, on see, mis plokid tegelikult tagasi annab.
lsof +L1 | headPoliitika kuulub komponendile, mis faili kirjutab. Journal kehtestab oma salvestuspiirid oma konfiguratsioonifailist, samas kui failipõhine teenus toetub tavaliselt logrotate’ile, kas loomisreegli ja taasavamissignaali või kohapeal kärpimise režiimiga, kui kirjutaja ei saa faili uuesti avada. Kinnitage otsus esmalt midagi muutmata:
logrotate -d /etc/logrotate.confKuhu piir kuulub ja kui suur see peaks olema
Pange piir sinna, kus kirjutaja on konfigureeritud, mitte haakepunkti. Kvoot kogu köitele kaitseb hosti, kuid ei ütle, milline teenus esimesena katkeb, ja globaalne koristusskript kipub kustutama tõendeid, mida järgmine juhtum vajab. Journali piir, maksimaalse suurusega rotatsioonide arv ja rakenduse tasandi säilitamine piiravad igaüks ühte tootjat. Koos piiravad nad kogusummat; eraldi on igaüks oletus.
Määrake see piir säilitusaja järgi, mida suudate kaitsta, mitte vaba ruumi järgi. Kui ülevaatamiseks on vaja nädalat ühenduskatseid, peab journal hoidma nädalat kõige hõivatumal eeldataval tempol, ja see tempo on varem mõõdetud number.
Silumislogi on ajutine režiim, mille algusaeg on kirja pandud, mitte salvestusplaan. Hoidke privaatsusküsimus sama otsuse sees, sest ühenduslogid kannavad aadresse ja identifikaatoreid. Pikem säilitamine on ka andmetöötlusvalik ja selle peaks tegema keegi, kes teab mõlemat piirangut.
Kontrollige piiri pärast taaskäivitust
Säilitusmuudatus, mis kestab järgmise taaskäivituseni, ei ole muudatus. Taaskäivitage kirjutaja, kinnitage, et uus piir kehtib, ja kontrollige, et rotatsioon töötab ka pärast seda. Journali puhul vastavad üks taaskäivitus ja üks kasutusnäit mõlemale küsimusele:
systemctl restart systemd-journald
journalctl --disk-usageFailipõhise teenuse puhul käivitage rotatsioonitöö üks kord käsitsi ja kinnitage, et fail asendati ja kirjeldaja avati uuesti. Vana käepideme jätnud kirjutaja läbib pealiskaudse kontrolli ja ebaõnnestub järgmisel korral, kui köide täis saab. Jälgige testi ajal vaba ruumi, sest fail, mis vähenes, samal ajal kui ruum ei tulnud tagasi, tähendab, et vana inode on endiselt kinni hoitud.
Võrrelge järgmist näitu sellega
Tulge nädala pärast tagasi ja võrrelge kasvutempot kirjapanduga. Sobiv tempo tähendab, et piir peab ja koormus on stabiilne; kahekordistunud tempo tähendab, et midagi muutus, ja kasulik küsimus on mis. Lugege esmalt logi sisu korduvate tõrgete osas, sest korduskatse tsükkel on korraga nii sümptom kui ruumimahu põhjus. Seejärel kontrollige kõike äsja lubatut, sealhulgas silumistasemeid, mis lülitati juhtumi ajal sisse ega lülitatud kunagi välja.
Hoidke varukoopiad samast köitest eemal või leppige sellega, et üks täis ketas viib varukoopia endaga kaasa. Hostile, mida see kaitseb, kirjutatud koopia ei ole taastamisplaan, ja selle säilitamine vajab eraldi vastust.
Kirjutage üles, mida säilitatakse, kus, kui kaua ja kes selle eemaldab. See lause on tulemus ja see on ainus osa sellest tööst, mis järgmise taaskäivituse üle elab.