איך להגדיר העתקה של Hyper-V [שלב אחר שלב]

אתה ניהול Hyper-V מכונות ורוצה להקנות תוכנית לשחזור אסונות? תוכל להתחיל עם השקת שירות של Hyper-V. דברים יכולים להשתבש, וזה יקרה כנראה. ואם יש לך רק עותק אחד של מכונות הווירטואליות שלך, אז אתה מכין את עצמך לעולם של כאב.

לכל הפחות עם עותק אחד או יותר של מכונות הווירטואליות שלך, במיוחד אלה החיוניות, אין צורך להיות מורכב ויקר. מיקרוסופט השקיעה תכונת שינוי מובנית ב- Hyper-V, שבאפשרותך להגדיר ללא הקשר לכניסת תוכנה או מכשיר של צד שלישי לתשתיות שלך.

אם אתה מוכן ללמוד איך להפעיל שירות של Hyper-V ולהיות מוכן למניעת אובדן נתונים אפשרי, אז בואו נתחיל!

תנאים מקדימים

המדר הזה יהיה הדגמה מעשית. אם ברצונך להתקדם, הקפד לוודא שיש לך את הדברים הבאים:

שני שרתי Hyper-V. שני השרתים הללו יכולים להיות בדומיין של Active Directory (AD) או בקבוצת עבודה. המדר הזה ישתמש בשני שרתים עם הפרטים הבאים.

Hostname IP Address Designation Location Operating System
hyperv-ny 10.1.0.4 Primary Server Primary Site Windows Server 2019 Datacenter (version 1809)
hyperv-wa 10.0.0.4 Replica Server Secondary Site Windows Server 2019 Datacenter (version 1809)

שרת ה- Hyper-V הראשי חייב לכלול לפחות מכונה וירטואלית יחידה לשקיפה. במדר הזה, לשרת הראשי יהיה מכונה וירטואלית אחת עם השם webserver.

לקבלת פרטים נוספים על דרישות המערכת של Hyper-V, הפנה אל דרישות המערכת ל-Hyper-V על שרת Windows.

הכנת המארחים לשיבוץ של Hyper-V

בהנחה שכבר יש לך את הדרישות המקדימות במקום, אל תחשב על התחלת שיבוץ ה-Hyper-V עדיין. לפני שיבוץ מכונות וירטואליות, עדיין ישנם מספר הכנות לבצע. להלן הפריטים הכלליים שעליך לוודא שבוצעו לפני שהכל מוכן.

אפשור תנועת שיבוץ של Hyper-V

מדובר רק במקרה בו אתה משתמש בגירסת חומת אש של Windows על המארחים שלך ב-Hyper-V. אם לא, תוכל לדלג לחלק הבא.

או, אם אתה משתמש כרגע בחומת אש של Windows ורוצה להשבית אותה לחלוטין, עיין ב- איך להשבית או לכבות את חומת האש של Windows (כל הדרכים).

כאשר אתה מתקין את תפקיד ה-Hyper-V על השרת, Windows יוצרת שני כללי נכנס נוספים בחומת האש של Windows. שני כללים אלו שולטים באם לאפשר תנועת שיבוץ של Hyper-V, והם:

  • הקשב Hyper-V Replica HTTP (TCP-In) – כלל נכנס להקשבת Hyper-V Replica לקבלת חיבור HTTP לשיבוץ (דרך יצירת פתח 80, לא מוצפן).
  • מאזין Hyper-V Replica HTTPS (TCP-In) – כלל נכנס למאזין Hyper-V Replica כדי לקבל חיבורי HTTPS לצורך שיבוץ (דרך פתח 443, מוצפן באמצעות תעודת אבטחה).

באופן ברירת מחדל, חוסמים כללי האש של Windows אלה מושבתים, ולכן חוסמים ביצוע של תעבורת השיבוץ של Hyper-V לשרת. אך המטרה של המדריך הזה היא להגדיר את שיבוץ Hyper-V דרך HTTPS בלבד ולא דרך HTTP.

