Rilis ZFS ing Linux 0.8.0, implementasine saka ZFS kanggo kernel Linux

Sawise meh rong taun pembangunan diwenehi ngeculake ZFS ing Linux 0.8.0, implementasine saka sistem file ZFS, dirancang minangka modul kanggo kernel Linux. Modul wis diuji nganggo kernel Linux saka 2.6.32 nganti 5.1. Paket instalasi siap bakal teka bakal disiapake kanggo distribusi Linux utama kalebu Debian, Ubuntu, Fedora, RHEL/CentOS. Modul ZFS ing Linux wis kalebu ing distribusi Debian, Ubuntu, Gentoo, Sabayon Linux lan ALT Linux.

Minangka bagΓ©an saka ZFS ing Linux, implementasine komponen ZFS sing ana gandhengane karo operasi sistem file lan fungsi manajer volume wis disiapake. Utamane, komponen ing ngisor iki dileksanakake: SPA (Storage Pool Allocator), DMU (Data Management Unit), ZVOL (ZFS Emulated Volume) lan ZPL (ZFS POSIX Layer). Kajaba iku, proyek kasebut menehi kemampuan kanggo nggunakake ZFS minangka backend kanggo sistem file kluster Lustre. Pakaryan proyek kasebut adhedhasar kode ZFS asli, sing diimpor saka proyek OpenSolaris lan ditambahi kanthi perbaikan lan perbaikan saka komunitas Illumos. Proyek kasebut dikembangake kanthi partisipasi karyawan Laboratorium Nasional Livermore ing kontrak karo Departemen Energi AS.

Kode kasebut disebarake miturut lisensi CDDL gratis, sing ora kompatibel karo GPLv2, sing ora ngidini ZFS ing Linux digabungake menyang cabang utama kernel Linux, amarga campur kode ing lisensi GPLv2 lan CDDL ora bisa ditampa. Kanggo nyingkiri incompatibility lisensi iki, diputusake kanggo nyebarake kabeh produk miturut lisensi CDDL minangka modul sing bisa didownload kanthi kapisah, sing diwenehake kanthi kapisah saka kernel. Stabilitas ZFS ing basis kode Linux dianggep bisa dibandhingake karo sistem file liyane kanggo Linux.

