خوش آموز درخت تو گر بار دانش بگیرد، به زیر آوری چرخ نیلوفری را


مقدمه ای بر FreeNAS و آشنایی با آن

مقدمه ای بر FreeNAS و آشنایی با آن
در سال 2005 پس از کشمکش بی حد و حصر برای راه اندازی network file storage خانگی خود، Olivier Cochard-Labbé تصمیم گرفت راه حلی برای ساده سازی این روند ایجاد کند. برنامه نویسی و پیکربندی زیادی انجام شد و او FreeNAS - Free را ایجاد کرد و بر اساس FreeBSD و NAS مانند Network Attached Storage بصورت آزادانه و منبع باز در دسترس است.

نرم افزار سامانه مودیان راهکار
دیری نگذشت که یک جامعه پر جنب و جوش در اطراف پروژه شکل گرفت و FreeNAS شروع به شکل گیری به عنوان یک محصول واقعی کرد که شامل طیف وسیعی از سرویس ها، از جمله اشتراک فایل تا media streaming بود.


با این حال، تا سال 2010، Cochard-Labbé دیگر قادر به اختصاص زمان و منابع کافی برای ادامه پروژه FreeNAS نبود، بنابراین کنترل آن را به iXsystems، شرکتی که به دلیل پشتیبانی از نرم افزارهای منبع باز و FreeBSD مشهور است، واگذار کرد.
user interface به طور کامل از نو پیاده سازی شد و ویژگی هایی مانند رمزگذاری دیسک(disk encryption) برای ZFS pool ها و third-party plugin ها برای پشتیبانی از نصب سرویس های غیر اصلی اضافه شد. امروزه FreeNAS در حال توسعه بیشتر و بسیار فعال است چرا که از هر نسخه صد ها هزار دانلود و در مجموع بیش از 5.5 میلیون دانلود از زمان شروع آن انجام شده است.
اگرچه FreeNAS برای محیط های خانگی و اداری کوچک طراحی شده است، اما دارای یک کلاس تجاری واقعی با نام TrueNAS است. بر اساس FreeNAS ، TrueNAS یک دستگاه ذخیره سازی یکپارچه در سطح سازمانی است که توسط iXsystems ایجاد شده است و با ذهنیت محیط فناوری اطلاعات بسیار مهم طراحی شده است. TrueNAS ویژگی های سازمانی مانند hardware failover، performance tuning، گزارش دهی، پشتیبانی 7/24 و سایر قابلیت ها که با کنترل کامل نرم افزار و سخت افزار امکان پذیر می شود، اضافه می کند. با این حال، تعداد شگفت انگیزی از ادمین های maverick sys از FreeNAS در محیط های تجاری و Enterprise استفاده می کنند. در این مقاله، FreeNAS را معرفی می کنیم و یک دید کلی از ویژگی هایی را که بیشتر برای کاربران سازمانی مناسب است ارائه می دهیم. همچنین در مورد ZFS که اصلی ترین فایل سیستم مورد استفاده در FreeNAS و منبع قابل توجهی از قدرت آن است بحث می کنیم. ما به ملاحظات سخت افزاری یا پیکربندی لازم برای استفاده بهتر و بهینه تر از FreeNAS اشاره می کنیم و در نهایت نحوه راه اندازی و نگهداری FreeNAS را توضیح می دهیم.

ذخیره سازی ساده

یکی از ویژگی های کلیدی FreeNAS فایل سیستم ZFS یا Zettabyte File System است. ZFS که در اصل توسط Sun Microsystems توسعه یافته بود برای ذخیره سازی برای ظرفیت های بالا و برای حل بسیاری از مسائل مربوط به ذخیره سازی، مانند silent data corruption و volume management و... طراحی شده بود.
ZFS از سطوح مختلفی از RAID های نرم افزاری پشتیبانی می کند. همانطور که در شکل زیر مشاهده می کنید FreeNAS ZFS Volume Manager کاربر را به RAID بهینه برای پیکربندی هدایت کردهخ است.


مقدمه ای بر FreeNAS و آشنایی با آن
رابط گرافیکی FreeNAS همچنین از پیکربندی dataset های داده ZFS تو در تو در درون فایل سیستم ها پشتیبانی می کند. dataset های ZFS مانند ساب دایرکتوری هایی هستند که دارای ویژگی های قابل پیکربندی و تنظیم مستقل از فایل سیستم اصلی خود هستند(مثلا قابلیت پیکربندی فشرده سازی). Dataset های ZFS همچنین می توانند با سهمیه بندی یا quota و reserved space پیکربندی شوند و برای سناریوهای thin-provisioning کاربردی تر می شوند. Snapshot های dataset ها را می توان جدا از فایل سیستم parent برنامه ریزی یا زمانبندی کرد یا می توان آنها را بصورت بازگشتی یا recursive در یک snapshot از volumeوالد قرار داد. از نسخه 8.3.1 ، FreeNAS حتی از ایجاد ZFS volume های روی دیسک های Encrypt شده پشتیبانی می کند. این رمز نگاری دیسگ در سطح block-level بر اساس Geli از FreeBSD است و از hardware acceleration در سیستم هایی با پردازنده های دارای قابلیت AES-NI پشتیبانی می کند.