כדי לאפשר את חוק האש של שיבוץ Hyper-V, עקוב אחרי השלבים האלה.

1. התחבר לשרת המיצג ופתח את PowerShell כמנהל.

2. הפעל את הפקודה Enable-Netfirewallrule למטה ב-PowerShell כדי לאפשר את החוק.

# הפעלת חוק אש תעבורת Hyper-V דרך HTTPS.
Enable-Netfirewallrule -DisplayName 'Hyper-V Replica HTTPS Listener (TCP-In)'

3. לבסוף, כדי לוודא שאתה מפעיל בהצלחה את חוקי האש, הפעל את הפקודה למטה.

Get-Netfirewallrule -DisplayName 'Hyper-V Replica HTTPS Listener (TCP-In)'

אם הכל הלך כמו שצריך, אתה אמור לראות תוצאה דומה לצילום המסך למטה.

Enabling Hyper-V replication firewall rules

הגדרת רשומות מאזין שרת ה-Hyper-V

אם שרתי Hyper-V שלך יכולים לפתור את שמות השרתים השניים דרך חיפוש DNS, תוכל לדלג על סעיף זה.

כשהגיע הזמן להפעיל את השיבוץ של Hyper-V, תציין את שם השרת הרפליקה במהלך ההגדרה. האם Hyper-V יכול למצוא את השרת המשני לפי השם תלוי בפער המתאים של שמות.

שאלחולולות יקרות ובורכות, הנה התרגום של הטקסט שלך:

כדי להבטיח שהצמתים של Hyper-V יכולים למצוא אחד את שמות השרתים האחרים ברשת, עליך לערוך את קובץ hosts בשני השרתים ולהוסיף את השמות וכתובות ה-IP המתאימים שלהם. כדי לעשות זאת, עקוב אחרי הוראות אלו.

  1. על השרת הראשי, פתח את PowerShell כמנהל.

2. הרץ את הפקודה למטה כדי לפתוח את קובץ hosts ב-notepad.exe לעריכה.

notepad.exe "$env:windir\system32\drivers\etc\hosts"

3. כשקובץ hosts פתוח, גלול לתחתית של עורך הטקסט והוסף את כתובת ה-IP והשם של שרת ה-רפליקה כך:

ודא שאתה משתמש בכתובת ה-IP ובשם השרת שלך במקום.

10.1.0.4	hyperv-wa

4. לאחר עריכת הקובץ, לחץ על CTRL+S או לחץ קובץ —> שמור כדי לשמור את השינויים.

5. חזור על אותם שלבים בשרת רפליקה והוסף את שם השרת וכתובת ה-IP של השרת ראשי לקובץ hosts של השרת רפליקה. בתמונה למטה מוצג המצב הסופי צד לצד של קבצי ה-hosts של שני השרתים.

Updating the hosts file

יצירת תעודות אישיות עם חתימה דיגיטלית

הקטע הזה תקף רק אם השקפת Hyper-V שלך תשתמש באימות מבוסס תעודה (HTTPS). אם הצמתים של Hyper-V מצוטטים בדומיין וישמשו באימות של Kerberos (HTTP), תוכל לדלג על קטע זה.

הצמתים של Hyper-V דורשים שגם השרת הראשי והשרת הרפליקה ישתמשו בתעודה שינתקלו ממנה. Hyper-V משתמש בתעודות אלו לאימות של השרת הראשי לשרת הרפליקה.

במקום לרכוש תעודות מספק תעודות חיצוני, כמו DigiCert או NameCheap, תוכל ליצור תעודות בעצמך לשימוש עם שימור Hyper-V בחינם.

עבור אימות התעודות בין שני מארחי Hyper-V, תצטרך לקבל שלוש תעודות. תעודת שורש ותעודת שרת עבור כל מארח. עקוב אחרי השלבים הבאים ליצירת התעודות האלו.

1. על מחשב השרת הראשי, פתח את PowerShell כמנהל.

