درس یکصد و هشتاد و ششم: پیاده سازی Hyper-V Replica

پیاده سازی Hyper-V Replica

 

 

کاربرد Hyper-V Replica

Hyper-V Replica یکی از قابلیت های Hyper-V است که توسط آن میتوان Virtual Machine ها را از روی یک Host به یک Host دیگر منتقل کرد. قبل از هر چیز با چند اصطلاح که در این درس با آنها سر و کار خواهیم داشت، آشنا شویم:

Host : Hyper-V Server

Primary Server : همان Host مبدا میباشد.

Replica Server : اشاره به Host مقصد دارد.

انتقال Virtual Machine ها از یک host به host دیگر به سه صورت میسر است:

  • عملیات Hyper-V Replica : تنها زمانی مناسب است که Virtual Machine مورد نظر خاموش باشد. جهت ایجاد یک نسخه Replication از Virtual Machine موجود روی یک host به روی یک Host دیگر کاربرد دارد.
  • عملیات Live Migration : گزینه ای مناسب برای زمانی که Virtual Machine روشن است و نباید خاموش شود. خود Virtual Machine را انتقال میدهد.
  • روش Export/Import کردن ماشین: روی Host مبدا اقدام به Export کردن VM کرده، فایلهای Export شده را به Host مقصد انتقال داده و در آنجا Import می کنیم. در درسهای مربوط به سرفصل Hyper-V روش فوق را فرا گرفته اید.

جابجا کردن Virtual Machine به دلایلی مانند Load Balancing یا Fault Tolerance انجام میشود و بهرحال باعث برقراری High Availability میگردد.

 

 

مفاهیم Hyper-V Replica

Hyper-V Replica یکی از ویژگی های Hyper-V Role است که از طریق استفاده از آن مدیر شبکه میتواند از Virtual Machine موجود روی یک host اقدام به ساخت نسخه Replicate روی یک host دیگر کند. Replica Server میتواند در همان Site قرار داشته باشد که Primary Server  قرار دارد، نیز میتواند در remote Site قرار داشته باشد. عملیات Hyper-V Replica یک عملیات Asynchronous است و میتواند یکطرفه یا دوطرفه باشد و فرآیند Failover در آن بصورت خودکار فعال نمی باشد. عملیات Hyper-V Replica هیچ احتیاجی به ویژگی های پیشرفته شبکه مانند Storage های Share شده و Failover Cluster ندارد. وقتی Hyper-V Replica انجام شد از آن پس هرگاه Primary Server دچار ایراد شده و از مدار کار خارج گردید، خیلی ساده Virtual Machine روی Replica Server را روشن میکنیم. نکته مهمی که در این میان وجود دارد اینست که عملیات Hyper-V Replica وابستگی زیادی به ویژگی Checkpoint دارد. پس از اینکه عملیات پیکربندی ابتدایی Hyper-V Replica کامل شد، از آن پس فقط تغییرات Virtual Machineروی Primary Server تبدیل به checkpoint شده و به Replica Server منتقل میشود. پس Replica Server با استفاده از checkpoint های دریافتی از Primary Server اقدام به لود کردن Virtual Machine میکند.

Hyper-V Replica به دو صورت یکطرفه / دو طرفه قابل پیاده سازی است. در روش یکطرفه، یک host نقش primary و دیگری نقش Replica را بر عهده دارد. در این حالت انتقال Checkpoint ها فقط از Primary  به Replica انجام میشود. فرض کنید Primary Server دچار مشکل شود و Virtual Machine روی Replica Server روشن شود. تا اینجا مشکلی وجود ندارد. حال مشکل Primary Server را حل میکنیم. پس از مدتی Replica Server دچار مشکل میشود. اگر اکنون Virtual Machine روی Primary Server را روشن کنیم، Virtual Machine فوق نسخه بروز نیست. چون Checkpoint ها که از Replica Server به Primary Server منتقل نمیشوند.

