ZFS import hangt

Pagina: 1
Acties:

Onderwerpen

Vraag


Acties:
  • 0 Henk 'm!

  • arneKlaver
  • Registratie: Augustus 2020
  • Laatst online: 27-02-2021
Ik heb wat problemen met het importeren van mijn zfs-pool naar een nieuwe machine.

kort:
Wanneer ik mijn pool probeer te importeren (zpool import poolnaam), blijft de opdracht hangen en kan ik geen zfs-opdrachten meer uitvoeren. (getest op: freenas, ubuntu, debian, freeBSD)

Lang:
Eerder draaide ik de Xen-server met een FreeNAS VM, maar nu probeer ik over te schakelen naar een andere machine en mijn ZFS-pool op Ubuntu (geen VM) te draaien .

Voordat ik probeerde over te schakelen naar ubuntu, kwam ik al een aantal problemen tegen. Een van mijn schijven ging kapot dus had ik er een nieuwe schijf ingestopt en een resilver gestart alles ging goed, behalve dat ik wat gegevens kwijt was.
Ik vermoed dat dit gebeurt is omdat ik geen scrubs deed (erg dom van me) maar er ging niets belangrijks verloren. na het verzilveren had ik een zpool-status van gedegradeerd en elke keer dat ik opnieuw opstartte, begon mijn pool opnieuw met een resilver.
om dit op te lossen en mijn pool in een goede staat te krijgen, probeerde ik een zpool clean, maar deze opdracht bevroor en ik kon geen toegang meer krijgen tot mijn gegevens? Hier werd ik een beetje bang, maar na een reboot en daarna opnieuw een resilver had ik mijn data terug. Hierna heb ik eerst een scrub gedaan en daarna een zpool clean en alles was in orde en mijn pool was in een online staat, geen fouten.

Op dit punt besloot ik om een ​​export uit te voeren en te proberen de pool op een nieuwe machine te importeren. als ik zpool import doe krijg ik mijn pool te zien zonder errors. maar elke keer dat ik heb dan probeer te importeren zpool import poolnaam loopt het vast en kan ik geen zfs-commando's meer uitvoeren. (getest op: freenas, ubuntu, debian)

Als ik in ubuntu dmesg kijk, zegt het me een slechte RIP-waarde. en dat het proces vastzit ... seconden.

Heeft iemand een idee wat ik kan doen om dit op te lossen?

[ Voor 4% gewijzigd door arneKlaver op 05-08-2020 19:32 ]

Alle reacties


Acties:
  • 0 Henk 'm!

  • Renault
  • Registratie: Januari 2014
  • Laatst online: 12:23
Je geeft weinig info over grootte, aanwezige backups enz.

Daarom zou mijn advies zijn om na een uitgebreide hardwaretest opnieuw te beginnen met een schone situatie en de gegevens op je backup als basis.

Acties:
  • 0 Henk 'm!

  • pennywiser
  • Registratie: November 2002
  • Laatst online: 17:15
Je krijgt neem ik aan een mountabe volume aan beide kanten oud en nieuw zodat werken met rsync ook kan?

Acties:
  • 0 Henk 'm!

  • arneKlaver
  • Registratie: Augustus 2020
  • Laatst online: 27-02-2021
Ik heb geen backups
Het gaat over een pool van 3 schijven van 2TB in raidz1

Ik heb het getest op mijn vorige sever waar alles werkte, xenserver met freenas vm. Hier hangt freenas vast bij het opstarten omdat het een import probeert te doen van de pool.
Dus ik vermoed niet dat dit een hardware probleem is.

Vinzz:
mountabe volume aan beide kanten oud
Deze snap ik niet ?

Als ik zpool import doe staat mijn pool er zonder errors maar vanaf dat ik deze probeer te importeren hangt alles vast. (dit had ik niet goed uitgelegd in mijn eerste bericht, is nu aangepast )

[ Voor 6% gewijzigd door arneKlaver op 05-08-2020 19:31 ]