2. לאחר מכן, הגדר את המשתנים הבאים על ידי הרצת הפקודות הבאות ב-PowerShell. הפנה להערות הטקסט המצורפות להבנת כל משתנה והחלף את הערכים שלהם לפי הצורך.

# הגדרת משתני התעודות

## ציין את שם תעודת ה-CA החדשה.
$rootCA_Name = 'Hyper-V Root CA'

## ציין את שמות שרתי ה-Hyper-V.
$hostnames = @('hyperv-ny','hyperv-wa')

## מהו הסיסמה לתעודות ה-PFX שיוצאות.
$CertPassword = 'this is a strong password' | ConvertTo-SecureString -Force -AsPlainText

## להגדיר את מיקום ייצוא תעודת ה-PFX לאחר יצירתה. ודא שתיקייה זו קיימת.
$CertFolder = 'C:\HPVCerts'

3. לאחר שהוגדרו משתני התעודות, הרץ את הפקודה הבאה כדי ליצור את תעודת ה-Root. פקודה זו יוצרת תעודת שורש אשר נכתבת עצמאית באמצעות פקודת New-SelfSignedCertificate בחניית תעודות האישיות של השרת.

## יצירת ושמירת תעודת ה-Root CA בחניית התעודות 'אישיות'.
## בתוקף למשך 10 שנים.
$rootCA = New-SelfSignedCertificate `
-Subject $rootCA_Name  `
-FriendlyName $rootCA_Name `
-KeyExportPolicy Exportable  `
-KeyUsage CertSign  `
-KeyLength 2048  `
-KeyUsageProperty All  `
-KeyAlgorithm 'RSA'  `
-HashAlgorithm 'SHA256'  `
-Provider "Microsoft Enhanced RSA and AES Cryptographic Provider"  `
-NotAfter (Get-Date).AddYears(10)

4. כדי שהשרת יאמין בתעודת השורש בעצמו, העתק את תעודת השורש אל חניית התעודות האמות של ה-Root Certification Authorities על ידי ביצוע הפקודה הבאה.

## העתק את ראש ה-CA מאחסן 'אישי' לאחסן 'רשותי עקבות מהמקור'
$rootStore = [System.Security.Cryptography.X509Certificates.X509Store]::new("Root","LocalMachine")
$rootStore.Open("ReadWrite")
$rootStore.Add($rootCA)
$rootStore.Close()

5. לאחר מכן, הפעל את הפקודה למטה כדי לייצא את אישור השורש לקובץ באמצעות פקודת Export-PfxCertificate. עליך לייצא את אישור השורש כך שתוכל להעתיק אותו לשרת ה-רפליקה מאוחר יותר.

## ייצא את אישור השורש
$rootCA | Export-PfxCertificate -FilePath "$CertFolder\$($rootCA_Name).pfx" -Password $CertPassword -Force
Exporting the Root Certificate

6. כעת, צור את תעודות השרת שחתומות על ידי אישור השורש שיצרת. הפעל את הפקודה למטה כדי ליצור את תעודות השרת עבור כל מארח Hyper-V וייצא כל תעודה לקובץ.

$hostnames | ForEach-Object {
	$name = $_
	## צור את התעודה
	New-SelfSignedCertificate `
	-FriendlyName $name `
	-Subject $name `
	-KeyExportPolicy Exportable `
	-CertStoreLocation "Cert:\LocalMachine\My" `
	-Signer $rootCA `
	-KeyLength 2048  `
	-KeyAlgorithm 'RSA'  `
	-HashAlgorithm 'SHA256'  `
	-Provider "Microsoft Enhanced RSA and AES Cryptographic Provider"  `
	-NotAfter (Get-Date).AddYears(10) |
	## ייצא את התעודה
	Export-PfxCertificate -FilePath "$CertFolder\$($name).pfx" -Password $CertPassword -Force
}
Generating and exporting the server certificates

7. לבסוף, העתק את קובץ אישור השורש (Hyper-V Root CA.pfx) ואת קובץ תעודת השרת של השרת שולף (hyperv-wa.pfx) לשרת הרפליקה.

