Avamar: NDMP-varmuuskopiointi epäonnistuu ja taltiomuistin segmentointivika on traaginen signaali 11
Summary: Avamar Network Data Management Protocol (NDMP) -varmuuskopiointi voidaan keskeyttää "Fatal signal 11" (segmentointivika) -toiminnolla, kun erittäin suuresta tietokannasta (kuten 5 Tt, 3 Mt:n tiedostosta) suoritetaan useita virtoja, jolloin tarvitaan noin 15 Gt RAM-muistia tai SWAP-muistia ja ylitetään muistirajat. Voit ratkaista ongelman jakamalla taltion, vähentämällä samanaikaisia varmuuskopiointeja tai tiedostojen määrää, varmuuskopioimalla alemman hakemistotason tai lisäämällä rinnakkaisia virtoja. ...
Symptoms
Varmuuskopiointivirheiden ilmoitukset
Seuraavat oireet havaitaan, kun Avamar NDMP -varmuuskopiossa ilmenee segmentointivirhe (signaali 11):
- Varmuuskopiointityö keskeytyy ja näyttöön tulee tämänkaltainen vakava virheilmoitus:
2017-10-13 19:42:00 avtar FATAL <5889>: Fatal signal 11 in pid 31103
- Lokimerkinnät osoittavat epätavallisen suuria käsiteltäviä tietojoukkoja, esimerkiksi:
avtar Info <8688>: Status 2017-10-13 19:32:37, 3,050,352 files, 2,419,299 directories, 5,119 GB (3,050,352 files, 1.913 GB, 41.42% new) 15049MB 60% CPU (1 open files)
- Muistin kulutuksen ilmoitetaan olevan suuri, usein yli 15 Gt RAM/SWAP-muistia yhdessä varmuuskopiovirrassa.
- Aktiivisia NDMP-virtoja on useita (enintään 8 asiakasta kohti), joista jokainen voi käyttää vähintään 2 Gt muistia.
- Useita suuria varmuuskopioita voidaan suorittaa samanaikaisesti, mikä lisää järjestelmän kokonaiskuormitusta.
- Kyseinen taltio sisältää miljoonia tiedostoja ja hakemistoja (kuten 3 miljoonaa tiedostoa 2,4 M:n hakemistoissa, jotka kattavat 5,1 Tt tietoa).
- Vaikka vain pieni tietomäärä olisi muuttunut (esim. 1,9 Gt), varmuuskopiointiprosessi yrittää lähettää jokaisen NAS:n tiedoston käsiteltäväksi.
Cause
Taustalla olevat tekijät, jotka laukaisivat kohtalokkaan signaalin 11.
Signaali 11 (segmentointivika) syntyy, kun prosessi käyttää muistia, jota ei ole varattu sille. Seuraavat olosuhteet aiheuttivat tämän tapahtuman suoraan Avamar NDMP -varmuuskopioinnin aikana:
- Useita suuria NDMP-varmuuskopioita oli käynnissä samanaikaisesti.
- Yksi varmuuskopio käsitteli 3 050 352 tiedostoa ja 2 419 299 hakemistoa, yhteensä 5,1 Tt tietoa, kun taas vain 1,9 Gt näistä tiedoista oli muuttunut.
- Jokainen NDMP-virta voi kuluttaa ≥ 2 Gt muistia. Asiakkaalle sallittiin enintään 8 virtaa, ja useita asiakkaita oli aktiivisia samanaikaisesti, mikä johti korkeaan muistin kokonaistarpeeseen.
- Varmuuskopiointiin käytettiin ennen kaatumista noin 15 Gt RAM/SWAP-muistia.
- Avamar rajoittaa asiakaskohtaisten striimien määrää, muttei aseta yleistä rajoitusta striimien kokonaismäärälle. Tämän ansiosta muistin yhteenlaskettu käyttö ylittää käytettävissä olevat resurssit.
Nämä muistia vaativat olosuhteet aiheuttivat avtar-prosessille segmentointivirheen, joka kirjattiin lokiin seuraavasti:
2017-10-13 19:42:00 avtar FATAL <5889>: Fatal signal 11 in pid 31103
Resolution
Signaalin 11 (segmentointivirhe) aiheuttamien Avamar NDMP -varmuuskopiointivirheiden korjaaminen
Vaihe 1 - Arvioi nykyinen varmuuskopiointikuorma.
Käytä Avamar-hallintakonsolia tai komentoriviliittymää tunnistaaksesi asemat, jotka luovat suuria NDMP-varmuuskopioita.
Luettelo aktiivisista NDMP-töistä ja niiden resurssien käytöstä:
$ avtar -listjobs -type ndmp
Vaihe 2 - Vähennä samanaikaisia äänenvoimakkuuden varmuuskopioita.
- Rajoita samanaikaisesti varmuuskopioitavien asemien määrää liiallisen RAM-muistin/SWAP-kulutuksen välttämiseksi.
- Muokkaa varmuuskopiointiaikataulua Avamar Administrator -järjestelmässä ja poista päällekkäisten ikkunoiden valinnat.
Vaihe 3 - Jaa suuret volyymit pienempiin osamääriin
- Tunnista taltiot, joissa on yli 3 miljoonaa tiedostoa tai yli 5 Tt tietoja (kuten esimerkissä).
- Luo loogisia alitaltioita yhtä tasoa alempana hakemistopuussa.
- Kunkin aliaseman määrittäminen erilliseksi NDMP-asiakkaaksi Avamarissa
- Esimerkki: Uuden NDMP-asiakkaan luominen alihakemistolle
$ avtar -addclient -name subvol1 -path /data/level2/subvol1
Vaihe 4 - Säädä NDMP-virta-asetuksia.
- Lisää asiakaskohtaista NDMP-virtojen enimmäismäärää, jos NAS tukee sitä.
- Nosta NAS:n NDMP-määrityksessä virtaraja oletusarvosta 4:sta aina 8:aan, jos mahdollista.
Vaihe 5 - Rajoita tiedostoja streamia kohti
- Kun luot varmuuskopiointikäytäntöjä, määritä matalampi tiedostovirtaa kohden -kynnys, jotta tietovirran muistin tilantarve pysyy alle 2 gigatavussa.
- Voit säätää tätä arvoa Avamar Administrator → Policies- → Advanced Settings -asetusten avulla.
Vaihe 6 - Seuraa muistin käyttöä varmuuskopioinnin aikana
- Katso RAM-muistin ja swap-muistin käyttöä Avamar-palvelimella varmuuskopioinnin aikana.
- Varmista, että käyttö pysyy selvästi alle käytettävissä olevan muistin kokonaismäärän (esimerkiksi alle 12 Gt 15 Gt:n työssä).
- Reaaliaikainen muistin valvonta
$ top -b -n 1 | grep avtar
Vaihe 7 – Vahvista korjaus
- Tee aiemmin epäonnistunut varmuuskopiointi uudelleen.
- Varmista, että loki ei enää sisällä
Fatal signal 11viesti. - Varmista, että varmuuskopiointi onnistuu ja että raportoitu tietokoko vastaa odotuksia.
- Tarkista viimeisin varmuuskopioloki virheiden varalta
$ tail -n 50 /var/log/avtar/backup.log