Po. Pro 30th, 2024

Postavil jsem si druhé pole, jen tak pro srandu. Narval do toho plonkovní 6x 500GB disky, co mi tu zbyly a napadlo mě, jaké využití by mohla mít ZFSska s povolenou kompresí na maximální možnou gzip-9.

use case: Máte menší diskové pole, procesorového výkonu máte na dnešní dobu habaděj (v mém případě 12 vláknový Ryzen 5 1600 a 32GB RAM) a fakt šetříte dost místa.

V mém případě jsem do pole nahrával 457 GB Image .qcow2 na KVM.
Zabraného místa je 280GB, kompresní poměr 1.63, to znamená, že jsem nahráním souboru o velikosti 457GB do pole ušetřil 177 GB, tedy 38% úspora prostoru na diskovém poli.

Teď ta špatná zpráva. Sypal jsem to po gigabitové lince mezi stroji. Průměrná rychlost sypání dat byla něco přes 29 MB/s a všech 12 vláken jelo po většinu času na max. RAMek to sežralo okolo 16 GB.

Co z toho vyplývá?

Jestli máte doma 100Mbps síť a máte dost procesorového výkonu i RAMek, tak si můžete nechat kompresi gzip-9 a ušetříte místo. Pokud máte někde na chalupě nebo na jiné lokalitě 100Mbps linku do internetu a jste schopni se na pole dostat, tak tohle by pro Vás mohlo být řešení, jak sice saturovat 100Mbps linku, vytížit procesor na max, ale na druhou stranu ušetříte hodně místa.

Největší problém při provozu bude asi ta spotřeba elektřiny procesoru, RAMek a samozřejmě 6 disků taky elektroměr protočí.

Dost by mě zajímalo, jak by se tentýž setup choval, kdybych měl diskové pole s nějakým celeronem G3900 či podobně nízkého výkonu.

 

Po restartu ubuntu-server 20.04 LTS ZFS pole není? Co teď?

Klid, ještě z okna neskákejte! Data tam jsou, problém byl zde:

# systemctl status -l zfs-import-scan.service
● zfs-import-scan.service - Import ZFS pools by device scanning
     Loaded: loaded (/lib/systemd/system/zfs-import-scan.service; disabled; vendor preset: disabled)
     Active: inactive (dead)
       Docs: man:zpool(8)

proto následující příkazy vypisovaly "nic":
# zfs list
no datasets available

 # zpool status -v
no pools available

Následující příkaz však vypíše první vlaštovku, tedy že tam někde nějaké pole je:
# zpool import
   pool: zfs
     id: 1542621685696878948
  state: ONLINE
 action: The pool can be imported using its name or numeric identifier.
 config:

        zfs         ONLINE
          raidz1-0  ONLINE
            sde     ONLINE
            sdc     ONLINE
            sdb     ONLINE
            sdd     ONLINE
            sdh     ONLINE
            sdg     ONLINE
nicméně:
# zpool status -v
no pools available

Takže:
# systemctl restart zfs.target
# systemctl enable zfs.target

Co dál? 
Věděl jsem, že jsem moje zfs pole pojmenoval jen jednoduše názvem zfs. Tedy zadám příkaz:
# zpool import zfs

A víte co? Měl ho tam!


viz hláška z básníků, zde už výpis příkazu zpool status

# zpool status
  pool: zfs
 state: ONLINE
  scan: scrub repaired 0B in 0 days 02:00:10 with 0 errors on Sun Mar 14 02:26:00 2021
config:

        NAME        STATE     READ WRITE CKSUM
        zfs         ONLINE       0     0     0
          raidz1-0  ONLINE       0     0     0
            sde     ONLINE       0     0     0
            sdc     ONLINE       0     0     0
            sdb     ONLINE       0     0     0
            sdd     ONLINE       0     0     0
            sdh     ONLINE       0     0     0
            sdg     ONLINE       0     0     0

errors: No known data errors


Je tam?

# df -Th
Je:
Filesystem                        Type      Size  Used Avail Use% Mounted on
zfs                               zfs       2.2T  280G  2.0T  13% /zfs

Kdyby to ani potom nemountovalo, tak:
zfs mount název
tedy v mém případě:
zfs mount zfs

Ukázka komprese:
# zfs get all zfs | grep compressratio
zfs   compressratio         1.63x                  -
zfs   refcompressratio      1.63x                  -

zdroj

zdroj2

zdroj3

No nic, jdu to porovnat se standardní LZ4, která žere nula nula nic procesoru. Třeba zjistím, že cestou gzip-9 cesta nevede. 😉

Avatar

By mirra

Hardwaru a počítačům se věnuji již od roku 2003. Za tu dobu jsem poskládal stovky počítačů, opravil tisíce počítačů a vyřešil nespočetně problémů, vad a chyb, se kterými se setkávali uživatelé. Od roku 2005 se zabývám servery, zejména těmi herními, v roce 2007 jsem se začal věnovat Valve Source SDK level designu, který šel od roku 2009 k ledu kvůli studiu Informatiky na univerzitě. Podílel jsem se chvíli i na provozu síťové laboratoře MENDELU, dnes spravuji v jedné osobě cca 100 serverů/diskových polí na univerzitě, řeším IT v malých a středních firmách tak, aby firmy ušetřily nemalé částky při zlepšení kvality a soustředím se na snižování nákladů na IT od licencí až po hardware, software, provádím konsolidace a audity platnosti licencí, které firmám šetří rovněž nemalé peníze. Z velkých firem jsem měl příležitost s dalšími kolegy řešit správu 8000 serverů po celé západní Evropě s vysokou mírou automatizace a poznávání nejrůznějších evropských pracovních mentalit. Dále jsem řešil hybridní cloud ve velké firmě, orientované na trhy střední a východní Evropy. Posledních několik let se věnuji Devops pro velké zákazníky v Azure cloudu, spravuji kubernetes (AKS), Gitlab.

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *