[Megoldva] FreeNAS zvol törlés probléma

Fórumok

Sziasztok!

Az alábbi problémával kapcsolatban kérném a segítségeteket:
Adott egy FreeNAS 9.1.1-es rendszer. A Web frontenden keresztül töröltem egy nagy méretű (650GB) zvol volume-ot. Ez a zvol korábban ISCSI targetként volt kiajánlva. A zvol törlés azonban néhány óra múlva magába roskadt, azaz a FreeNAS szerver elérhetetlenné vált mind a web interfészen, mind ssh-n keresztül.
Ez után nyomtam egy reset-et a szervernek, ami a boot-olás folyamán most a következőkkel fogad:

Solaris: WARNING: can't open objset for [a törölt zvol neve]

Próbáltam ennél az állapotnál is várni néhány órát, de nem történt semmi. Próbáltam a FreeNas-t verbose módban indítani, de amikor ennél a pontnál megáll, semmi egyebet nem mond magáról.

Van ötletetek esetleg, hogy mit tudnák tenni annak érdekében, hogy ismét elindítható legyen a rendszer?

Köszi,

Kincza

Hozzászólások

Hm. Ez ilyen vicces cucc.
Nem használtam soha freenas-t tehát, csak ötlet... !

( Úgy tudtam a FreeNAS bsd alapon van. )
Meg próbálnám bebootolni single user-be és megnézni, hogyan is csinálja az iscsi target-et.

Talán istgt. Tehát megpróbálnám kikapcsolni a szolgáltatást, ha nincs másik target-em.
Megkeresném az istgt-t a /etc/rc.conf-ban és letiltanám. ( istgt_enable="YES"-t NONE -ra )
Ha lenne másik target-em akkor az istgt konfigjában, a /usr/local/etc/istgt/istgt.conf-ban a megfelelő szekcióval kezdenék valamit.

Ne akarjon már nem létező forrást kiosztani ...

De mindez csak fikció...
Ó öreg mesterem azt tanította, ha zfs-t akarok akkor használjak Solaris-t, vagy illumos alapú dolgokat, vagy linuxot. Ennek fényében a FreeNAS-t nem is próbáltam soha.

Üdv
T

Köszi, sajnos az iSCSI target osztásig el sem jut szerintem. Elindítottam single user módban és megpróbáltam zpool import segítségével behúzni a poolt, de ugyanúgy megakad ennél a pontnál. Nem tudom mitévő legyek, valahogy force-olni kellene hogy ezzel a törölt dataset-tel ne foglalkozzon.

Tehát úgy néz ki a rendszer, hogy van egy pool: Vol1
Azon belül vannak a dataset-ek, és amikor húzza be a dataset-eket akkor elakad ennél a pontnál.

--

kincza

Zfs a root partició?

Solaris alatt a "zpool -f import" a force mód.
Bad news. Beírtam google-ba a hibaüzeneted a pool neve nélkül. Első találat ... Van -f . :) Viszont a rendszer fejreáll tőle. Readonly-ban menni fog, hogy lemásold az adataid. Másik pool-od, ha van exportáld szépen majd egy fresh install után import.

Sajnálom, de nem nagyon tudok segíteni. Viszont már értem miért nem mondta ó' öreg mesterem a bsd-t zfs-re.

Üdv

Bemount-oltam readonly-ban a Vol1-et. Azok az adatok, amelyek NFS, vagy CIFS alatt voltak kiajánlva azok látszanak, azonban a kérdésem az lenne, hogy hogyan lehet hozzáférni azokhoz a dolgokhoz, amelyek iscsi targetként voltak elérhetők? A zfs list mutatja őket. Közöttük van a dataset is, amelyet törölni akartam

--

kincza

Megmutatja a mountpoint-ot :
zfs get mountpoint poolname/fsname

Felmountolja :
zfs mount poolname/fsname

Itt hibát kellene kapnod. Azt be tudnád írni mi a hiba? Léteznek a fs(dataset)-ről klónok vagy snapshotok? Gondolom mivel törölni akartad, az adatok nem számítanak, de ha újra működne akkor talán a gép is indulna.

snapshot-ok nincsenek. Arra gondoltam, hogy azokat a dataset-eket amelyekre szükségem van zfs send segítségével átküldöm másik eszközre, de az meg csak snapshot-ból hajlandó dolgozni. Az meg nincs, és readonly pool lévén nem is képezhető. Van esetleg ötlet ennek az áthidalására?
--

kincza