پیکربندی سرویس های اصلی

FreeNAS پشتیبانی داخلی برای انواع پروتکل های مبتی بر اساس فایل مانند CIFS، NFS را پشتیبانی می کند. CIFS یا Common Internet File System معمولاً در محیط های ویندوز یا محیط هایی با ترکیبی از سيستم عامل های ویندوز و یونیکس استفاده می شود. NFS یا Network File System معمولاً برای اپلیکیشن های با Performance بالا و در محیط های ناهمگن(نامتجانس) استفاده می شود. FreeNAS همچنین از AFP برای محیط های Mac OS X، از جمله بک آپ گیری Time Machine پشتیبانی می کند.


مقدمه ای بر FreeNAS و آشنایی با آن
داده هایی که باید Share شوند از طریق قسمت Sharing در UI وب پیکربندی می شوند. dataset های ZFS امکان به اشتراک گذاری سناریوهای پیچیده را فراهم می کند و ادمین را قادر می سازد تا پیکربندی را برای برآوردن نیازهای شبکه مانند quota های کاربران/گروه ها، مجوزهای کاربر/گروه، properties داده ها، snapshot و بک آپ را customize و تنظیم کند.
برای برنامه های بلاک بیس، FreeNAS از حالت iSCSI target برای file extent و دیسک های فیزیکی یا ویژگی zvols پشتیبانی می کند. ویژگی ZFS که یک دیسک مجازی ایجاد می کند بلوک ها در فایل سیستم اصلی ذخیره می شوند. CHAP و mutual CHAP برای احراز هویت target و initiator گنجانده شده است.
پشتیبانی از سرویس های دایرکتوری Built-in برایActive Directory ، LDAP و NIS به سازمان های بزرگ اجازه می دهد تا FreeNAS را در زیرساخت های موجود خود ادغام کنند. سایر سرویس های Built-in شامل پشتیبانی از UPS ، SNMP و SSH به عنوان جایگزین های remote management و همچنین rsync برای سناریوهای replication و بک آپ گیری های تخصصی تر است.

ذخیره داده ها: بک آپ گیری FreeNAS

FreeNAS انواع مختلفی از روش های بک آپ گیری را پشتیبانی می کند. همانطور که گفته شد، سرویس rsync قابلیت بک آپ گیری incremental را پشتیبانی می کند. امکانات iSCSI را می توان با نرم افزار بک آپ گیری در پلتفرم های قابل اجرا استفاده کرد. Mac OS X کلاینت می تواند از FreeNAS AFP خود به عنوان Time Machine target استفاده کند. در نهایت، هر network share می تواند به عنوان مقصد اسکریپت ها یا برنامه های administrator مورد استفاده قرار گیرد. Snapshot های ZFS همچنین ابزاری قدرتمند برای حفظ و بازیابی نسخه های قدیمی تر داده ها هستند. Snapshot های ZFS تمام بلوک های مورد استفاده توسط فایل ها را در زمان Snapshot را نگه می دارند و می تواند به دیگر هاست های پشتیبانی کننده ZFS ارسال شود یا از آنها دریافت شود(با استفاده از SSH).
Snapshot ها فقط به اندازه metadata هایی که برای توصیف آنها استفاده می شود فضا را اشغال می کنند. در صورت نیاز به بازیابی فایل ها از یک Snapshot قدیمی، می توانید به راحتی آن را Clone کرده و به اشتراک بگذارید. اگر نسخه فعلی یک فایل سیستم کاملا بلااستفاده شود، کل فایل سیستم می تواند به حالت قبل از snapshot بازگردد. FreeNAS از Snapshot های schedule شده به مقدار 5 دقیقه و زمان حفظ آنها به اندازه یک ساعت پشتیبانی می کند.

مقدمه ای بر FreeNAS و آشنایی با آن
همانطور که قبلاً ذکر شد، snapshot ها نیز می توانند schedule شوند تا در یک سیستم ریموت سازگار با همان نسخه ZFS اجرا شوند. Snapshot replication تنها تفاوتها را از آخرین snapshot منتقل می کند و پهنای باند را حفظ می کند.

