PDA

View Full Version : کمی در مورد Failover Clustering



AminSobati
سه شنبه 17 آذر 1383, 00:27 صبح
سلام به همه دوستان عزیز،
من در حال نوشتن یک مقاله بودم که به خاطر آوردم دوستان زیادی در این بخش راجع به Log Shipping سوال مطرح میکنن. Log Shipping تنها یکی از قابلیتهای SQL Server برای داشتن Hot Standby Server هستش که به Admin کمک میکنه تا با صرف زمان کمتر، سرور دوم رو به جای سرور آسیب دیده وارد عمل کنه. ولی یکی از قابلیتهای برجسته SQL Server در این خصوص، Failover Clustering هست که به دلیل نیاز به دانش فنی بالاتر و مهمتر از همه، هزینه بیشتر تا حدودی در کشور ما ناشناخته مونده. قسمت مقدمه این مقاله راجع به معرفی Failover Clustering هست که بخشی از اون به دوستان تقدیم میشه :)
-----------------------------------------
Failover Clustering

انتخاب بین راهکارهای موجود برای افزایش SQL Server Availability به شرایط و پارامترهای متعددی وابسته است. در بعضی محیطها به خاطر کاربرد و نوع استفاده از SQL Server، برای راه اندازی مجدد و یا جایگزینی Server از کار افتاده شاید تاخیری در حدود 20 دقیقه جایز باشد ولی در محیطی دیگر، به دلیل سرویس دهی به نرم افزارهای پر کاربرد و حساس، این زمان بیش از یک یا دو دقیقه قابل قبول نیست.
اگر چه داشتن Log Shipping صحیح و مناسب قادر است سرعت عمل نسبتا خوبی را برای سوئیچ کردن از Primary Server به Secondary Server تامین نماید، اما این کار مستلزم حضور فیزیکی Administrator و آگاهی بلادرنگ او از بروز مشکل در Primary Server میباشد. لذا ضعف Log Shipping در ارائه سرویسهای 24x7 باعث میشود تا راهکاری به نام Clustering مورد توجه قرار گیرد. در این روش، سرویس Clustering به طور مرتب Heartbeat (ضربان قلب!) را از SQL Server دریافت مینماید و اگر احیانا Heartbeat بعد از طی شدن حداکثر زمان مجاز دریافت نشود، آنرا غیر فعال تلقی کرده و SQL Server دوم که از قبل به سرویس Clustering معرفی شده وارد عمل میشود. این تغییرات بدون حضور Administrator صورت میپذیرد و کاربران، کمترین تاخیر ممکن را متحمل خواهند شد.
اگر چه تتظیمات حساس Clustering تاثیر بسزایی در عملکرد و قابل اطمینان بودن آن به هنگام بروز مشکل دارد، لیکن بر طبق تجربه، یک محیط Clustering واقعا کارآمد تا حد زیادی به کیفیت و سازگاری سخت افزارهای بکار برده شده نیز مشروط است. این سخت افزار میبایست توسط مایکروسافت مورد تایید قرار گرفته باشند و نام آنها در Hardware Compatibility List موجود باشد.
SQL Server این امکان را دارد که به صورت Active-Active یا Active-Passive در محیط Clustering شرکت کند.
از آنجاییکه این امکان در SQL Server بر پایه یک تکنولوژی به نام MSCS یاMicrosoft Cluster Service بنا شده لذا میبایست ابتدا MSCS در شبکه، بین کامپیوترهای شرکت کننده در Clustering که Node نامیده میشوند راه اندازی گردد و سپس تنظیمات SQL Server برای بهره بردن از این قابلیت صورت بگیرد.
بعد از راه اندازی، جهت استفاده از امکانات Failover Clustering و اطمینان حاصل کردن از عملکرد آن میبایست آزمایشهایی همچون از کار انداختن Disk ها، قطع ارتباط SQL Server با شبکه و یا حتی Reset کردن ناگهانی Server به عمل آید تا از Active شدن SQL Server در Node دوم اطمینان حاصل شود...

M.GhanaatPisheh
سه شنبه 17 آذر 1383, 01:32 صبح
:thnx:

vcldeveloper
سه شنبه 17 آذر 1383, 01:45 صبح
مرسی... منظر ادامه اش هم هستیم :flower: :موفق:

M.GhanaatPisheh
سه شنبه 17 آذر 1383, 01:58 صبح
اصل مقاله رو کی میشه خوند آقای SQL Master ؟

AminSobati
سه شنبه 17 آذر 1383, 23:33 عصر
اگر عمری باقی بود، به زودی :)

vadood
چهارشنبه 18 آذر 1383, 11:06 صبح
لیکن بر طبق تجربه، یک محیط Clustering واقعا کارآمد تا حد زیادی به کیفیت و سازگاری سخت افزارهای بکار برده شده نیز مشروط است. این سخت افزار میبایست توسط مایکروسافت مورد تایید قرار گرفته باشند و نام آنها در Hardware Compatibility List موجود باشد.


اوهوم

البته اگه کسی دهنش خیلی آب افتاده عرض کنم که همچین سروری رو الان تو بازار ایران با کمتر از 7 میلیون تومان نمی شه تهیه کرد. خوب حداقل 2 تا سرور می خواین دیگه؛ پس خودتون حساب کنید به درد کجا ها می خوره

AminSobati
چهارشنبه 18 آذر 1383, 14:20 عصر
البته خود سرور میتونه معمولی باشه، تنها قسمتهای مهم، داشتن هارد دیسکهای اسکازی و یک External Storage هستش که ارزون تر هم میشه تهیه کرد. یعنی نیاز نیست حتما سرور Compaq یا Intel داشته باشین

rezarafiee
دوشنبه 11 شهریور 1387, 13:53 عصر
با سلام
در صورت امکان بحث در مورد Failover Cluster را ادامه دهید.
با تشکر

ASKaffash
دوشنبه 11 شهریور 1387, 15:01 عصر
باسلام
شاید برای سازمانهای ما که مایه دار هستند روش خیلی خوب باشد لطفا تجارب خود را به دوستان انتقال دهید . باتشکرازشما

rezarafiee
دوشنبه 11 شهریور 1387, 15:11 عصر
اگر احیانا Heartbeat بعد از طی شدن حداکثر زمان مجاز دریافت نشود، آنرا غیر فعال تلقی کرده و SQL Server دوم که از قبل به سرویس Clustering معرفی شده وارد عمل میشود.آیا محدودیتی در تعداد SQL Server هایی که باید به سرویس Cluster شناسانده شوند وجود دارد؟

AminSobati
دوشنبه 11 شهریور 1387, 17:18 عصر
فرضا Standard Edition تا 4 سرور رو پشتیبانی میکنه، Enterprise Edition بیشتر...