Acties:
  • 0 Henk 'm!

  • arneKlaver
  • Registratie: Augustus 2020
  • Laatst online: 27-02-2021
de zfs filesystem versie van mijn pool is 5 (staat in logs van freeBSD)

Acties:
  • 0 Henk 'm!

  • arneKlaver
  • Registratie: Augustus 2020
  • Laatst online: 27-02-2021
in ubuntu dmesg krijg ik dit deze error:
[ 478.906937] WARNING: Pool 'RaidZ1' has encountered an uncorrectable I/O failure and has been suspended.

Acties:
  • 0 Henk 'm!

  • arneKlaver
  • Registratie: Augustus 2020
  • Laatst online: 27-02-2021
en na een paar min krijg ik dit in dmesg:
[ 478.906937] WARNING: Pool 'RaidZ1' has encountered an uncorrectable I/O failure and has been suspended.

[ 605.258664] INFO: task zed:2450 blocked for more than 120 seconds.
[ 605.258671] Tainted: P O 5.4.0-42-generic #46-Ubuntu
[ 605.258674] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
[ 605.258677] zed D 0 2450 1 0x00000000
[ 605.258681] Call Trace:
[ 605.258693] __schedule+0x2e3/0x740
[ 605.258698] ? prep_new_page+0x128/0x160
[ 605.258703] schedule+0x42/0xb0
[ 605.258705] schedule_preempt_disabled+0xe/0x10
[ 605.258707] __mutex_lock.isra.0+0x182/0x4f0
[ 605.258711] __mutex_lock_slowpath+0x13/0x20
[ 605.258712] mutex_lock+0x2e/0x40
[ 605.258823] spa_all_configs+0x41/0x120 [zfs]
[ 605.258910] zfs_ioc_pool_configs+0x1c/0x70 [zfs]
[ 605.259000] zfsdev_ioctl+0x5c8/0x690 [zfs]
[ 605.259005] do_vfs_ioctl+0x407/0x670
[ 605.259011] ? do_user_addr_fault+0x216/0x450
[ 605.259016] ? do_futex+0x160/0x1e0
[ 605.259018] ksys_ioctl+0x67/0x90
[ 605.259020] __x64_sys_ioctl+0x1a/0x20
[ 605.259024] do_syscall_64+0x57/0x190
[ 605.259028] entry_SYSCALL_64_after_hwframe+0x44/0xa9
[ 605.259031] RIP: 0033:0x7f0285c8537b
[ 605.259039] Code: Bad RIP value.
[ 605.259040] RSP: 002b:00007f0284eb7628 EFLAGS: 00000246 ORIG_RAX: 0000000000000010
[ 605.259043] RAX: ffffffffffffffda RBX: 0000560d6a37ba40 RCX: 00007f0285c8537b
[ 605.259044] RDX: 00007f0284eb7650 RSI: 0000000000005a04 RDI: 000000000000000b
[ 605.259045] RBP: 00007f0284ebac30 R08: 00007f0280017770 R09: 00007f02800000e0
[ 605.259046] R10: 00007f02800008d0 R11: 0000000000000246 R12: 0000560d6a37ba40
[ 605.259047] R13: 0000000000000000 R14: 00007f0284eb7650 R15: 0000000000000000

Acties:
  • 0 Henk 'm!

  • arneKlaver
  • Registratie: Augustus 2020
  • Laatst online: 27-02-2021
ik heb net geprobeert een import te doen in read only
zpool import -o readonly=on RaidZ1
dit LUKT maar geeft mij
pool: RaidZ1
state: DEGRADED
status: One or more devices has experienced an error resulting in data
corruption. Applications may be affected.
action: Restore the file in question if possible. Otherwise restore the
entire pool from backup.
see: http://zfsonlinux.org/msg/ZFS-8000-8A
scan: scrub repaired 0B in 0 days 04:41:02 with 116930 errors on Thu Jul 30 19:42:12 2020
config:

NAME STATE READ WRITE CKSUM
RaidZ1 DEGRADED 0 0 0
raidz1-0 DEGRADED 0 0 0
sdd DEGRADED 0 0 8 too many errors
sde DEGRADED 0 0 8 too many errors
sdb ONLINE 0 0 8

