انتشار OpenZFS 2.1 با پشتیبانی از dRAID

انتشار پروژه OpenZFS 2.1 منتشر شده است که در حال توسعه اجرای سیستم فایل ZFS برای لینوکس و FreeBSD است. این پروژه با نام "ZFS در لینوکس" شناخته شد و قبلاً به توسعه یک ماژول برای هسته لینوکس محدود می شد، اما پس از انتقال پشتیبانی، FreeBSD به عنوان پیاده سازی اصلی OpenZFS شناخته شد و از ذکر نام لینوکس آزاد شد.

OpenZFS با هسته های لینوکس از نسخه 3.10 تا 5.13 و تمام شاخه های FreeBSD از نسخه 12.2-RELEASE آزمایش شده است. کد تحت مجوز CDDL رایگان توزیع می شود. OpenZFS قبلاً در FreeBSD استفاده می شود و در توزیع های Debian، Ubuntu، Gentoo، Sabayon Linux و ALT Linux گنجانده شده است. بسته‌هایی با نسخه جدید به زودی برای توزیع‌های اصلی لینوکس از جمله Debian، Ubuntu، Fedora، RHEL/CentOS آماده خواهند شد.

OpenZFS پیاده سازی اجزای ZFS مربوط به سیستم فایل و مدیریت حجم را ارائه می دهد. به طور خاص، اجزای زیر پیاده‌سازی می‌شوند: SPA (تخصیص دهنده استخر ذخیره)، DMU (واحد مدیریت داده)، ZVOL (حجم شبیه‌سازی شده ZFS) و ZPL (لایه ZFS POSIX). علاوه بر این، این پروژه توانایی استفاده از ZFS را به عنوان پشتیبان برای سیستم فایل خوشه ای Luster فراهم می کند. کار این پروژه بر اساس کد اصلی ZFS است که از پروژه OpenSolaris وارد شده و با بهبودها و اصلاحات انجمن Illumos گسترش یافته است. این پروژه با مشارکت کارکنان آزمایشگاه ملی لیورمور تحت قراردادی با وزارت انرژی ایالات متحده در حال توسعه است.

کد تحت مجوز CDDL رایگان توزیع می شود، که با GPLv2 ناسازگار است، که اجازه ادغام OpenZFS در شاخه اصلی هسته لینوکس را نمی دهد، زیرا ترکیب کد تحت مجوزهای GPLv2 و CDDL غیرقابل قبول است. برای دور زدن این ناسازگاری مجوز، تصمیم گرفته شد که کل محصول تحت مجوز CDDL به عنوان یک ماژول قابل دانلود جداگانه، که به طور جداگانه از هسته عرضه می شود، توزیع شود. پایداری پایگاه کد OpenZFS با سایر FS های لینوکس قابل مقایسه است.

تغییرات اصلی:

  • اضافه شدن پشتیبانی از فناوری dRAID (Distributed Spare RAID) که نوعی از RAIDZ با پردازش بلوک توزیع شده یکپارچه برای قطعات یدکی داغ است. dRAID تمام مزایای RAIDZ را به ارث می برد، اما امکان افزایش قابل توجهی در سرعت ذخیره سازی مجدد و بازیابی افزونگی در آرایه را فراهم می کند. dRAID ذخیره سازی مجازی از چندین گروه داخلی RAIDZ تشکیل شده است که هر کدام شامل دستگاه هایی برای ذخیره داده ها و دستگاه هایی برای ذخیره بلوک های برابری است. این گروه ها برای استفاده بهینه از پهنای باند دیسک موجود در همه درایوها توزیع شده اند. به جای یک درایو بازیابی داغ جداگانه، dRAID از مفهوم توزیع منطقی بلوک های بازیابی داغ در تمام درایوهای آرایه استفاده می کند.
    انتشار OpenZFS 2.1 با پشتیبانی از dRAID
  • ویژگی "compatibility" ("zpool create -o compatibility=off|legacy|file[,file...] pool vdev") را پیاده سازی کرد که به مدیر اجازه می دهد مجموعه ای از قابلیت هایی را که باید در استخر فعال شوند، به ترتیب انتخاب کند. برای ایجاد استخرهای قابل حمل و حفظ سازگاری بین استخرهای نسخه های مختلف OpenZFS و پلتفرم های مختلف.
  • امکان ذخیره آمار مربوط به عملکرد استخر در قالب InfluxDB DBMS وجود دارد که برای ذخیره، تجزیه و تحلیل و دستکاری داده ها در قالب یک سری زمانی (برش هایی از مقادیر پارامترها در بازه های زمانی مشخص) بهینه شده است. برای صادرات به قالب InfluxDB، دستور "zpool influxdb" پیشنهاد شده است.
  • اضافه شدن پشتیبانی برای افزودن داغ حافظه و CPU.
  • دستورات و گزینه های جدید:
    • "zpool create -u" - نصب خودکار را غیرفعال کنید.
    • "zpool history -i" - مدت زمان اجرای هر فرمان را در تاریخچه عملیات منعکس می کند.
    • "وضعیت zpool" - پیام هشدار در مورد دیسک هایی با اندازه بلوک غیربهینه اضافه شده است.
    • "zfs send —skip-missing|-s" — هنگام ارسال یک جریان برای تکرار، عکس‌های فوری از دست رفته را نادیده می‌گیرد.
    • "zfs rename -u" - نام فایل سیستم را بدون نصب مجدد تغییر می دهد.
    • Arcstat پشتیبانی از آمار L2ARC را اضافه کرد و گزینه های "-a" (همه) و "-p" (قابل تجزیه) را اضافه کرد.
  • Optimizations:
    • عملکرد تعاملی I/O بهبود یافته است.
    • Prefetch برای بارهای کاری مربوط به دسترسی موازی به داده تسریع شده است.
    • بهبود مقیاس پذیری با کاهش اختلاف قفل.
    • زمان واردات استخر کاهش یافته است.
    • کاهش تکه تکه شدن بلوک های ZIL.
    • بهبود عملکرد عملیات بازگشتی
    • بهبود مدیریت حافظه
    • بارگذاری ماژول هسته تسریع شده است.

منبع: opennet.ru

اضافه کردن نظر