Copying the certificate files to the replica host

התקנת התעודות במארח הרפליקה

כדי שאימות מבוסס על תעודות יעבוד בין שני מארחי Hyper-V, יש לוודא שתעודת השורש ותעודת השרת זהות גם בשרת הרפליקה. עקוב אחרי השלבים למטה כדי להתקין את תעודות השורש והשרת.

1. במארח הרפליקה, פתח PowerShell כמנהל.

כדי להתקין את אישור השורש באחסון הרשיונות המוכר, הפעל את הפקודה הבאה: Import-PfxCertificate. ודא שאתה משנה את ערכי המשתנים כפי שנדרש.

## ציין את שם אישור ה-Root CA.
$rootCA_Name = 'Hyper-V Root CA'

## איפה למצוא את קבצי אישור ה-PFX.
$CertFolder = 'C:\HPVCerts'

## מהו הסיסמה לקבצי PFX שיוצאים.
$CertPassword = 'this is a strong password' | ConvertTo-SecureString -Force -AsPlainText

## הבאת אישור ה-Root CA
Import-PfxCertificate  "$CertFolder\$($rootCA_Name).pfx" -CertStoreLocation Cert:\LocalMachine\Root -Password $CertPassword
Importing the root certificate

3. כדי להתקין את אישור השרת באחסון האישי של אישורים, הפעל את הפקודה הבאה.

## הבאת אישור השרת
Import-PfxCertificate  "$CertFolder\$($env:COMPUTERNAME).pfx" -CertStoreLocation Cert:\LocalMachine\My -Password $CertPassword
Importing the server certificate

4. לבסוף, הגדר את הרישום של Hyper-V כך שישבית את הבדיקה של אישור התביעה. בעזרת כך, Hyper-V לא ינסה לבדוק את פרטי הבדיקה להטרדת אישור – שאין לו בתעוזת האישור המוחתם עצמו. הפעל את הפקודה הבאה של PowerShell באמצעות New-ItemProperty.

## ביטול בדיקת אישור התביעה של Hyper-V.
New-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Virtualization\Replication" -Name "DisableCertRevocationCheck" -Value 1 -PropertyType DWORD -Force

הגדרת שיבוץ של Hyper-V

סיימת להכין את המארחים שלך ב-Hyper-V. עכשיו תוכל להתחיל להפעיל שיבוץ של Hyper-V ולהתחיל לשכפל מכונות וירטואליות.

הפעלת המארח כשרת של שיבוץ

לפני שמארח Hyper-V יכול לארח שיכפולי VM, עליו להיות מופעל כשרת שיבוץ תחילה. כדי לעשות זאת, עקוב אחר השלבים הבאים.

  1. על המארח השכפל, פתח את מנהל ה-Hyper-V. כדי לעשות זאת, הפעל את הפקודה virtmgmt.msc ב-PowerShell.
  2. בעת פתיחת חלון מנהל ה-Hyper-V, לחץ על שם השרת לשכפול ולחץ על הגדרות Hyper-V.
Open the Hyper-V settings

3. לאחר מכן, בחלון הגדרות ה-Hyper-V, לחץ על הגדרות שיבוץ בלוח השמאלי.

בלוח הימני, סמן את התיבה שאומרת הפעל את המחשב הזה כשרת שיבוץ. על ידי כך יופעלו כל אפשרויות ההגדרה האחרות למטה.

בקטע אימות ופורטים, סמן את תיבת אימות על בסיס תעודת משתמש (HTTPS). השאר את ערך מספר הפורט כ-443.

Enabling the server as a replica

4. בקטע אימות ופורטים, לחץ על בחר תעודה. בחלון ה-Pop-up של אבטחת Windows, אשר את התעודה הנכונה ולחץ על אישור.

Selecting the server certificate

לאחר בחירת התעודה, תראה כי תיבת ציין את התעודה מציגה כעת את פרטי התעודה.

Certificate details