[ Voor 80% gewijzigd door arneKlaver op 05-08-2020 21:01 ]


Acties:
  • +1 Henk 'm!

  • Q
  • Registratie: November 1999
  • Laatst online: 17:19

Q

Au Contraire Mon Capitan!

Ik zie dat je /dev/sdx devices gebruikt, maar dat wil nog wel eens door elkaar raken. Ik zou deze instrucies even na lopen:

https://unix.stackexchang...sk-by-id-in-ubuntu-xenial

Het commando voor de import zou moeten zijn:

sudo zpool import -d /dev/disk/by-id

Ik denk niet dat dit het issue zal oplossen maar niet geschoten...

[ Voor 9% gewijzigd door Q op 06-08-2020 03:13 ]


Acties:
  • 0 Henk 'm!

  • Snow_King
  • Registratie: April 2001
  • Laatst online: 14:56

Snow_King

Konijn is stoer!

Afhankelijk van je budget en mogelijkheden zou ik van elke disk eerst een bitcopy maken met dd.

Daarna kan je van alles testen met ZFS, maar dan staat je data wel veilig en kan je weer terug grijpen naar die backup.

Acties:
  • 0 Henk 'm!

  • arneKlaver
  • Registratie: Augustus 2020
  • Laatst online: 27-02-2021
al de belangrijke data heb ik nu veilig kunnen zetten door te importeren met read-only.
dat is dus al een groot deel van mijn probleem opgelost.

Maar nu zou ik we willen weten wat er is gebeurt/ wat IK fout heb gedaan.
Als je een pool hebt waar 1 drive van kapot is gegaan, hoe los je dit op?
Want al deze errors lijken gewoon terug te komen elke keer ik reboot.

voor zover ik weet zijn de stappen:
resilver -> scrub -> clean (indien er fouten zijn)


En zijn er manieren om een gedegradeerde pool toch nog te importeren?
Nu dat ik mijn data veilig heb kan ik eventueel iets riskantere commandos proberen.

Acties:
  • 0 Henk 'm!

  • arneKlaver
  • Registratie: Augustus 2020
  • Laatst online: 27-02-2021
Q schreef op donderdag 6 augustus 2020 @ 03:12:
Ik zie dat je /dev/sdx devices gebruikt, maar dat wil nog wel eens door elkaar raken. Ik zou deze instrucies even na lopen:

https://unix.stackexchang...sk-by-id-in-ubuntu-xenial

Het commando voor de import zou moeten zijn:

sudo zpool import -d /dev/disk/by-id

Ik denk niet dat dit het issue zal oplossen maar niet geschoten...
Bedankt voor de tip zal ik deze avond testen, in xenserver moest ik ook mijn drives by-id doorverwijzen naar mijn freenas vm. als ik dit met /dev/sdx deet ging het soms fout. Maar ik dacht eigenlijk dat ZFS dit automatisch doet?

Acties:
  • 0 Henk 'm!

  • Q
  • Registratie: November 1999
  • Laatst online: 17:19

Q

Au Contraire Mon Capitan!

Ik weet niet in hoeverre ZFS verder is verbetert op dat vlak, ik gebruik nog een hele oude versie en heb er daarna niet veel meer mee gedaan.

Maar dit gedrag - dat je computer hangt - is niet normaal wat mij betreft. Dat ga ik niemand aanrekenen.

Wat is je ZFS versie en os?

[ Voor 6% gewijzigd door Q op 06-08-2020 12:05 ]


Acties:
  • 0 Henk 'm!

  • arneKlaver
  • Registratie: Augustus 2020
  • Laatst online: 27-02-2021
getest op ubuntu 20 , freeBSD 12, freenas 11 denk ik. hun zfs versies weet ik niet maar ik vermoed dat deze vrij nieuw gaan zijn.

De ZFS versie van mijn pool is 5 dus vrij oud. het verbaast mij een beetje dat freeNAS mij nooit heeft gevraagd voor een upgrade te doen.