در روش دو طرفه، هر دو Server بصورت همزمان Primary/Replica هستند. بنابراین فایلهای Checkpoint در دو جهت منتقل میشوند و Virtual Machine روی هر دو host همواره بروز است و مشکلی مانند مورد بالا رخ نمیدهد.

Hyper-V Replica نیازی به Failover Cluster ندارد ولی میتواند در داخل آن کار کند. به همین صورت احتیاجی به Certificate برای نقل و انتقالات رمزنگاری ( Encrypt ) شده ندارد ولی میتواند از Certificate ها استفاده کند.

 

 

طراحی محیط Replication

در ساده ترین شکل، یک پیاده سازی Hyper-V Replica از دو host با پیکربندی های ذیل استفاده میکند:

  • روی هر دو بایدRole Hyper-V نصب باشد.
  • فایروال هر دو باید یکسان باشد. بعنوان مثال هر دو باید از Windows Firewall استفاده کنند و یکی از آنها- بعنوان مثال- نباید از Comodo Firewall استفاده نماید.
  • Host ها نباید بخشی از یک Cluster باشند.
  • هر دو host باید در یک AD DS واحد باشند یا اینکه رابطه Trust Relationship بین دامین های آنها برقرار باشد.
  • هر دو host باید از احراز هویت مبتنی بر Kerberos استفاده کنند.
  • ارتباط دو host باید بصورت غیر Encrypt باشد.

البته قوانین بالا وحی منزل نیستند و میتوان با بکاربردن موارد ذیل، بعضی از موارد بالا را دور زد:

  • چنانچه host ها در site های فیزیکی متفاوت قرار داشته باشند باید فایروال های آنها طوری پیکربندی شوند که عبور ترافیک Replication بین آنها مجاز باشد.
  • اگر ترافیک Replication را بخواهیم رمزنگاری کنیم باید از Certificate های امنیتی صادر شده توسط یک CA ( Certificate Authority ) یا از یک Self-signed Certificate استفاده شود.
  • اگر دو host بخشی از یک Failover Cluster هستند باید Hyper-V Replica Role broker پیکربندی شود و به Client Access Point name باید دقت شود.
  • چنانچه از host سومی برای ایجاد یک Replica Server اضافی استفاده می کنید باید Hyper-V Replica را طوری پیکربندی نمایید که از Extended Replication استفاده شود.

 

 

پیکربندی Host ها

برای پیکربندی Hyper-V Replica یکطرفه باید پیکربندی های Hyper-V Replica روی Host مقصد انجام شود. در این حالت host مبدا صرفا Primary Server و host مقصد صرفا Replica Server است.

اما برای پیکربندی Hyper-V Replica دوطرفه، پس از اینکه پیکربندی Hyper-V Replica روی یک host خاتمه یافت، عین این پیکربندی ها روی host دیگر انجام میشود. در زمان پیکربندی روی هر host ، بسادگی host فوق را Replica و host دیگر را Primary در نظر میگیریم.

ما در آموزشهای خود روش یکطرفه را آموزش میدهیم اما شما میتوانید بسادگی روش دوطرفه را پیاده سازی کنید و توصیه نیز میشود که از روش دو طرفه استفاده کنید. بهرحال برای پیکربندی host بعنوان Replica Server باید روال ذیل طی شود:

1- اجرای کنسول Hyper-V Manager . سپس در پنل سمت چپ، server را انتخاب کرده و در پنل Action روی گزینه Hyper-V Settings کلیک میکنیم تا پنجره فوق ظاهر شود.

2- در پنجره Hyper-V Settings در پنل سمت چپ روی Replication Configuration کلیک میکنیم تا در سمت راست تنظیمات مربوطه ظاهر شود:

186-1 Replication Configuration window

2- ابتدا چکباکس Enable this computer as a Replica Server را تیک میزنیم. اکنون تمام گزینه های دیگر این صفحه قابل انتخاب میشوند.

