په لینکس 0.8.0 کې د ZFS خوشې کول، د لینکس کرنل لپاره د ZFS پلي کول

د نږدې دوه کلونو پرمختګ وروسته وړاندې شوی خوشې کول ZFS په لینکس 0.8.0 کې، د ZFS فایل سیسټم پلي کول د لینکس کرنل لپاره د ماډل په توګه بسته شوي. ماډل د 2.6.32 څخه تر 5.1 پورې د لینکس کرنل سره ازمول شوی. د نصب کولو لپاره چمتو کڅوړې ژر راځي چمتو به شي د لوی لینکس توزیعونو لپاره لکه دبیان، اوبنټو، فیډورا، RHEL/CentOS. د لینکس ماډل کې ZFS لا دمخه په Debian، Ubuntu، Gentoo، Sabayon Linux او ALT لینکس توزیع کې شامل دی.

په لینکس کې د ZFS برخې په توګه، د ZFS اجزاو پلي کول د فایل سیسټم عملیات او د حجم مدیر فعالیت دواړه سره تړاو لري. په ځانګړې توګه، لاندې برخې پلي کیږي: SPA (د ذخیره کولو حوض تخصیص کونکی)، DMU (د معلوماتو مدیریت واحد)، ZVOL (ZFS ایمول شوی حجم) او ZPL (ZFS POSIX پرت). سربیره پردې، پروژه د Luster کلستر فایل سیسټم لپاره د بیکینډ په توګه د ZFS کارولو وړتیا چمتو کوي. د پروژې کار د اصلي ZFS کوډ پراساس دی چې د OpenSolaris پروژې څخه وارد شوی او د Illumos ټولنې څخه د اصلاحاتو او اصلاحاتو سره وده شوی. دا پروژه د لیورمور ملي لابراتوار د کارمندانو په ګډون سره د متحده ایالاتو د انرژي وزارت سره د تړون لاندې رامینځته کیږي.

کوډ د وړیا CDDL جواز لاندې توزیع شوی ، کوم چې د GPLv2 سره مطابقت نلري ، کوم چې په لینکس کې ZFS ته اجازه نه ورکوي چې د لینکس کرنل اصلي څانګې کې مدغم شي ، ځکه چې د GPLv2 او CDDL جوازونو لاندې د کوډ مخلوط اجازه نلري. د دې جواز نامناسب کیدو مخنیوي لپاره ، پریکړه وشوه چې ټول محصول د CDDL جواز لاندې د جلا بار وړ وړ ماډل په توګه توزیع کړي ، کوم چې له اصلي څخه جلا چمتو کیږي. د لینوکس کوډبیس کې د ZFS ثبات د لینوکس لپاره د نورو فایل سیسټمونو سره د پرتله کولو په توګه درجه بندي شوی.

