ZFSonLinux 0.8: funkce, stabilizace, intriky. A trim

Doslova před několika dny byla vydána nová stabilní verze ZFSonLinux, projektu, který se nyní stal centrálním bodem ve světě vývoje OpenZFS. Sbohem, OpenSolaris, vítejte v drsně neslučitelné GPL-CDDL světě Linuxu.

ZFSonLinux 0.8: funkce, stabilizace, intriky. A trim
Pod tímto odkazu je přehled těch nejzajímavějších věcí (jak jinak, 2200 komitů!), a jako dezert — trocha intrik.

Nové funkce

Samozřejmě, že nejvíce očekávanou je nativní šifrování. Nyní je možné šifrovat pouze potřebné datové sady zabudovaným šifrováním ZFS, a (podle mě — hlavně) — můžete posílat šifrovaná data přes zfs send a BEZ dešifrování zkontrolovat integritu dat zabudovanými prostředky, všechny možnosti ochrany integrity dat ZFS zůstanou u vás!

Dále v důležitosti stojí zmínit dlouho očekávané TRIM. Ano, vyžadovalo to velmi dlouhou cestu do produkce. Částečně proto, že pro CoW souborové systémy není problém s opotřebením SSD tak kritický. Ale nyní jsme všichni klidní — zpool trim zachrání naše citlivé flashky.

Nyní je možné odstraňování náhodně přidaných vdev polí z poolu (ale jen, pokud jde o sparse nebo mirror). Užitečná drobnost.

Dále v našem hitparádě — pool checkpoints. Stručně — snímky pro celé stavy poolu, ALE umožňují vrátit změny nejen dat, ale i aktivovaných funkcí a změn ve struktuře poolu. Další možnost, jak se zabezpečit.

Pool initialization — vyplnění spodního úložiště nulami. Užitečné pro práci v prostředích s thin provisioned disky pro jasné vymezení prostoru a vyloučení nečekaných poklesů výkonu v budoucnu.

Project accounting and quota — v již existujícím mechanismu kvót je nyní možné použít rozdělení na projekty.

Channel programs — možnost provádět administrativní úkoly atomárně pomocí Lua skriptů. Existují omezení na čas provádění a paměť. Pokud se zabýváte automatizací — tohle je pro vás.

Priamine IO — pro jednoduchost jsme zapracovali práci s Direct IO, uvnitř se nic nezměnilo (v podstatě volání jdou maximálně mimo cache), ale nyní doufám, že software, který chce pracovat v tomto režimu, nebude mít starosti.

Projekt Pyzfs byl integrován do hlavního repozitáře a vzat pod křídlo projektu ZFSonLinux. Nyní je zde více prostředků pro správu z Pythonu (no a také bude klidnější ohledně podpory modulu). Také mnohé Python skripty byly přizpůsobeny pro Python3.

A teď na to zajímavé — výkonnost

Nyní při operacích scrub a resilver se nejprve přečtou metadata a teprve potom v maximální sekvenčního podobě — data. Tím pádem obnova pole a kontrola integrity probíhá maximální rychlostí.

Třídění alokací — u vdev polí se objevil typ nosiče, nyní je možné uložit metadata/tabulky deduplikace (DDT)/bloky dat menší než X Kbyte na samostatný vdev pole z výkonnějších disků. Více rychlosti bohu rychlosti! (a co se týče věci — tato možnost se velmi hodí v nadcházejícím DRAID).

Mnohé administrativní příkazy nyní pracují rychleji díky cílenému ukládání do mezipaměti metadat (například, zfs list, zfs get).

Proces alokace dat byl paralelizován, nyní se pro každou část volného prostoru (metaslab) vytváří několik alokátorů. S NVME toho sice nevytlačíme vše, ale bude to lepší.

Odložená obnova integrity pole umožní nezatěžovat pole současnou přestavbou několika disků, ale provádět to postupně. Tím se sníží vliv na výkon a doba přestavby.

Při importu poolů s velkým množstvím volumes se zvýšila rychlost jejich registrace v systému.

Také QAT nyní umožňuje převést na něj výpočty šifrování a kontrolních součtů.

A spousta drobných změn (přece jen 2000+ commitů v relezu!).

A nakonec — intriky

Ačkoliv ZFSonLinux rychle přidává podporu nových jader Linuxu (nyní jsou podporovány verze 2.6.32 — 5.1*), maintainéři jádra projevují zřejmý nezájem o pomoc třetím stranám («…nezajímá nás vůbec
externí jádrové moduly…
— greg k-h»). Tak byly požadované pro efektivní fungování volání jádra ve větvi 5.0 změněny na GPL-only . V jádrech s tímto patchem bude výkon ZFS výrazně horší. Zachraňuje to skutečnost, že tuto funkčnost lze realizovat na straně modulu, což pravděpodobně bude provedeno. A zatím se můžete inspirovat NixOS — ti jednoduše vrátili patch do jádra 🙂

Také projekt získal Kodex chování, což vyvolalo vlnu diskuzí. Ale my jsme se udrželi 🙂

Všem pracovní zálohy a stabilní release!

Užitečné odkazy:
— release na Githubu
— moje úvodní v ZFS

Zdroj: habr.com

Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster