Different networks

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

high-availability-clustering

برای ارتباط اعضا با مخزن مشترک نیز بایستی راه ارتباطی وجود داشته باشد که به نوع مخزن استفاده شده بستگی دارد. اگر از نوع Fiber Cannel استفاده نمایید در این روش واسط هایی با نام Host Bus Adapters یا HBAs وجود دارد که اعضای کلاستر از طریق آن به مخزن متصل می‌شوند و اگر روش iSCSI استفاده شده باشد ارتباط از طریق شبکه LAN برقرار می‌شود و نیازی به سخت‌افزار دیگر نیست.

Bonded Network Devices
برای اتصال اعضای کلاستر به شبکه نیازمند کارت شبکه هستیم. اما اگر کارت شبکه یکی از اعضا به هر دلیلی از کار بیفتد آیا هدف اصلی کلاستر که حداکثر در دسترس بودن سرویس هاست, دچار مشکل نخواهد شد؟ بهترین روش این است که برای هر عضو دو کارت شبکه در نظر بگیریم تا با از کار افتادن یکی از آن‌ها کلاستر برقرار بماند. هدف این روش افزونگی است. تا احتمال از دست دادن ارتباط هر یک از اعضا با کمترین هزینه کاهش پیدا کند.

Multipathing

زمانی که یکی از اعضای کلاستر به SAN متصل می‌شود راه‌های مختلفی برای انتقال اطلاعات وجود خواهد داشت. در اینجا اعضای کلاستر تعداد مخازن موجود را به تعداد راه‌های موجود برای رسیدن با مخزن خواهند دید. در‌واقع اگر دو راه برای رسیدن به مخزن اصلی وجود داشته باشد عضو کلاستر دو مخزن متفاوت را در نظر خواهد گرفت. درایور multipath تشخیص میدهد که راه‌های مختلفی که به مخزن وجود دارد آیا به یک مخزن ختم می‌شود یا نه. درواقع اشتباه اعضا را از بین میبرد و سیستم‌های موجود با کمک ابزاری به نام mpatha تشخیص خواهند داد که مسیر های مختلف به یک مخزن وجود دارد و با از دست دادن یکی از مسیر ها, مسیر دیگر را جایگزین خواهند کرد.

Fencing/STONITH Devices and Quorum
در کلاستر ها بایستی از split brain جلوگیری شود. Split brain در‌واقع زمانی رخ میدهد که یک کلاستر نا خواسته به چند کلاستر تبدیل می‌شود و هر یک از کلاستر ها گمان میکنند که تنها کلاستر موجود هستند. لذا وقتی یکی از کلاستر ها شروع به نوشتن اطلاعات در مخزن مینماید کلاستر دیگر بدون اطلاع از تغییرات قبلی ممکن است اطلاعات را از بین برده و اطلاعات خود را جایگزین نماید. باید در نظر داشته باشیم که این روش از کلاسترینگ یا خوشه بندی بایستی تضمین نماید که اطلاعات همواره در دسترس است.
برای جلوگیری از این مشکل دو روش مهم وجود دارد:
۱- quorum
۲- STONITH یا fencing
مفهوم روش quorum ساده است و با این روش کار میکند که اگر کلاستر quorum نداشته باشد نباید فعالیتی انجام دهد. این روش به تنهایی ممکن است مشکل مطرح شده را برطرف نماید اما هرگز نباید اطمینان داشت که اعضای کلاستر از فایل‌های جداگانه ای برای فعالیت خود استفاده کنند. یعنی ممکن است دو عضو از کلاستر همزمان بخواهند یک فایل را تغییر دهند.
مکانیزم دیگری که وجود دارد با نام fencing یا STONITH که مخفف shoot the other node in the head می‌باشد. در این روش سخت افزاری وجود دارد که هر عضوی را که قابلیت پاسخ دهی به کلاستر را نداشته باشد از کلاستر خارج میکند. روش کار به این شرح است که تا کنون دانستیم که اگر هر یک از اعضای کلاستر از دسترس خارج شوند, کلاستر منابعی را که آن عضو در حال استفاده از آن بود در اختیار عضو دیگری قرار میدهد. برای جلوگیری از مشکل مطرح شده, در روش STONITH در هنگام انتقال منابع به عضو دیگر ابتدا کلاستر با ارسال پیغام SHUTDOWN به سخت‌افزار STONITH از خارج شدن عضو قدیمی از کلاستر اطمینان حاصل کرده (STONITH عضو مورد نظر را از کلاستر خارج میکند) و سپس منابع را در اختیار سایر اعضا میگذارد.
زمانی که تنظیمات کلاستر را انجام میدهید بایستی تصمیم بگیرید که از چه نوع STNONITH استفاده خواهید کرد. در تنظیمات خوشه بندی لینوکس این یک انتخاب اجباری است و انتخاب شما میتواند شامل یکی از موارد زیر باشد‌:
• Integrated management boards, such as HP ILO, Dell DRAC ,and IBM RSA
• Power switches that can be managed, such as the APC master device
• Disk-based STONITH, which uses a shared disk device to effectuate the STONITH operation
• Hypervisor-based STONITH, which talks to the hypervisor in a virtualization environment
• Software and demo STONITH solutions (which, in fact, should be avoided at all times)

محمد باقر رستمی

برنامه نویسی رو دوست دارم و از کارم و بیشتر از اون از یادگرفتن لذت می برم. دوست دارم از این طریق برای مردم دنیا مفید باشم. فارغ از رنگ، نژاد، ملیت و جنسیت.

Latest posts by محمد باقر رستمی (see all)

دیدگاه

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

*

*