Igan, az azt mondja, hogy minden ok.

Utánaolvasgatva a dolgoknak a freenas fórumon másnak is volt ilyen problémája. Azt mondját az okosok, hogy tenni kéne még memóriát a szerverbe (most 24GB van benne), hogy le tudjon futni a dataset törlése. Ezt még meg is tudnám valósítani, csak az az egyetlen dilemmám, hogy nem tudom, hogy mennyit kell várni ehhez, illetve nincs semmilyen visszajelzés, vagy státusz információ ezzel kapcsolatban.

--

kincza

640k mindenre elég kell legyen!

24GB ram az sok! A zfs úgymondd cache-re használja a memóriát, de kissé másképp mint a "tradicionális" filerendszerek. A memóriát főképp read cache-nek használja. ARC. Ennek mértéke szabályozható. A te gépedben ha nem állítottál semmit, akkor az ARC használattól függően max 23GB-nyit foglalt el a ramodból. A ram azért kell, hogy gyors legyen. Ott is főleg az iops-ot dobja meg. Ha gyorsítani akarod még jobban akkor dobj be a gépbe pár ssd-t L2ARC-nak. Ha írnia is gyorsan kell akkor még párat ZIL-nek ( log ).

Nem ismerem a FreeNAS-t. Solaris alatt a pool létrehozás, törlés, filerendszer létrehozás, törlés instant parancsok.

De ez most nem tartozik a problémához.

megpróbálod a kérdéses filerendszer mountpoint-ját none-ra állítani majd felcsatolni a poolt read write módon?

Fura egy állat ez a freenas... :)

Egy utolsó próba.
Regisztrálsz az oracle-nél. Solaris 11 letölt. Vagy ha nem akarsz regisztrálni akkor OpenIndiana.

Bebootolsz egy live médiát.

Ott: zpool -F import

Ez csak akkor működhet ha raw device-okat használt a zpool létrehozásához. Ha bsd label van a merevlemezeken akkor bukós, meg sem kell próbálni. Tehát, ha particionáltad a merevlemezeket akkor nem fog menni...

Megnézem, bár ennek kissé ellentmond, hogy single user módban indítva (ekkor el sem jut az iscsi szolgáltatásokig) is megakad amikor importálni akarom a pool-t. readonly módban tudom importálni, ebben az esetben azonban nem tudom, hogy hogy tudnám lementeni azokat a zfs dataset-eket, amelyek zfs device-ként lettek létrehozva
--

kincza

Sziasztok,

A problémát sikerült megoldani, pár szóban elmondanám mit tapasztaltam.
1.) A szerverbe átmenetileg került még 24GB ram, így 48GB volt benne összességében.
2.) Újraindítás után nem a freenassal, hanem ZFS Guru live CD-vel indítottam, ezzel volt több konzolom is.
3.) Manuálisan elindítottam az importot, ugyanúgy megkaptam azt a hibaüzenetet ami a topicindítóban szerepelt.
4.) Másik konzolon hozzáfértem az erőforrásokhoz és látszódott, hogy a háttérben a dolgozik gép, azaz gondolom rendezte a sorait a zvol törlése után. Közben elfogyasztott kb. 30GB RAM-ot.
5.) néhány óra múlva befejeződött a művelet és lefutott az import.
6.) Örülünk :-), köszönöm a segítséget!

ZFS-ben nálam jártasabb ismerősöm javaslatára az ARC maximumát 16GB-ra módosítottam

/boot/loader.conf
vfs.zfs.arc_max="16G"

Újraindítás után egyébként miután elindultak a storage-hoz csatlakoztatott szerverek, a 16GB-ot pillanatok alatt "megzabálta" a rendszer. Elképzelhető, hogy a problémát is az okozta, hogy az ARC memóriahasználata megette a RAM-ot az egyéb szolgáltatások elől.
--

kincza

Hali,

Nem tudtam vele azóta még beszélni, de utánakérdezek. Megnézve az oracle által kiadott dokumentációt
http://docs.oracle.com/cd/E26502_01/html/E29022/chapterzfs-3.html
nekem az jön le, hogy mivel alapból 24GB RAM volt a gépben, ezért az ARC maximuma default esetben 23GB volt. Elképzelhető, hogy a nagyméretű zvol törlése után a rendelkezésre álló 1GB már nem volt elég a filerendszer rendezésére, illetve a többi feladat ellátására is.

--

kincza

Köszi az összefoglalást! Szerintem többeknek hasznára vált :).