VPN серверинин дискинин өсүшү кайдан келет жана аны кантип чектөө керек
Журналдын өсүшү, аты өзгөртүлгөн inode жана чексиз journal: баары бир толук диск катары көрүнөт. Ылдамдыкты өлчөңүз, жазуучуну чектеңиз жана кайра иштетүүдөн кийин чекти текшериңиз.
Туннель туташууларды кабыл алууну токтотот, кызмат эки жолу кайра иштетилет, андан кийин анын журналында эч нерсе көрүнбөйт. Ошол тынчтык белги, анткени дискини толтурган журнал жана демондун күтүп жаткан катаңызды жазар жери жок. Узак иштеген ар кандай кызмат ушундай абалга жетиши мүмкүн, ал эми logs деген папканы өчүрүү аны сейрек оңдойт. Бекем чечим кайсы сактоо өскөнүн, анын сактоо саясаты кимге таандык экенин жана жазуучу мейкиндикти чындап бошотконун билүү.
Өскөн сактоону жана анын өсүү ылдамдыгын табыңыз
Унутууга жеңил эки сандан баштаңыз: бош блоктор жана бош inode'лор. Файлдык система көп орун тууралуу билдирип, бирок inode'лор түгөнгөндүктөн жазуудан баш тартышы мүмкүн, бул кызмат ар бир сессияга бир файл түзгөндө болот. Эки көрсөткүчтү тең ошол эле көлөмдөн сураңыз, анткени жооптор ошол эле түштөн кийин дал келбеши мүмкүн. Муну хост соо кезде жасаңыз, сандар кадимки ишти сүрөттөсүн, бузулушту эмес.
df -h /var
df -i /varАндан кийин өсүштү ээсине таандык кылыңыз. journal'дын өзүнүн керектөө көрсөткүчү журналды гана камтыйт жана конфигурация файлындагы жолго жазуучу демонду эч качан көрбөйт.
journalctl --disk-usageУбакыт боюнча өсүш ар кандай жеке өлчөөдөн көп нерсе айтат. Күйүк калтырылган жөндөө деңгээли, ар бир аракетти журналга жазуучу кайталоо цикли же эч ким токтотпогон кармоо файлы: алардын ар бири бир учурда кадимки, ал эми бир сааттан кийин тынчсыздандырарлык көрүнүшү мүмкүн. Бир өлчөө алыңыз, тыгыз мезгилди күтүңүз, экинчисин алыңыз жана аралыкка бөлүңүз. Атай алган ылдамдык сыйымдуулукту өрт эмес, чечимге айландырат.
Айландыруу ачык файлга эмне кылат
Журнал файлы inode'го шилтеме берген ат, ал эми мейкиндик акыркы ачык тутка жабылганда гана кайтат. Файлдын атын өзгөртсөңүз, жазуучу ошол эле inode'ду толтура берет; өчүрсөңүз, жазуучу такыр атсыз inode'ду толтура берет. Ушул абал «файлды өчүрдүм, бирок диск толук бойдон калды» деген сүйлөмдүн бузулган файлдык системаны эмес, файл дескрипторлорун сүрөттөөрүн түшүндүрөт. Жазуучуну кайра иштетүү же файлды кайра ачуучу айландыруу режимин тандоо блокторду чындап кайтарган нерсе.
lsof +L1 | headСаясат файлды жазуучу компонентке таандык. Journal өзүнүн сактоо чектерин өзүнүн конфигурация файлынан колдонот, ал эми файлга негизделген кызмат адатта logrotate'ке таянат: же түзүү эрежеси жана кайра ачуу сигналы менен, же жазуучу кайра ача албаганда ордунда кыркып кыскартуу режими менен. Адегенде эч нерсени өзгөртпөй чечимди ырастаңыз:
logrotate -d /etc/logrotate.confЧек кайда болушу керек жана канчалык чоң болушу керек
Чекти жазуучу конфигурацияланган жерге коюңуз, туташуу чекитине эмес. Бүтүндөй көлөмгө квота хостту коргойт, бирок кайсы кызмат биринчи иштебей каларын айтпайт, ал эми глобалдык тазалоо скрипти кийинки окуяга керектүү далилдерди өчүрүүгө ыктайт. Journal чеги, эң чоң өлчөмү бар айландыруу саны жана колдонмо деңгээлиндеги сактоо: ар бири бир өндүрүүчүнү чектейт. Чогуу алар жалпыны чектейт; өзүнчө ар бири божомол.
Бул чекти коргой алган сактоо мөөнөтүнөн өлчөңүз, бош мейкиндиктен эмес. Эгер кароого бир жума туташуу аракети керек болсо, journal эң тыгыз күтүлгөн ылдамдыкта бир жуманы сакташы керек, жана бул ылдамдык мурун өлчөнгөн сан.
Жөндөө журналы башталуу убактысы жазылган убактылуу режим, сактоо планы эмес. Купуялуулук маселесин ошол эле чечимдин ичинде кармаңыз, анткени туташуу журналдары даректерди жана идентификаторлорду алып жүрөт. Узунураак сактоо да маалымат иштетүү тандоосу жана аны эки чектөөнү тең билген адам кабыл алышы керек.
Кайра иштетүүдөн кийин чекти текшериңиз
Кийинки кайра жүктөөгө чейин созулган сактоо өзгөрүүсү өзгөрүү эмес. Жазуучуну кайра иштетиңиз, жаңы чек колдонулаарын ырастаңыз жана андан кийин айландыруу дагы эле иштеп жатканын текшериңиз. Journal үчүн бир кайра иштетүү жана бир керектөө өлчөө эки суроого тең жооп берет:
systemctl restart systemd-journald
journalctl --disk-usageФайлга негизделген кызмат үчүн айландыруу ишин бир жолу кол менен иштетиңиз жана файл алмаштырылганын, дескриптор кайра ачылганын ырастаңыз. Эски тутканы кармап турган жазуучу үстүртөн текшерүүдөн өтөт жана кийинки жолу көлөм толгондо иштебей калат. Сыноо учурунда бош мейкиндикти байкаңыз, анткени файл кичирейип, мейкиндик кайтпаса, эски inode дагы эле кармалып турат.
Кийинки өлчөөнү ушуну менен салыштырыңыз
Бир жумадан кийин кайтып, өсүү ылдамдыгын жазылган менен салыштырыңыз. Дал келген ылдамдык чек кармап турганын жана жүк туруктуу экенин билдирет; эки эсе ылдамдык бир нерсе өзгөргөнүн билдирет, ал эми пайдалуу суроо эмне өзгөрдү. Адегенде журналдын мазмунун кайталануучу ийгиликсиздиктер үчүн окуңуз, анткени кайталоо цикли бир эле учурда симптом да, көлөмдүн себеби да. Андан кийин жаңыдан күйгүзүлгөн нерселердин баарын текшериңиз, анын ичинде окуя учурунда күйгүзүлүп, эч качан өчүрүлбөгөн жөндөө деңгээлдери.
Камдык көчүрмөлөрдү ошол эле көлөмдөн тышкары кармаңыз же бир толук диск көчүрмөнү да алып кетээрин кабыл алыңыз. Өзү коргогон хостко жазылган көчүрмө калыбына келтирүү планы эмес, жана анын сакталышы өзүнүн жообун талап кылат.
Эмне, кайда, канча убакыт сакталаарын жана ким өчүрөөрүн жазыңыз. Ошол сүйлөм натыйжа, жана бул иштин кийинки кайра иштетүүдөн аман калган жалгыз бөлүгү.