مکانیسم blksnap برای ایجاد عکس های فوری از دستگاه های بلوک در لینوکس پیشنهاد شده است

Veeam، یک شرکت تولید کننده نرم افزارهای بک آپ گیری و بازیابی فاجعه، ماژول blksnap را برای گنجاندن در هسته لینوکس پیشنهاد کرده است که مکانیزمی را برای ایجاد عکس های فوری از دستگاه های بلوک و ردیابی تغییرات در دستگاه های بلوک پیاده سازی می کند. برای کار با عکس های فوری، ابزار خط فرمان blksnap و کتابخانه blksnap.so آماده شده است که به شما امکان می دهد با ماژول هسته از طریق فراخوانی ioctl از فضای کاربر تعامل داشته باشید.

هدف از ایجاد این ماژول، سازماندهی پشتیبان گیری از درایوها و دیسک های مجازی بدون توقف کار است - این ماژول به شما امکان می دهد وضعیت فعلی کل دستگاه بلوک را در یک عکس فوری ثبت کنید، و یک قطعه ایزوله برای پشتیبان گیری ارائه دهید که به تغییرات در حال انجام بستگی ندارد. . یکی از ویژگی های مهم blksnap توانایی ایجاد همزمان عکس های فوری برای چندین دستگاه بلوک به طور همزمان است که نه تنها به اطمینان از یکپارچگی داده ها در سطح دستگاه بلوک، بلکه به دستیابی به ثبات در وضعیت دستگاه های بلوک مختلف در پشتیبان نیز اجازه می دهد.

برای ردیابی تغییرات در زیرسیستم دستگاه بلوک (bdev)، امکان ضمیمه کردن فیلترهایی که به شما امکان می دهد درخواست های I / O را رهگیری کنید اضافه شده است. blksnap فیلتری را پیاده‌سازی می‌کند که درخواست‌های نوشتن را قطع می‌کند، مقدار قدیمی را می‌خواند و آن را در لیست جداگانه‌ای از تغییرات ذخیره می‌کند که وضعیت عکس فوری را تعیین می‌کند. با این رویکرد، منطق کار با یک دستگاه بلوک تغییر نمی کند، ضبط در دستگاه بلوک اصلی بدون توجه به عکس های فوری به همان صورت انجام می شود که امکان خرابی داده ها را از بین می برد و حتی در صورت بروز خطاهای بحرانی غیرقابل پیش بینی از بروز مشکل جلوگیری می کند. در blksnap و سرریز فضای اختصاص داده شده برای تغییرات.

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

Blksnap بر اساس کد ماژول veeamsnap است که بخشی از محصول Veeam Agent برای لینوکس است، اما برای مشخصات تحویل در بخش اصلی هسته لینوکس دوباره طراحی شده است. تفاوت مفهومی بین blksnap و veeamsnap استفاده از سیستمی از فیلترهای متصل به یک دستگاه بلوک است، به جای یک جزء bdevfilter جداگانه که I/O را رهگیری می کند.

منبع: opennet.ru

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