ZFS Fan Club

Hibas SSD + ZFS javitasa

Fórumok

Sziasztok,

1. Adott egy ZFS egy 2TB-s SSD-n, amire sajnos a SMART azt irja, hogy hibas blokkok keletkeztek. A ZFS epp ezert irja, hogy bizonyos fajlok elerhetetlenek es az egesz disk DEGRADED allapotba kerult. Ennek kapcsan vegiggondoltam, hogy valojaban mire is van szuksegem: egyreszt szeretnem, hogy RAID-el noveljem a rendelkezesre allast, masreszt mindig legyen backup egy levalasztott kulso adattartolon. Ezzel kapcsolatban kernem a hozzaertok segitseget, hogy jol iranyba gondolkodom illetve milyen konkret lepeseket kell tenni.

2. A SMART jelenleg igy nez ki:

SMART/Health Information (NVMe Log 0x02)
Critical Warning:                   0x00
Temperature:                        42 Celsius
Available Spare:                    95%
Available Spare Threshold:          10%
Percentage Used:                    4%
Data Units Read:                    140.108.472 [71,7 TB]
Data Units Written:                 272.305.604 [139 TB]
Host Read Commands:                 5.119.874.183
Host Write Commands:                7.313.948.105
Controller Busy Time:               14.012
Power Cycles:                       617
Power On Hours:                     4.3465
Unsafe Shutdowns:                   355
Media and Data Integrity Errors:    4.888
Error Information Log Entries:      4.888
Warning  Comp. Temperature Time:    0
Critical Comp. Temperature Time:    0
Temperature Sensor 1:               44 Celsius
Temperature Sensor 2:               57 Celsius
Thermal Temp. 1 Transition Count:   2
Thermal Temp. 1 Total Time:         62

Jol gondolom, hogy a "Media and Data Integrity Errors" jelzi a rossz blokkokat? Van esetleg valamilyen Samsung SSD specifikus tool amivel bovebb info nyerheto ki es fut linuxon? (vagy Windows virtualis gep alol). Samsung magician regebbei verziojat probaltam, az nem ismerte fel az SSD-t. Amit meg nem ertek itt, hogy amikor eszlelte hogy problema van adott blokkokkal akkor mar at is allokalt a rossz blokkokrol a jo blokkokra? Tehat ugyan elveszett az eredeti adat a rossz blokkokban, de ha ujra oda tarolna a rendszer valamit, akkor mar ujra jo lenne?

3. a ZFS pool status:

  pool: rpool
 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: https://openzfs.github.io/openzfs-docs/msg/ZFS-8000-8A
  scan: scrub repaired 0B in 00:20:02 with 109 errors on Sun Sep 11 00:44:04 2022
config:

	NAME            STATE     READ WRITE CKSUM
	ssdpool           DEGRADED     0     0     0
	  internal-ssd  DEGRADED     0     0     0  too many errors

errors: Permanent errors have been detected in the following files:

        <0x8025>:<0x4dadc6>
        <0x8025>:<0x5156d6>
        <0x8025>:<0x4cebe0>
        ssdpool/ROOT/ubuntu_be65hc/var/lib/docker/c6d1d0cc3fb9e09a9afd9758d6e8b1cab4ee02b26eba23808452dc436cc6a2d0@75126264:/usr/share/lxc
        ssdpool/USERDATA/user_be65hc@backup-20220105151646:/Desktop/TrY-yKe5qRE.mp4

Ezek lennenek a hibas fajlok. Elozoleg az elso harmat is ugy irta ki, mint az utolso kettot (tehat teljes eleresi uttal), de proba jelleggel letoroltem oket, mivel annyira nem voltak fontosak es arra szamitottam, hogy akkor eltunik a listabol (es azokat a szektorokat a ZFS se hasznalja tobbet), ehelyett atvaltott erre a hexa kijelzeses modra. Scrubbal vagy barmi massal tudok ilyenkor probalkozni? Hogyan lehet megertetni a ZFS-el, hogy felejtse el az elveszett adatokat es tesztelje ujra az adott blokkokat, hogy jol mukodnek es ha igen, ujra tegyen oda adatot?