داشتن دانش کافی در مورد ZFS برای استقرار موفقیت آمیز FreeNAS در محیط سازمانی ضروری است. ZFS pool ها با پیکربندی ضعیف می توانند عملکردی غیر مطلوب را تجربه کنند. برعکس، استقرار مناسب و مطابق با Plan و برنامه ریزی شده ZFS می تواند موفقیت قطعی را تضمین کند و بهترین استفاده را از ویژگی های ZFS ببرید.
فایل سیستم ZFS در یک Pool قرار دارد که ممکن است شامل یک یا چند گروه از دستگاه ها به نام vdevs باشد. انواع احتمالی vdev دیسک های individual، mirror ها، مجموعه های RAID-Z1 ، RAID-Z2 و RAID-Z3 هستند. همه گروه های کامپوننت یک ZFS Pool به شیوه ای شبیه به striping ترکیب شده اند، بدان معنی که اگر حتی یک گروه در pool بیش از تحمل خرابی اش آسیب ببیند کل Pool دچار مشکل خواهد شد. تنظیم parity و Mirror فقط در گروه ها امکان پذیر است. RAID 0+1 یا 51 در ZFS وجود ندارد و فقط تنظیمات دستگاه مشابه RAID 10 ، 50 یا 60 است.
بصورت پیشفرض ZFS از هر RAM غیرفعال یا IDLE در سیستم به عنوان Adaptive Replacement Cache یا ARC استفاده می کند. یک قاعده رایج برای ARC این است که اجازه دهید 1 گیگابایت RAM برای هر 1 ترابایت داده سیستم کنار گذاشته شود. اگرچه SSD درایوها امروزه برترین عملکرد را در ذخیره سازی داده ها نشان می دهند ، اما هنوز به لحاظ هزینه ای، ظرفیت جایگزینی کامل برای HDD را ندارند. بنابراین ZFS می تواند از Performance بالاتر SSD ها به عنوان دستگاه های ZFS Intent Log (ZIL) و Level 2 Adaptive Replacement Cache یا L2ARC بهترین استفاده را ببرد.
دستگاه هایی مانند L2ARC می توانند فضای بیشتری را برای ذخیره سازی فراهم کرده و latency و توان Read را به میزان قابل توجهی افزایش دهند. در سناریوهایی که از دستگاه L2ARC استفاده می شود باید سعی کنید اندازه دستگاه را با سایز کار مطابقت دهید (داده هایی که اغلب خوانده می شوند). ZFS از چندین دستگاه L2ARC پشتیبانی می کند و ممکن است دستگاه های L2ARC با استفاده از رابط کاربری FreeNAS اضافه یا حذف شوند. FreeNAS همچنین ابزار خط فرمان zilstat را برای کمک به Admin دارد که تعیین می کند آیا workload سیستم با افزودن L2ARC سود می برد یا خیر.
ZIL رایت های همزمان را رکورد می کند و این تضمین را می کند که رایت های همزمان قبل از ثبت موفقیت آمیز به مدیاهای Stable ثبت می شوند. ZFS همچنین امکان ایجاد یک separate intent log یا SLOG بر روی یک دستگاه یا مجموعه ای از دستگاه ها را می دهد. SLOG اختلاف منابع دیسک Pool را کاهش می دهد ولی اگر از دستگاهی با Performance پایین برای ZIL استفاده شود این امکان وجود دارد که منجر به bottleneck برای performance شود. در حالت ایده آل ، شما باید یک فلش با تاخیر پایین و توان بالا را انتخاب کنید. ظرفیت برای دستگاه های ZIL اهمیت چندانی ندارد زیر ZIL به طور معمول هر 5 ثانیه در Flush می شود. نوشته های Asynchronous یا ناهمزمان از مزایای دستگاه های ZIL بهره نمی برند.
ZFS از deduplication یا حذف block-level داده های تکراری پشتیبانی می کند. Deduplication بیشتر مناسب دستگاه هایی که به عنوان بک آپ از آنها استفاده می شود بیشتر مناسب است.
متد فشرده سازی پیشفرض، LZ4 نرخ فشرده سازی یا compression rate تقریباً واقعی را ارائه می دهد. Deduplication و compression یک اخطار مشترک دارند و آنهم اینکه: بلوک های نوشته شده در یک Pool که در آن deduplication و compression فعال است، تا حذف بلوک ها به همان صورت باقی می ماند. بنابراین، حتی فعال سازی موقت deduplication یا compression می تواند پیامدهای performance ای طولانی مدت داشته باشد و نیاز به برنامه ریزی مناسب در راه اندازی ZFS و FreeNAS را تقویت می کند.
تمام metadata ها مورد نیاز ZFS در Pool اش ذخیره می شود بنابراین یک ZFS Pool، از یک سیستم می تواند Export شده و توسط سیستم عامل دیگری با نسخه سازگار ZFS، Import شود. از نظر تئوری، این بدان معناست که ZFS pool های ایجاد شده FreeNAS یا سیستم دیگر با استفاده از همان نسخه ZFS می توانند در سیستم عامل ها Import شوند و سازگار با remote snapshot replication هستند. در عمل شما همیشه پیش از اینکه آنها را بخشی از برنامه مداوم کسب و کار یا disaster recovery کنید، باید چنین راه حل های ریکاوری اطلاعات را آزمایش و مستند سازی کنید.
دیسک های رمزگذاری شده از قاعده قابل حمل یا پرتابل برای ZFS pool ها مستثنی هستند. توصیه می شود در صورت نیاز به نصب یک ZFS pool رمزگذاری شده در مکان های دیگر از سیستم FreeNAS دیگری استفاده کنید که از همان سیستم عامل (و همچنین ZFS) استفاده می کند زیرا روشهای رمزگذاری و روشهای مدیریت کلیدی می تواند تغییر کند.
ویژگی ZFS Scrubs عملکرد یا functionality ارائه شده توسط fsck را افزایش می دهد. ZFS scrub به جای متادیتای فایل سیستم هر بلوک روی دیسک را بررسی می کند. در طول scrub هر بلوک با checksum خود بررسی می شود که با اشاره گر آن بلوک در جای دیگر از دیسک ذخیره می شود. در صورت عدم مطابقت checksum، ZFS اقدام به تعمیر می کند و تعداد ناهماهنگی هایی را که در گزارش اسکراب خود پیدا کرده است نشان می دهد. این ویژگی می تواند نشانه های اولیه از خرابی دیسک را ارائه دهد. از آنجا که تمام داده ها را از روی دیسک می خواند. اسکراب ZFS یک عملیات فشرده ورودی و خروجی است و بهتر است برای زمان هایی که Workload کم است برنامه ریزی شود. FreeNAS به طور خودکار اسکراب را برای هر ZFS volume هر پنجشنبه یکشنبه در نیمه شب برنامه ریزی می کند. می توانید از رابط کاربری FreeNAS برای تغییر برنامه در صورت نیاز استفاده کنید.
هنگام برنامه ریزی برای هرگونه سناریوی استقرار تجاری باید بین الزامات مختلف برای performance، حفاظت از داده ها ، ظرفیت و رشد آینده، یکی را انتخاب کنید و اولویت اصلی قرار دهید. قسمت زیادی از Performance در FreeNAS به پارامترهای ZFS pool و میزان RAM در سیستم متکی است. موارد استفاده خاص از CPU سریعتر یا هسته های بیشتر CPU سود می برند و طبیعتاً شبکه می تواند بدون سوئیچ و کارت شبکه مناسب به یک bottleneck تبدیل شود.
در کسب و کارهای کوچکتر، RAM بیشتر یا L2ARC سریع ممکن است performance بارهای تصادفی و سنگین را به میزان قابل توجهی افزایش دهد. Workload های بسیار متوالی یا workload ای که اغلب بخش بزرگی از داده های ذخیره شده را می خوانند از این رویکرد سود کمتری خواهند برد. در قسمت Write، اپلیکیشن های نوشتاری همزمان (به عنوان مثال، NFS یا iSCSI برای اهداف مجازی سازی) از دستگاه های ZIL با تأخیر کم و توان بالا بهره مند می شوند.
برای شبکه، FreeNAS از دو گیگابیت و 10 گیگابیت اترنت پشتیبانی می کند. پیکربندی شبکه را می توان از طریق کنسول و همچنین از رابط کاربری وب انجام داد. FreeNAS همچنین از تعدادی پروتکل link aggregation پشتیبانی می کند که از جمله به LACP، link failover و round-robin پشتیبانی می کند. Link aggregation به یک سوئیچ یا روتر مناسب نیاز دارد.
در خصوص نصب و پیکربندی FreeNAS و استفاده از آن در مقالات آتی صحبت خواهیم کرد و نصب و پیکربندی آن را انجام خواهیم داد.

مقاله بعدی: نحوه نصب FreeNAS روی VMWare Workstation و پیکربندی اولیه آن

نمایش دیدگاه ها (0 دیدگاه)

دیدگاه خود را ثبت کنید:

انتخاب تصویر ویرایش حذف
توجه! حداکثر حجم مجاز برای تصویر 500 کیلوبایت می باشد.


دسته بندی مطالب خوش آموز