3- در بخش Authentication and Ports باید یکی از چکباکس های موجود را تیک زد:

گزینه نخست Use Kerberos (HTTP) است: انتخاب این گزینه باعث میشود که ترافیک Replication فاقد رمزنگاری باشد.

گزینه دوم Use Certificate-based Authentication (http) که باعث میشود داده های Replication بصورت رمزنگاری شده نقل و انتقال یابند. اگر از این گزینه بخواهیم استفاده کنیم باید بلافاصله روی دکمه Select certificate جهت تعیین Certificate عملیات رمزنگاری کلیک نماییم.

چنانچه مایل باشیم از پورتهایی غیر از 80 و 443 استفاده شود باید شماره موردنظر را وارد کنیم.

4- در بخش Authorization and Storage نیز دو گزینه وجود دارد:

اگر دکمه رادیویی Allow replication from any authentication server را انتخاب کنیم، اجازه داده ایم که عملیات Replication از هر host احراز هویت شده استفاده کند. یعنی Primary Server میتواند هر host احراز هویت شده ای باشد. با انتخاب این گزینه باید محل ذخیره سازی فایلهای Replication را نیز تعیین کنیم.

اما اگر دکمه رادیویی Allow replication from the Specified Servers را انتخاب کنیم، میتوانیم از طریق دکمه add مشخص کنیم که دقیقا کدام host ( یا host ها) نقش Primary Server را برای این Replica Server بازی کنند. ما این گزینه را انتخاب کرده و روی دکمه add کلیک میکنیم.

5- پنجره add authorization Entry ظاهر میشود:

186-2 add authotization Entry window

در کادر Specify the Primary Server مشخص است که باید نام primary Server را وارد کنیم. سپس در کادر دوم باید مسیری برای ذخیره سازی فایلهای replica تعیین کنیم. مسیر پیشفرض را در شکل ملاحظه میکنید. میتوان گروهی از host ها را بعنوان Primary Server در نظر گرفت و در کادر سوم نام گروه فوق را وارد کرد. بهرحال روی دکمه OK کلیک میکنیم.

6- اکنون باید در کنسول Windows Firewall with Advanced Security همین کامپیوتر Replica Server تنظیمی انجام دهیم تا ترافیک ورودی از Primary Server مجاز باشد.

7- پس کنسول Windows Firewall with Advanced Security را اجرا میکنیم. در پنل سمت چپ روی Inbound Rules کلیک میکنیم. سپس در پنل میانی باید یکی از rule ها را enable کنیم.. اینکه کدام rule باید فعال شود بستگی به این دارد که در قسمت Authentication and Ports پنجره Replication Configurations کدام گزینه را انتخاب کرده باشیم:

اگر HTTP را انتخاب کرده باشیم: باید Hyper-V Replica HTTP Listener(TCP-in) را فعال کنیم.

اگر http را انتخاب کرده باشیم: باید Hyper-V Replica http Listener(TCP-in) را فعال کنیم.

اکنون کار پیکربندی Replica Server خاتمه یافت. توجه کنید که چنانچه بخواهید Hyper-V Replica دوطرفه داشته باشید باید این تنظیمات را روی Primary Server نیز انجام دهید منتهی این بار جای Primary Server و Replica Server عوض میشود.

 

 

پیکربندی Virtual Machine ها

حال باید آن Virtual Machine روی Primary Server که باید Replicate شود را نیز پیکربندی کنیم:

1- در Primary Server کنسول Hyper-V Manager را اجرا کرده، روی Virtual Machine موردنظر راست کلیک کرده و گزینه Enable Replication را انتخاب میکنیم.

2- ویزارد Enable Replication شروع بکار میکند. در صفحه before you begin روی دکمه next کلیک میکنیم.

3- در صفحه Specify Replica Server توسط دکمه browse اقدام به معرفی Replica Server میکنیم.