4. Az SSD meg garancia idos, viszont a garanciaztatas kb 1 honapot is igenybe vehet. Arra gondoltam, hogy veszek egy ugyanilyen SSD-t, RAID mirrort alakitok ki, particionalom, beteszem az uj meghajtot a poolba, megvarom, hogy a ZFS mindent atmasoljon, majd a hibas meghajtot elviszem gariztatni es addig a rendszert a masik SSD-rol hasznalom. Ha az uj meghajto visszakerult, azt is particionalom, beteszem a poolba es akkor van egy tejles RAID mirror rendszerem. Mire erdemes figyelni? Gondolok itt pl arra, hogy particionalaskor gondolom bytera ugyanakkor meretu particiokat kell letrehozni es mindent ugyanugy elrendezni mint az eredeti meghajton, kulonben a mirror nem fog mukodni a meretkulonbseg miatt?! A gariztatando SSD-t eltavolitom, a ZFS a maradek 1 SSD-vel gond nelkul fog mukodni tovabb vagy van valami teendo?

5. Milyen modon erdemes egy 2TB-s mirrorba tett SSD tombrol backupot kesziteni? Arra gondoltam, hogy egy kulso HDD-re zfs autobackuppal es zfs send-el csinalok idonkent snapshotokat (ez ugye kb 2TB helyet igenyel, plusz amennyi a snapshotokhoz meg szukseges). Ezen kivul nagyobb rendszer upgradekkor esetleg diszk image szinten is lementem az egeszet, hogy konnyen vissza lehessen allitani. Tehat osszessegeben min 6, de inkabb 8-10TB meretu HDD kell nekem. Jol latom? Konkret jotanacsok esetleg tipussal kapcsolatban?

6. ZFS online backupjara ha van valakinek bevalt modszere/szolgaltatoja, szinten erdekes lehet.

 

Elore is koszonom a segitseget!

[megoldva] Openindiana rekurzív send - receive

Fórumok

Sziasztok!

 

Van egy régebbi (ez lehet, hogy számít) OI, amiről át kéne egy másik gépre küldeni egy komplett zpool-t, mentés céljából.

Ebben a régebbi gépben gyengélkednek a hdd-k, ezért egy, a másikon már meglevó poolba pakoltam át egy snapshotot, valahogy így:

zfs send -R orl@2022-03-05-02-38 | ssh orlbig -p 35 zfs recv -Fdu bigpool/orl

Az orl egy komplett zpool, benne egy csomó zfs-sel. Szépen át is ment minden. Az lenne a lényege, hogyha a régi gép elpusztul, akkor az újon az smb-t felkonfigurálva folytatható legyen a munka, a fájlok meglegyenek (legalábbis napi szinten)

A snapshotok minden éjszaka készülnek, így:
 

NOW=`date +%Y-%m-%d-%H-%M`

/usr/sbin/zfs snapshot -r orl@$NOW

Namost... ha ezt mondom:

zfs send -i orl@2022-03-05-02-38 orl@2022-06-14-02-38| ssh orlbig -p 35 zfs recv -Fdu bigpool/orl

Akkor a fs-eket nem viszi át, csak az orl pool snapshotját másolja.

 

Ha viszont ezt mondom neki:

 zfs send -iR orl@2022-03-05-02-38 orl@2022-06-14-02-38| ssh orlbig -p 35 zfs recv -Fdu bigpool/orl

Akkor bizony panaszkodik, hogy:

too many arguments
usage:
        send [-DnPpRv] [-[iI] snapshot] <snapshot>

For the property list, run: zfs set|get

For the delegated permission list, run: zfs allow|unallow
cannot receive: failed to read from stream

 

Az upgrade sajnos nem opció. Valahogy megoldható, valakinek van ötlete?

Köszönöm!

[Megoldva] ZFS dedup megszüntetése

Fórumok

Sziasztok!

Van 2x16 TB HDD-n egy "Backup" pool, azon belül további 7 zvol (1-1 TB quota-val). A dedup és a compress a Backuptól öröklődik a zvoloknak.

6-7 TB a helyfoglalás, de (7x) 180 nap inkrementális mentést is (tehát több 100 millió fájlt) tartalmaz a ZFS mirror.
Szeretném a dedupot megszüntetni.
2 lehetőséget látok erre, de nem tudom, melyik működhet és ha mindkettő, akkor melyik gyorsabb/egyszerűbb?

1. Van egy másik ZFS pool (nVME SSD-ken mirror) ebben a gépben 2-2,5 TB szabad hellyel. Kikapcsolom a dedupot a Backup poolon, egyesével lementem rsync.kel az nVME-re a zvolokat, megszüntetem, majd újra létrehozom őket és vissza rsync-elem a mentéseket.

2. Kiveszem a mirrorból az egyik HDD-t, létrehozok rajta egy új ZFS (féllábú) mirrort és átmásolok mindent rsync segítségével az új poolra. Ezután megszüntetem az eredeti Backup poolt és a HDD-t hozzáadom az új mirrorhoz.

Mindenről van mentés máshol is, de jó lenne, ha nem hálózaton kellene minden adatot átmásolni.
Mit javasoltok? ezek közül/helyett a dedup megszüntetésére?

Szerk.: Az 1. variációval sikerült megszüntetni a dedupot.
Köszi minden érdemi hozzászólást!

zfs Dell PowerEdge R740-en

Fórumok

A meglévö Dell PowerEdge R740 szerverhez vettünk két másikat.  (Jelenleg mind a 3 gép szabad, mert a rendszerek régebbi gépeken mennek.)

Proxmox 7.1-et akarok rájuk telepíteni, ha lehet zfs fájlrendszer használatával. Edig a Proxmoxot LVM köteteken ext4 fájlrendszeren használtuk, de szeretném kihasználni a zfs előnyeit.

Sajnos a beépített RAID vezérlők nem azonosak. A régiben PERC 9 H730P mini van az újakban PERC 11 H750.

A H730P esetében át tudom állítani RAID módból HBA módba a vezérlőt, de a H750-esnél nem.
Viszont mindegyiknél be tudom állítani, hogy a lemezek Non-RAID módban legyenek és így a telepítő látja is egyenként az összes lemezt.
A PERC 11 kézikönyv erről ennyit ír:  "Non–RAID disks: A non–RAID disk is a single disk to the host, and not a RAID volume. The only supported cache policy for non–RAID disks is
Write-Through." 

Jól gondolom, hogy ez azt jelenti, hogy olyan cache-t használ, amiből nem lehet adatot addig visszaolvasni, amíg ténylegesen ki nem íródik a lemezre és csak a kiírás után jelzi, hogy befejeződött a művelet?

Ez megfele-e a ZFS-hez vagy már ez a Write-Through cache is megzavarja a működését?

Azt tudom, hogy a zfs direktben szereti kezelni a lemezeket.
Nem akarok kockáztatni, jó lenne ha zfs-en működne a Proxmox, de ha nem megy akkor jó lesz a HW-RAID is és a Proxmox LVM köteteken, ext4 fájlrendszeren megy majd.

[Megoldva] Debian 11 + Proxmox VE 7 + ZFS: no pools available

Fórumok

Debian 11 + Proxmox VE 7
Szerver újraindítás után nem mindig jön fel a zfs pool. Ilyenkor (néha többször is) újraindítom és megint használható a zfs pool.

# zpool list
no pools availabl
# fdisk -l #(részlet)
Disk /dev/nvme3n1: 1,75 TiB, 1920383410176 bytes, 3750748848 sectors
Disk model: SAMSUNG MZQL21T9HCJR-00A07              
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 131072 bytes / 131072 bytes
Disklabel type: gpt
Disk identifier: B00FD358-9035-144C-BFDB-B4CCD7CFE81C

Eszköz              Start       Vége  Szektorok  Size Típus
/dev/nvme3n1p1       2048 3750731775 3750729728  1,7T Solaris /usr & Apple ZFS
/dev/nvme3n1p9 3750731776 3750748159      16384    8M Solaris reserved 1


Disk /dev/nvme2n1: 1,75 TiB, 1920383410176 bytes, 3750748848 sectors
Disk model: SAMSUNG MZQL21T9HCJR-00A07              
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 131072 bytes / 131072 bytes
Disklabel type: gpt
Disk identifier: 68339494-26D3-354D-A8B8-C8D39E3A6290

Eszköz              Start       Vége  Szektorok  Size Típus
/dev/nvme2n1p1       2048 3750731775 3750729728  1,7T Solaris /usr & Apple ZFS
/dev/nvme2n1p9 3750731776 3750748159      16384    8M Solaris reserved 1
# apt install -y zfsutils-linux

paranccsal telepítettem a ZFS-t. Csak a zfsutils-linux csomagot tettem fel a szerverre, Kell esetleg a zfs-dkms, a zfs-dracut, vagy a zfs-initramfs, esetleg bármi más?

