AminSobati
سه شنبه 17 آذر 1383, 01: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 دوم اطمینان حاصل شود...
من در حال نوشتن یک مقاله بودم که به خاطر آوردم دوستان زیادی در این بخش راجع به 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 دوم اطمینان حاصل شود...