En de computer hangt niet voledig vast. het is het ZFS systeem dat vast hangt. geen enkel commando van zfs,zpool kan ik nog uitvoeren. de computer kan ook niet correct afsluiten omdat het process niet kan gestopt worden.
Freenas hangt wel vast maar dat is omdat he teen import doet bij het opstarten.

Acties:
  • 0 Henk 'm!

  • arneKlaver
  • Registratie: Augustus 2020
  • Laatst online: 27-02-2021
Ik heb net geprobeerd met -o failmode=continue en met -F optie maar dat levert het zelfde resultaat op.
De disk by id heeft ook geen verschil op de IO error.
Voor zover ik vind is dit alles dat ik kan proberen om de pool toch nog te importeren.
iemand nog een idee? nu dat mijn data veilig staat kan ik wat experimenteren voor als iemand anders dit voor heeft.

Acties:
  • 0 Henk 'm!

  • Q
  • Registratie: November 1999
  • Laatst online: 17:19

Q

Au Contraire Mon Capitan!

Mogelijk heb je dit al gedaan maar je kunt dit nog proberen:

Pak de oude VM waar je mee draaide (of exact deze FreeBSD/FreeNAS versie) en probeer nog eens de import.

Maar voor dat je dit doet, ik ben erg benieuwd of je tijdens een import nog andere I/O events ziet in je logs onder Linux.

Hier kun je (bovenaan in het artikel) wat voorbeelden vinden van het soort errors waar ik op doel.

Acties:
  • 0 Henk 'm!

  • arneKlaver
  • Registratie: Augustus 2020
  • Laatst online: 27-02-2021
gaat een paar dagen duren voor ik dit kan testen

Acties:
  • 0 Henk 'm!

  • arneKlaver
  • Registratie: Augustus 2020
  • Laatst online: 27-02-2021
Q schreef op donderdag 6 augustus 2020 @ 21:56:
Mogelijk heb je dit al gedaan maar je kunt dit nog proberen:

Pak de oude VM waar je mee draaide (of exact deze FreeBSD/FreeNAS versie) en probeer nog eens de import.

Maar voor dat je dit doet, ik ben erg benieuwd of je tijdens een import nog andere I/O events ziet in je logs onder Linux.

Hier kun je (bovenaan in het artikel) wat voorbeelden vinden van het soort errors waar ik op doel.
Ik heb dit geprobeerd maar ik krijg eigenlijk geen errors in freenas. Ik ben aan het kijken in dmesg en /var/log/messages. online vind ik geen andere plaats om errors te bekijken op freenas
var/log/messages
Aug 8 00:12:18 freenas ZFS: vdev state changed, pool_guid=15951536244315765012 vdev_guid=13639536116049500331
Aug 8 00:12:18 freenas ZFS: vdev state changed, pool_guid=15951536244315765012 vdev_guid=17680685479369465083
Aug 8 00:12:18 freenas ZFS: vdev state changed, pool_guid=15951536244315765012 vdev_guid=16925114139932714157
dmesg: geen errors of logs over de import of drives etc.

Acties:
  • 0 Henk 'm!

  • arneKlaver
  • Registratie: Augustus 2020
  • Laatst online: 27-02-2021
in iocage.log staat mischien iets interesant?
2020/08/07 23:16:28 (ERROR) IOCAGE_SKIP is TRUE or an RC operation, not activating a pool.
Please manually issue iocage activate POOL

Acties:
  • 0 Henk 'm!

  • Q
  • Registratie: November 1999
  • Laatst online: 17:19

Q

Au Contraire Mon Capitan!

Ik ben verder niet belend met de innards van FreeBSD, ik ga het opgeven.

Mogelijk - gezien je verhaal - is er ergens op een schijf een bad sector teveel? Zou niet deze situatie mogen veroorzaken, maar het kan een verklaring zijn.

Het gaat om reallocated sectors en pending sector count. Meer interessant dan dat je er nog iets mee kunt.
Pagina: 1