Owah-owahan utama:

  • Ditambahake dhukungan kanggo enkripsi data sing disimpen ing sistem file lan tingkat partisi. Algoritma enkripsi standar yaiku aes-256-ccm. Kanggo mbukak kunci enkripsi, prentah "zfs load-key" diusulake;
  • Kemampuan kanggo ngirim data sing dienkripsi nalika nglakokake perintah "zfs send" lan "zfs receive" wis dileksanakake. Nalika nemtokake pilihan "-w", data sing wis ndhelik ing blumbang ditransfer menyang blumbang liyane kaya, tanpa dekripsi penengah. Sajrone nyalin kasebut, data tetep dilindhungi dening kunci pihak sing ngirim, sing ngidini mode iki bisa digunakake kanggo serep menyang sistem sing ora bisa dipercaya (yen panampa dikompromi, tanpa kunci penyerang ora bakal bisa ngakses data);
  • Dhukungan tambahan kanggo mbusak drive utama saka blumbang panyimpenan, disambungake kanthi individu utawa minangka bagean saka pangilon. Ngilangi ditindakake kanthi prentah "zpool mbusak". Sajrone proses pambusakan, data saka drive dibusak disalin menyang drive utami isih ing blumbang;
  • Added "zpool checkpoint" printah kanggo nyimpen negara saiki blumbang karo kemampuan kanggo muter maneh owah-owahan luwih kanggo titik disimpen ing wektu (sworo seru kabeh blumbang digawe). Fitur sing disedhiyakake bisa migunani ing proses nindakake karya administratif kompleks sing bisa mbebayani sing biasane nyebabake owah-owahan sing ora bisa dibatalake (contone, ngaktifake panji kanggo fungsi ZFS anyar utawa ngresiki data);
  • Nambahake printah "zpool trim" kanggo ngandhani drive sing digunakake ing blumbang babagan sektor sing ora digunakake maneh. Nggunakake operasi TRIM ndadekake bisa nambah efisiensi drive SSD lan nyegah degradasi kinerja. Kanggo ngaktifake proses latar mburi terus-terusan kanggo pass printah TRIM, properti anyar "autotrim" wis ngajokaken;
  • Nambahake printah "zpool initialize" kanggo miwiti kabeh ruang disk sing ora dialokasikan, supaya bisa langsung digunakake tanpa mengaruhi kinerja ing akses pisanan (contone, nalika hosting panyimpenan virtual kayata VMware VMDK);
  • Dhukungan ditambahake kanggo akuntansi lan kuota tingkat proyek, nglengkapi kuota tingkat pangguna lan klompok sing kasedhiya sadurunge. Intine, proyek minangka ruang obyek sing kapisah sing ana gandhengane karo pengenal sing kapisah (ID proyek). Ikatan kasebut ditemtokake liwat operasi 'chattr -p' utawa liwat warisan atribut. Kanggo ngatur proyek, prentah "zfs project" lan "zfs projectspace" diwenehake, sing ngidini sampeyan ngatur nggawe proyek lan nyetel watesan ruang disk kanggo wong-wong mau;
  • Nambahake kemampuan kanggo nggawe skrip Lua kanggo ngotomatisasi macem-macem karya karo ZFS. Skrip diluncurake ing lingkungan terpencil khusus nggunakake perintah "program zpool";
  • perpustakaan anyar dileksanakake pyzfs, sing nyedhiyakake API stabil kanggo administrasi ZFS saka aplikasi Python. Perpustakaan punika pambungkus liwat libzfs_core lan menehi pesawat podho rupo saka fungsi, nanging nggunakake jinis nyedhaki Python;
  • Utilitas arcstat, arcsummary lan dbufstat saiki kompatibel karo Python 3. Utilitas arcstat.py, arc_summary.py lan dbufstat.py wis diganti jeneng dadi versi tanpa ekstensi ".py";
  • Dhukungan tambahan kanggo antarmuka kernel Linux Direct IO (O_DIRECT), sing ngidini sampeyan ngakses data tanpa buffering lan ngliwati cache;
  • Optimization kinerja ditampilake:
    • Karya printah "scrub" lan "resilver" wis digawe cepet kanthi dipΓ©rang dadi rong fase (fase kapisah dialokasikan kanggo mindhai metadata lan nemtokake lokasi pamblokiran data ing disk, sing ngidini verifikasi luwih lanjut nggunakake maca data urutan) ;
    • Dhukungan tambahan kanggo kelas Alokasi,
      ngidini drive SSD relatif cilik kalebu ing blumbang lan digunakake kanggo nyimpen mung jinis tartamtu saka pamblokiran asring digunakake, kayata metadata, data DDT lan pamblokiran cilik karo file;

    • Tambah kinerja printah kanggo administrasi, kayata
      "Dhaptar zfs" lan "zfs get", amarga cache metadata sing dibutuhake kanggo operasi kasebut;

    • Dhukungan tambahan kanggo operasi alokasi blok paralel kanthi ngluncurake proses "allocator" sing kapisah kanggo saben grup metaslab. Ing sistem reguler, ana peningkatan kinerja 5-10%, nanging ing gedhe (8 GB SSD, 128 inti NUMA, 24 GB RAM), paningkatan operasi alokasi blok bisa tekan 256%;
    • Nambahake kemungkinan eksekusi telat saka perintah "resilver" (mbangun maneh distribusi data kanthi nimbang owah-owahan ing konfigurasi drive) - yen nalika miwiti operasi anyar sing sadurunge durung rampung, pawang anyar mung bakal miwiti eksekusi. sawise sing sadurunge wis rampung;
    • Optimizations wis digawe kanggo log ZIL (ZFS Intent Log) kanggo ngidini nggawe lan proses pamblokiran nalika ana pamblokiran isih diproses dening panyimpenan;
    • Wektu kanggo ndhaptar partisi (zvol) ing sistem wis suda. Nalika blumbang ngemot nomer akeh sekat, padha saiki kasedhiya sanalika sawise nglakokakΓ© "zpool import";
    • Dhukungan tambahan kanggo akselerasi hardware saka kalkulasi hash SHA256 lan operasi enkripsi AES-GSM nggunakake chip sing ndhukung Intel QAT (Teknologi Bantuan Cepet). Dhukungan tambahan kanggo alat akselerasi hardware kanggo chipset Intel C62x lan CPU Atom C3000.

Source: opennet.ru

Add a comment