4- در صفحه Specify Connection Parameters باید در کادر Authentication Type مشخص کنیم که قصد استفاده از Kerberos را داریم یا Certificate-based Authentication . باید همان گزینه ای را انتخاب کنیم که در پیکربندی Replica Server تعیین کردیم. نیز میتوان تایید کرد که داده های Replication فشرده سازی شوند.

5- در صفحه Choose Replication VHDs باید تیک چکباکس های هر کدام از VHD های این Virtual Machine که نمی خواهیم Replicate شوند را برداریم. هر VHD که تیک داشته باشد Replicate خواهد شد.

6- در صفحه Configure Replication frequency نیز باید تعیین کنیم که Primary Server در چه فواصل زمانی تغییرات را به Replica Server ارسال کند.

7- در صفحه Configure Additional Recovery Points دو انتخاب وجود دارد:

گزینه Maintain Only The Latest Recovery Point یک Replica Containing ایجاد میکند که فقط شامل وضعیت لحظه ای Primary Virtual Machine است.

گزینه Create Additional hourly Recovery Points شما را قادر میسازد هر 24 ساعت یک Recovery Point و هر 12 ساعت یک Volume Shadow Copy ( از طریق Checkpoint ) داشته باشید.

8- در صفحه Choose Initial Replication Method باید چند مورد مشخص شوند:

نخست باید مشخص کنید که Replication اولیه ( که حجم سنگینی دارد) را چگونه میخواهید انجام دهید؟

گزینه send Initial Copy over the network این کار را از طریق ارسال replication روی شبکه انجام میدهد.

گزینه Send Initial copy using external Media این کار را از طریق یک external media  مانند هارد اکسترنال انجام میدهد.

گزینه  use an existing Virtual machine on the replica server as the initial copy نیز این کار را از طریق Restore کردن یک کپی از این Virtual Machineروی Replica Server انجام میدهد. مناسب زمانی است که از قبل ( مشخصا در زمانی مانند نیمه های شب که قاعدتا ترافیک کمی در شبکه وجود دارد و پهنای باند بیشتری در دسترس است) چنین کپی ای را به روی Replica Server انتقال داده باشیم.

سپس در قسمت Schedule Initial Replication باید مشخص کرد که Replication اولیه چه زمانی آغاز شود. بصورت فورا ( Immediately ) یا در ساعت فلان از روز فلان؟

9- روی دکمه finish کلیک میکنیم.

وقتی عملیات Replication آغاز شود، هر گاه روی Virtual Machine فوق راست کلیک کنید یک Replication Context menu ظاهر میشود که شما را قادر به آغاز طرح ریزی یک failover ، متوقف کردن یا حذف فرآیند Replication و نمایش وضعیتHealth  Replication میکند.  

حال عملیات Hyper-V Replica بصورت یکطرفه انجام شده است. تا زمانی که دو طرفه نشود فایده ای ندارد و خبری از Replication نخواهد بود. برای دو طرفه کردن Hyper-V Replica :

1- در آن Host که در مرحله پیش نقش Primary Server را داشت وارد کنسول Hyper-V Manager شده و اینبار نقش Hyper-V Replica را روی آن فعال می کنیم. دقیقا طبق تنظیماتی که در مرحله قبل مشاهده کردید. پس جای Primary Server و Replica Server در این مرحله عوض میشود.

2- در آن host که در مرحله قبل نقش Replica را داشته است وارد کنسول Hyper-V Manager می شویم.

3- روی آن VM که منتقل شده است راست کلیک کرده و به ترتیب گزینه های Replication و Extend Replication را انتخاب می کنیم.

186-3 two Hyper-v Replication

4- پنجره پیکربندی Replication برای این VM ظاهر میشود که مانند دفعه قبل تنظیمات را انجام می دهیم.

5- اکنون Hyper-V Replica دو طرفه انجام شده است و Replication این VM بین دو Hyper-V Host بخوبی برقرار خواهد بود.

مشاهده همه افزودن یک یادداشت
شما
دیدگاه خود را وارد کنید
رفتن به نوار ابزار