1. Mit tegyek, hogy normálisan működjön minden újraindítás után?

2. Amikor nem áll helyre a pool, hogyan tudom importálni, vagy életre kelteni? A partíciók látszólag rendben megvannak.

Megoldás itt arra, ha exportálás nélkül újratelepítés után nem áll helyre a pool.
Köszönet @hunti

Megoldás
Köszönet @sibike

Köszönöm szépen mindenkinek a rengeteg hasznos infót és az ötleteket. Ma is sokat tanultam... :)

ZFS lemezek másik gépben, másik rendszerben

Fórumok

Van 4 db 1TB-os lemezem, amit Ubuntu 20.4-en ZFS raidz1-ben használtam, asztali gépben. A rendszer egy 256GB-os m.2 SSíD-n volt.
A ZFS tömböt ADz néven hoztam létre és a /-be volt csatolva.

Miután vettem egy másik gépet egy ASRock Deskmini X300 barebone-t, azt keztem el használni asztali gépnek.
Erre Fedora Linux került, amit már frissítettem is 35-re.
A régi asztali gépet átépítettem és más célra használom, de a 4 db 1TB-os lemezt amin a ZFS tömb volt, (van) félretettem.

Most elővettem a 4 db 1TB-os lemezt és betetem 2 db USB-3-as dual dokkolóba és csatlakoztattam ehez a géphez.
Sajnos a Fedora 35-ben nincs igazi ZFS csak zfs-fuse.

Eddig jutottam a Linux terminálban:

sudo zpool import
[sudo] dejo jelszava: 
  pool: ADz
    id: 7982237493426612806
 state: UNAVAIL
status: The pool was last accessed by another system.
action: The pool cannot be imported due to damaged devices or data.
   see: http://www.sun.com/msg/ZFS-8000-EY
config:

    ADz                                                            UNAVAIL  newer version
      raidz1-0                                                     ONLINE
        disk/by-id/ata-WDC_WD10EZEX-08WN4A0_WD-WCC6Y6NRXKZR-part1  ONLINE
        disk/by-id/ata-WDC_WD10EZEX-08WN4A0_WD-WCC6Y0EZ2TZR-part1  ONLINE
        disk/by-id/ata-WDC_WD10EZEX-08WN4A0_WD-WCC6Y1UZKD6S-part1  ONLINE
        disk/by-id/ata-WDC_WD10EZEX-08WN4A0_WD-WCC6Y6LCYZA4-part1  ONLINE

Erre mi a megoldás? Merre keresgéljek?

ZFS - használatban lévő lemez tükrözése

Fórumok

Sziasztok!

Elnézést, ha rosszul kerestem és nem találtam a választ! A nyűg az lenne, hogy van egy single zfs pool és szeretnék mirror-t belőle adatvesztés nélkül.

Ehhez vettem  még egy ugyanilyet:

zpool status nvme
  pool: nvme
 state: ONLINE
config:

    NAME                                        STATE     READ WRITE CKSUM
    nvme                                        ONLINE       0     0     0
      nvme-KINGSTON_SNVS2000G_50026B7684F6751F  ONLINE       0     0     0

errors: No known data errors

 

és szeretném, ha tükrözve lenne az adat az /dev/nvme0n1 /dev/nvme1n1 között

Op. rendszer debian

fdisk -l:

Disk /dev/nvme0n1: 1.82 TiB, 2000398934016 bytes, 3907029168 sectors
Disk model: KINGSTON SNVS2000G                      
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes

Disk /dev/nvme1n1: 1.82 TiB, 2000398934016 bytes, 3907029168 sectors
Disk model: KINGSTON SNVS2000G                      
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: 4FF2019D-E8DF-7846-958D-CE474ABAE53D

Device              Start        End    Sectors  Size Type
/dev/nvme1n1p1       2048 3907012607 3907010560  1.8T Solaris /usr & Apple ZFS
/dev/nvme1n1p9 3907012608 3907028991      16384    8M Solaris reserved 1

 

ps.:

Nagyon kezdő vagyok zfs terén, minden segítséget köszönök!
 

ZFS backup&restore

Fórumok