הערה: אם אין תעודה תקפה או שלא התקנת את התעודה בצורה נכונה, תראה שגיאה דומה לתמונה למטה. במקרה כזה, יהיה עליך לחזור ולהתקין את התעודה.

The error shows no valid certificate

5. לאחר מכן, מתחת ל-אישור ואחסון, בחר אפשר העתקה משרת מאומת כלשהו. בכך מאפשרים לכל שרת Hyper-V לשכפל מכונות וירטואליות לשרת זה כל עוד אימות באמצעות תעודה הוא מוצלח.

כדי לאפשר רק שרתים ספציפיים לשכפול, בחר באפשרות אפשר שיכפול מהשרתים המסוימים והוסף את פרטי כל שרת בנפרד.

הקלד או גלה את המיקום שבו ישמרו קבצי השכפול. בדוגמה זו, המיקום הוא C:\Hyper-V\Virtual Hard Disks. ודא שבחרת מיקום עם מקום אחסון מספיק לקבצי השכפול של המכונה הווירטואלית.

לבסוף, לחץ על אישור כדי לשמור את השינויים.

Choosing the authorization and storage

הפעלת שיכפול מכונות וירטואליות

עד כה, הפעלת את מארח השיכפול לקבל שיכפול נכנס של מכונות וירטואליות מ-Hyper-V. בנקודה זו, אתה מוכן להפעיל שיכפול של מכונה וירטואלית. עקוב אחרי השלבים הבאים כדי להמשיך.

1. במארח הראשי, פתח את חלון מנהל Hyper-V.

2. לאחר מכן, לחץ על שרת Hyper-V בחלון השמאלי. מתחת לרשימת המכונות הווירטואליות, לחץ על המכונה הווירטואלית שתרצה לשכפל ולחץ על הפעל שיכפול מתחת לחלון ה-פעולות.

Selecting the VM for Hyper-V replication

3. בחלון הפעל העתקה עבור <שם ה-VM> שצצה, לחץ על הבא בדף לפני שתתחיל.

4. בדף ציין שרת השכפול, הקלד את שם המארח שרת השכפול בתיבת שרת השכפול ולחץ על הבא.

Specifying the target replica server

5. כעת, בדף ציין פרמטרי חיבור, שנה את מספר הפורט של שרת השכפול ל-443.

בתוך אפשרויות סוג האימות, לחץ כדי לבחור אימות על פי תעודת משתמש (HTTPS).

תשים לב שבנקודה זו המידע של התעודה ריק. כדי לבחור תעודה, לחץ על בחר תעודה.

Specifying the port and authentication type

6. לאחר מכן, בדיאלוג בחר תעודה, לחץ כדי לבחור את התעודה שיצרת לפני כן שכוללת את שם השרת הראשי של המארח. לאחר בחירת התעודה, לחץ על אישור.

Selecting the server certificate

7. לאחר בחירת התעודה, עכשיו אתה צופה לראות את מידע התעודה, כפי שניתן לראות למטה. לחץ על הבא כדי להמשיך.

Confirming the certificate details

8. לאחר מכן, בחר אילו דיסקים קשיחים וירטואליים (VHD) לכלול בשכפול. אם יש יותר מדיסק קשיח וירטואלי אחד, וודא שבורר את ה-VHD המכיל את מערכת ההפעלה של ה-VM. הדוגמה למטה יש לה רק VHD אחד. לאחר בחירתך, לחץ על הבא.

Selecting VHDs to replicate

שלב 9. בעמוד הבא, בחר במרווח השכפול מתוך רשימת הנפילה. הערך הזה יקבע כמה פעמים Hyper-V שולח שינויים לשרת השכפול. המרווח המוגדר כברירת מחדל הוא 5 דקות. אפשרויות אחרות זמינות הן 30 שניות ו-15 דקות. לחץ על הבא.

Choosing the Hyper-V replication interval

10. בעמוד הגדר נקודות שחזור נוספות, לחץ על האפשרות ל שמור רק על נקודת השחזור האחרונה.