اصلي بدلونونه:

  • د فایل سیسټم او برخو په کچه د ذخیره شوي ډیټا کوډ کولو لپاره جوړ شوی ملاتړ اضافه شوی. د ډیفالټ کوډ کولو الګوریتم aes-256-ccm دی. د "zfs load-key" کمانډ د کوډ کولو کیلي بارولو لپاره وړاندیز شوی؛
  • د کوډ شوي ډیټا لیږدولو وړتیا پلي کول کله چې د 'zfs لیږل' او 'zfs ترلاسه کول' کمانډونه اجرا کول. کله چې د "-w" اختیار مشخص کړئ، په حوض کې دمخه کوډ شوي ډاټا بل حوض ته لیږدول کیږي لکه څنګه چې د منځګړیتوب ډیکریپشن پرته. د دې ډول کاپي کولو سره، ډاټا د لیږونکي کیلي لخوا خوندي پاتې کیږي، کوم چې د دې طریقې کارولو ته اجازه ورکوي بې باوره سیسټمونو ته د بیک اپ لپاره (که چیرې ترلاسه کونکي موافقت وکړي، برید کونکی به د کیلي پرته ډاټا ته لاسرسی ونلري)؛
  • د ذخیره کولو حوض څخه د لومړني ډرایو لرې کولو لپاره ملاتړ اضافه شوی ، دواړه په انفرادي ډول او د عکس برخې په توګه وصل شوي. لرې کول د "zpool لرې کولو" کمانډ سره ترسره کیږي. د حذف کولو پروسه په حوض کې پاتې لومړني ډرایو ته د خارج شوي ډرایو څخه ډاټا کاپي کوي؛
  • د "zpool checkpoint" کمانډ اضافه شوی ترڅو د حوض اوسنی حالت خوندي کړي ترڅو په وخت کې خوندي شوي نقطې ته نور بدلونونه بیرته راوباسي (د ټول حوض سنیپ شاټ رامینځته شوی). دا خصوصیت د احتمالي خطرناک پیچلي اداري کار ترسره کولو پروسې کې ګټور کیدی شي ، کوم چې په نورمال شرایطو کې د نه بدلیدونکي بدلونونو لامل کیږي (د مثال په توګه ، د نوي ZFS فعالیت لپاره د بیرغونو فعالول یا د معلوماتو پاکول)؛
  • د "zpool trim" کمانډ اضافه شوی ترڅو په حوض کې کارول شوي ډرایو ته د سکتورونو په اړه خبر کړي چې نور په کار نه دي. د TRIM عملیاتو کارول دا امکان ورکوي چې د SSDs موثریت زیات کړي او د دوی د فعالیت تخریب مخه ونیسي. یو نوی "آټوټریم" ملکیت وړاندیز شوی ترڅو د TRIM امرونو لیږدولو دوامداره شالید پروسې وړ کړي؛
  • د ټولو نه تخصیص شوي ډیسک ځای پیل کولو لپاره د "zpool ابتدایئ" کمانډ اضافه شوی ، کوم چې دا اجازه ورکوي چې سمدستي کارونې لپاره چمتو شي ، پرته له دې چې په لومړي لاسرسي کې د فعالیت تخریب (د مثال په توګه ، کله چې د مجازی ذخیره کولو کوربه کول لکه VMware VMDK)؛
  • د محاسبې او پروژې کچې کوټونو لپاره ملاتړ اضافه شوی ، د مخکینیو موجود کارونکي او ګروپ کچې کوټونو سربیره. په اصل کې، پروژې د شیانو جلا ځای دی چې د جلا پیژندونکي (د پروژې ID) سره تړاو لري. پابند د 'chattr -p' عملیاتو له لارې یا د منسوب میراث له لارې تعریف شوی. د پروژې مدیریت لپاره، د "zfs پروژه" او "zfs projectspace" کمانډونه وړاندې کیږي، کوم چې تاسو ته اجازه درکوي د پروژو رامینځته کول اداره کړئ او د دوی لپاره د ډیسک ځای محدودیتونه وټاکئ؛
  • د ZFS سره مختلف کار اتومات کولو لپاره د لوا سکریپټونو رامینځته کولو وړتیا اضافه کړه. سکریپټونه د "zpool پروګرام" کمانډ په کارولو سره په ځانګړي جلا چاپیریال کې چلیږي؛
  • نوی کتابتون جوړ شو pyzfs، کوم چې د Python غوښتنلیکونو څخه د ZFS اداره کولو لپاره مستحکم API چمتو کوي. کتابتون د libzfs_core په شاوخوا کې یو پوښ دی او د افعالونو ورته سیټ چمتو کوي، مګر د Python نږدې ډولونه کاروي؛
  • د arcstat، arcsummary، او dbufstat اسانتیاوې د Python 3 سره مطابقت لري. د arcstat.py، arc_summary.py، او dbufstat.py یوټیلټيز د ".py" توسیع پرته نسخو ته بدل شوي؛
  • د لینکس مستقیم IO (O_DIRECT) کرنل انٹرفیس لپاره ملاتړ اضافه شوی ، کوم چې پرته له بفر کولو او کیچ څخه تیرولو ډیټا ته لاسرسي ته اجازه ورکوي؛
  • د فعالیت اصلاح معرفي شوي:
    • د "سکرب" او "ریزلور" کمانډونو کار په دوه مرحلو ویشلو له امله ګړندی شوی دی (یو جلا مرحله د میټاډاټا سکین کولو او په ډیسک کې د ډیټا سره د بلاکونو موقعیت ټاکلو لپاره ځانګړې شوې ، کوم چې د ترتیب شوي ډیټا په کارولو سره نور تایید ته اجازه ورکوي. لوستل؛
    • د تخصیص ټولګیو لپاره ملاتړ اضافه شوی،
      نسبتا کوچني SSDs ته اجازه ورکول چې راټول شي او یوازې د ځانګړو ډولونو عام کارول شوي بلاکونو ذخیره کولو لپاره وکارول شي ، لکه میټاډاټا ، DDT ډیټا ، او کوچني فایل بلاکونه؛

    • د اډمین کمانډونو ښه فعالیت لکه
      د "zfs لیست" او "zfs get" د دوی د عملیاتو لپاره اړین میټاډاټا کیچ کولو سره؛

    • د بلاک تخصیص عملیاتو موازي کولو لپاره د هر میټاسلاب ګروپ لپاره د جلا تخصیص پروسې په چلولو سره ملاتړ اضافه شوی. په دودیز سیسټمونو کې، د 5-10٪ فعالیت زیاتوالی شتون لري، مګر په لویو کې (8 128 GB SSD، 24 کور NUMA، 256 GB RAM)، د بلاک تخصیص عملیات کې زیاتوالی 25٪ ته رسیدلی شي؛
    • د "resilver" کمانډ د ځنډیدلو اجرا کولو احتمال اضافه شوی (د ډیټا توزیع بیا رغول د ډرایو په ترتیب کې د حساب بدلونونو په پام کې نیولو سره) - که پخوانی د نوي عملیاتو پیل کولو پرمهال بشپړ شوی نه وي ، نو نوی هینډلر به یوازې وروسته اجرا کول پیل کړي. پخوانی پای ته رسیدلی؛
    • اصلاح کول په ZIL (ZFS Intent Log) کې اضافه شوي ترڅو د بلاکونو په شتون کې د بلاکونو رامینځته کولو او پروسس کولو اجازه ورکړي چې لاهم د ذخیره کولو لخوا پروسس کیږي.
    • په سیسټم کې د برخې (zvol) لپاره د راجسټریشن وخت کم شوی. کله چې یو حوض ډیر شمیر برخې ولري، دوی اوس د "zpool واردات" کولو وروسته سمدلاسه شتون لري؛
    • د Intel QAT (چټک مرستې ټیکنالوژۍ) چپس په کارولو سره د SHA256 هشونو او AES-GSM کوډ کولو عملیاتو د هارډویر ګړندي محاسبې لپاره ملاتړ اضافه شوی. د Intel C62x چپسیټ او CPU اتوم C3000 هارډویر سرعت لپاره ملاتړ اضافه شوی.

سرچینه: opennet.ru

Add a comment