HA مخفف High Availability است و همانطور که از نامش پیداست به معنی دسترسی بالا است که در شبکه و زیر ساخت اهمیت بالایی دارد برای مثال خدمات یک بانک را در نظر بگیرید که همیشه باید در دسترس باشد درواقع زیرساخت و تجهیزات بانک باید HA باشد تا قطعی یا اختلالی در ارائه خدمات رخ ندهد. در واقع HA به پیاده سازی یک زیرساخت با قابلیت دسترسی بالا گفته میشود که در ان نقاط حساس شناسایی و با کمک روش هایی از Down شدن آن جلوگیری میکنند.
مولفه ها و روش های HA چیست؟
همانطور که در بالا گفتیم High Availability با کمک چندین روش اجرا میشود که باعث پایداری آن میشود. در ادامه انواع روش هایی که به HA کردن یک زیرساخت کمک میکند را برایتان آورده ایم.
- Redundancy: یکی از روش های HA است، اگر به زبان ساده بخواهیم بگوییم در آن یک افزونه از یک قطعه یا برنامه به عنوان یدک در نظر گرفته میشود. برای HA سخت افزارها، نرم افزارها و برنامه ها به صورت Redundant طراحی میشوند.
- Replication: مفهومی مشابه Redundancy دارد اما بیشتر در داده ها و سرورها مورد استفاده قرار میگیرد و به این صورت است که هنگام از دست رفتن یک نود میتوان از نود Replicate استفاده کرد.
- Failover: این روش زمانی اتفاق میافتد که یک پردازش در حال اجرا روی یک نود دچار اشکال میشود و عملیات پردازش به روی نود دیگر منتقل میشود.
- Load Balancing: یکی از نکات مهم در HA Load Balancing است. این قابلیت به این شکل است که بار کاری روی چندین نود پخش میشود و هر سرور قسمتی از پردازش را انجام میدهد که منجر به افزایش سرعت و دسترسی بالا داده ها میشود.
Disaster Recovery و تفاوت آن با HA
Disaster Recovery یا بازیابی بحرانی در شبکه، مجموعهای از رویکردها و راهکارهایی است که برای مواجهه با حوادث و بحرانهای ناگهانی در شبکههای کامپیوتری و سیستمهای IT طراحی و پیاده سازی میشود. این رویکردها و راهکارها به منظور حفظ و بازیابی سرویسها و برنامه ها در صورت بروز حوادث بحرانی مانند نوسانات برق، آتشسوزی، سرقت، حملات سایبری و… طراحی شدهاند. اهدداف این رویکرد حفظ داده ها و پایداری عملکرد شبکه است، اگرچه HA و Disaster Recovery مربوط به هم هستند اما اهداف متفاوتی دارند HA رویکردی است که همیشه در شبکه قابل استفاده است و برای بهبود عملکرد نیز مفید است اما Disaster Recovery یک راهکار جامع برای مواقع فاجعه است.
اجرای High Availability (HA) در زیرساخت
اجرای High Availability (HA) به دو روش اصلی انجام میشود: فیزیکی و مجازی. در هر دو روش، ابتدا باید نیازهای سرویسها و برنامههای مورد نظر تعیین شود و سپس راهکارهای HA مناسب برای تامین این نیازها پیادهسازی شود. اما در هر روش، چندین مرحله عملیاتی برای اجرای HA وجود دارد که در زیر توضیح داده شدهاند:
-
تحلیل نیازمندیها
در این مرحله، باید نیازمندیهای سرویسها و برنامههای مورد نظر بررسی شود. این نیازمندیها شامل توانایی در دسترس بودن بالا، پایداری، امنیت و… میشوند.
-
طراحی معماری
پس از تحلیل نیازمندیها، معماری مناسب برای سرویسها و برنامهها طراحی میشود. در این مرحله، باید تعیین کرد که چندین سرور به کار برده شوند و یا از تکنولوژیهای مجازیسازی مانند ماشینهای مجازی استفاده شود.
-
پیادهسازی
در این مرحله، راهکارهای HA در زیرساخت پیادهسازی میشوند. برای این منظور، از روشهای مختلفی مانند Load Balancing، Clustering و Replication استفاده میشود.
-
تست
و ارزیابی
بعد از پیاده سازی، باید راهکارهای اجرایی HA تست و ارزیابی شوند تا اطمینان حاصل شود که این راهکارها به طور صحیح عمل میکنند و نیازمندیهای سرویسها و برنامهها را برآورده میکنند.
-
مانیتورینگ و نگهداری
پس از اجرای HA در زیرساخت، باید سرویسها و برنامهها بهصورت مداوم مانیتورینگ شوند تا در صورت بروز هرگونه اختلال، به سرعت بتوان به آنها واکنش نشان داد و مشکل را برطرف کرد.
در کل، پیاده سازی High Availability در زیرساخت، به یک روند پیچیده و چالش برانگیز تبدیل میشود که نیاز به تخصص و تجربه بالا در زمینه شبکه و IT دارد.