בבחירה זו, Hyper-V ישמור רק על נקודת השחזור או המצב האחרון של המכונה הווירטואלית על השרת השכפול. אפשרות זו משתמשת בפחות מקום אחסון אך מאפשרת רק שחזור נקודה יחידה בזמן. לחץ על הבא להמשך.

Selecting the recovery points to maintain

11. ב בחר את שיטת השכפול הראשונית, יש שלוש אפשרויות על איך תרצה לשלוח את העותק הראשוני של ה-VHD לשרת השכפול:

  • שלח את העותק הראשוני דרך הרשת. אפשרות זו מעתיקה את ה-VHD דרך הרשת.
  • שלח את העותק הראשוני באמצעות אמצעי תקשורת חיצוניים. בבחירה זו, תוכל לשמור עותק של ה-VHD באחסון חיצוני, כמו דיסק קשיח חיצוני. תוכל להעביר פיזית את האחסון ולחבר אותו לשרת השכפול למעשה.
  • השתמש במכונה וירטואלית קיימת על השרת השכפול כהעתק הראשוני. אפשרות זו חלה רק אם כבר שחזרת עותק של ה-VM לשרת השכפול.

כל אפשרות שתבחר בחיים אמיתים תלויה בהערכתך. אך לצורך המדריך הזה, בחר שלח את העותק הראשוני דרך הרשת.

אם סיימת להגדיר, בחר את התחל העתקה מיידית כדי להתחיל את תהליך השכפול מיד לאחר הגדרת ההגדרות.

Choosing the initial replication method

12. בדף הסיכום, בדוק את ההגדרות של השכפול, ולחץ על סיום כדי לסיים.

Finalizing the replication configuration

13. המתן להודעת אישור שאומרת שה שכפול הופעל בהצלחה. לחץ על סגור כדי לחזור לחלון מנהל Hyper-V.

השכפול של Hyper-V משכפל את המכונה הווירטואלית, את ההגדרות שלה ואת ה- VHDs שלה. אך הרפליקה התוצאה על השרת הרפליקה אינה מחוברת. כפי שניתן לראות למטה, עליך עדיין ל להגדיר את חיבור הרשת של מכונת הרפליקה.

Confirming the replication is now enabled

בדיקת בריאות הרפליקציה

אז תכנת את הרפליקציה של Hyper-V עבור מכונה הווירטואלית שנבחרה. איך תדע האם הרפליקציה של Hyper-V עדיין בתהליך, הושלמה או שנכשלה? למרבה המזל, Hyper-V נותן לך את הנוחות לבדוק את בריאות הרפליקציה ישירות בתוך חלון מנהל Hyper-V.

כדי לבדוק את בריאות הרפליקציה של ה-VM, עקוב אחר השלבים הבאים.

לחץ ימיני על שם ה-VM בחלון מנהל המארח הראשי של Hyper-V —> רפליקציה —> הצג בריאות הרפליקציה.

Opening the VM replication health

בהתחלה, תראה הודעת מצב רפליקציה כמו שהצילום מסך מטה מראה, שמציינת כי הרפליקציה עדיין בתהליך.

Initial replication in progress

וכאשר ריפליקציה של Hyper-V מסתיימת, אתה אמור לראות הודעה דומה לזו שלמטה.

And that’s it! You’ve successfully set up Hyper-V replication for your VM.

וזהו! הצלחת להגדיר ריפליקציה של Hyper-V עבור ה-VM שלך.

מסקנה

בסופו של דבר, הגדרת ריפליקציה של Hyper-V היא משהו שמנהלי מערכות צריכים לשקול כאשר הם מתכננים ומיישמים שחזור אסון. עשייה כזו יכולה להיות פחות יקרה מאבדן נתונים או זמני השבתה מוארכים. תאר לעצמך אם השרת של המשכורות שלך יוצא מקו?

האם השתמשת בריפליקציה של Hyper-V? מה דעתך? היית ממליץ על זה לאחרים, או שיש סיבה שאתה חושב שארגונים צריכים להימנע מזה?

Source:
https://adamtheautomator.com/hyper-v-replication/