Van egy Debian 10-em, zfs-dkms 0.7.12 csomaggal. Van benne egy SSD és 4 HDD. A tank nevű pool a 4 HDD-n terül el raidz2-vel, és lognak használ egy partíciót az SSD-n. Az SSD-n egy másik partíción van az rpool pool, ezen van a rendszer, redundancia itt nincs. Fent van a zfs-auto-snapshot csomag is, tehát van végtelen mennyiségű snapshotom. Az rpool így néz ki:

root@hp:~# zfs list
NAME                            USED  AVAIL  REFER  MOUNTPOINT
rpool                          11.1G  50.2G    96K  /
rpool/ROOT                     10.7G  50.2G  4.50G  /
rpool/var                       280M  50.2G    96K  /var
rpool/var/log                   280M  50.2G  33.8M  /var/log

Szeretnék Debiant frissíteni, és ebből továbbgondolva két teljesen kezdő kérdés merült fel bennem:

  • Ha elkefélem a frissítést (mert pl. nem fordul bele a DKMS csomag az új kernelbe, láttam már ilyet), hogyan tudok visszaállni működő snapshotra? Ha a grub-ig eljutok, ott még talán be tudok bootolni egy readonly snapshotról, de hogyan tovább?
  • Mi van, ha bukom az egész SSD-t (véletlen gyalu, vagy akár későbbi hardver hiba miatt)? Mit fog szólni a tank, ha elszáll a logja? Hogyan érdemes olyan backupot csinálni az rpool-ról, amit simán vissza tudok rakni egy új SSD-re?

Amúgy készenlétben tartok egy pendrive-ot, amin van fent kb. ugyanilyen verziójú Debian, be van lőve, hogy tudjon VirtualBoxon és a szerveren is bootolni (UEFI miatt nem volt triviális összerakni), tehát parancssort mindenképpen tudok magamnak varázsolni.

ZFS sok kis file írás lassú

Fórumok

Hello

Van egy config 15G ram, 24cpu

ilyen felállásban

<code>

NAME        STATE     READ WRITE CKSUM
        data_pool   ONLINE       0     0     0
          mirror-0  ONLINE       0     0     0
            sdb     ONLINE       0     0     0
            sdc     ONLINE       0     0     0
          mirror-1  ONLINE       0     0     0
            sdd     ONLINE       0     0     0
            sde     ONLINE       0     0     0
          mirror-2  ONLINE       0     0     0
            sdf     ONLINE       0     0     0
            sdg     ONLINE       0     0     0
          mirror-3  ONLINE       0     0     0
            sdh     ONLINE       0     0     0
            sdi     ONLINE       0     0     0

</code>

 

Ha kitömörítek mondjuk egy tar-t amiben sok kis file van akkor az lassú. Több percig is eltart, míg az alap írási sebesség 200Mb/sec.

SSD cache nincs.

Min érdemes hangolni?

ZFS rosszul berakott diszk

Fórumok

Sajnos amikor be akartam tenni egy spare diszket a poolba elrontottam és kimaradt a spare paraméter. Sikerült a zpool add pool spare device helyett zpool add pool devide-t írni. Ettől bekerült felső szintre és már nem tudom kivenni, mert ONLINE

        NAME                                          STATE     READ WRITE CKSUM
        bckpstore                                     ONLINE       0     0     0
          raidz2-0                                    ONLINE       0     0     0
            ata-WDC_WD40EFZX-68AWUN0_WD-WX12D8003F7C  ONLINE       0     0     0
            ata-WDC_WD30EFRX-68EUZN0_WD-WCC4N5KDAH2E  ONLINE       0     0     0
            ata-WDC_WD30EFRX-68EUZN0_WD-WCC4N5KDALZF  ONLINE       0     0     0
            ata-WDC_WD30EFRX-68EUZN0_WD-WCC4N6CYHHKR  ONLINE       0     0     0
            ata-WDC_WD30EFRX-68EUZN0_WD-WCC4N6CYHS6N  ONLINE       0     0     0
            ata-WDC_WD30EFRX-68EUZN0_WD-WCC4N6EXR12J  ONLINE       0     0     0
          ata-WDC_WD40EFZX-68AWUN0_WD-WX12D8003SVR    ONLINE       0     0     0
 

Ettől persze értelmét veszítette a raidz2 a poolban.

Van valakinek ötlete arra, hogy a pool lebontásán és újra csinálásán kívül hogyan változtathatom spare-re a diszket?