בסביבת VMware vSphere, המשאבים שהוצבו עשויים לא להיות מספיקים לרמת הביצועים הנדרשת כאשר יש יישום חזק פועל על מכונת וירטואל. במקרה זה, הפתרון האופטימלי הוא להוסיף עוד משאבי מעבד וזיכרון למכונה הוירטואלית.
כאשר יישומים חיוניים פועלים על המכונה הוירטואלית, אי אפשר להרשות לעצור את המכונה הוירטואלית ולהתמודד עם זמן עצירה. למקרה זה, מאפשרת תכונת ה-Hot Add מתוך VMware vSphere יכולת נוחה. בזכות הגמישות שמספקת הווירטואליזציה מאת VMware, אפשר להוסיף חומרה וירטואלית של מעבד CPU וזיכרון RAM למכונה וירטואלית שפועלת. כאן נסביר איך להפעיל את VMware Hot Add, בתים שימוש, הגדרה ומגבלות של תכונה זו.
מהו VMware Hot Add?
VMware Hot Add הוא תכונה שמאפשרת לך להוסיף מכשירים וירטואליים למכונה וירטואלית תוך שהמכונה הוירטואלית פועלת. כברירת מחדל, אפשר להוסיף מכשירים וירטואליים כמו דיסק קשיח וירטואלי (לא IDE), מתאם רשת ומכשירי USB בעת פעולת המכונה הוירטואלית. VMware Hot Add מאפשר להוסיף מעבד מרכזי (CPU) וזיכרון זמין (RAM) במהלך הפעולה. עם הפעלת VMware Hot Add, אין צורך לכבות את המכונה הוירטואלית על מנת להוסיף מכשירים וירטואליים.
VMware Hot Add vs Hot Plug
ניתן להבחין שתכונת Hot Add של המעבד בפעמים נקראת גם Hot Plug של המעבד. אותה הלוגיקה חלה גם על ההוספה החמה של הזיכרון והזיכרון החם. שני המונחים הללו מתייחסים לאותו דבר והם הפיך בהם.
הערה: אל תבלבל בין זיכרון דינמי של VMware ובין הוספת זיכרון חמה של VMware מאחר ותכונות אלו שונות. זיכרון דינמי של VMware הוא טכניקה לניהול זיכרון יעיל עבור מכונות וירטואליות. שם זה אינו רשמי עבור התכונה זו, אך משתמשים מתייחסים אליה כלקסן המתקדם של זיכרון דינמי של Hyper-V. טכניקות ניהול הזיכרון של VMware כוללות שיתוף דפים שקופים, פניה בזיכרון, דחיסת זיכרון והחלפת זיכרון.
דרישות ומגבלות
ישנן דרישות ומגבלות להוספת vCPUs של VMware (מעבדים וירטואליים) וזיכרון למכונות וירטואליות פועלות:
- מערכת ההפעלה האורחת (OS) חייבת לתמוך בהוספת מכשירים חמים.
- תאימות חומרתית של מכונה וירטואלית (גרסת חומרה וירטואלית) היא 7 או גבוהה יותר.
- כלי VMware צריך להיות מותקן במערכת ההפעלה האורחת.
- צריך שהתקשורת פולטה לא תהיה מופעלת עבור המכונה הוירטואלית.
- על המכונה הוירטואלית להיות כבויה על מנת לאפשר את תכונת ההוספה החמה.
- A VMware vSphere Advanced, Enterprise, or Enterprise Plus license must be used. VMware vSphere Enterprise Plus supports both CPU hot add and memory hot add. Refer to the VMware licensing guide to check available functionality for other editions and guest OSs.
יש לקחת בחשבון את המגבלות ברישיון של מערכת ההפעלה האורחת והיישומים שמותקנים במכונה הוירטואלית לפני הוספת vCPUs. יתכן ותצטרך לרכוש רישיונות נוספים כדי להפעיל את התוכנה על מספר גבוה יותר של מעבדים.
מערכות הפעלה של אורחים התומכות ב-Hot Add הן Windows Server 2003 וחדשות יותר, ו-Linux באמצעות גרעין 3.8 ומעלה. המדדים העליונים של Windows Server תומכים בשני Hot Add של CPU וזיכרון. חלק מהמדדים הנמוכים יותר של Windows Server תומכים רק ב-Hot Add של זיכרון.
מערכת אורח | רישיון/גרסה | הוספת זיכרון חמה | הוספת מעבד חם |
שרת Windows 2003 32-ביט/64-ביט | סטנדרטי, אנטרפרייז | כן | לא |
שרת Windows 2008 32-ביט | סטנדרטי, אנטרפרייז, מרכז נתונים | כן | לא |
שרת Windows 2008 64-ביט | סטנדרטי, אנטרפרייז | כן | לא |
שרת Windows 2008 64-ביט | מרכז נתונים | כן | כן |
שרת Windows 2008 R2 | סטנדרטי, אנטרפרייז | כן | לא |
שרת Windows 2008 R2 | מרכז נתונים | כן | כן |
שרת Windows 2012 | סטנדרטי, מרכז נתונים | כן | כן |
שרת Windows 2012 R2 | סטנדרטי, מרכז נתונים | כן | כן |
שרת Windows 2016 | סטנדרטי, מרכז נתונים | כן | כן |
שרת Windows 2019 | סטנדרטי, מרכז נתונים | כן | כן |
יתרות וחסרונות של הוספת חם ב-VMware
התוסף VMware Hot Add הוא מאפשר שימושי במקרים רבים. עם זאת, חשוב לשים לב שישנם חסרונות בשימוש בתכונה זו כאשר לא נדרש באמת להוסיף בחום. ברירת המחדל של VMware Hot Add מנוטרלת מסיבות שונות. בואו נבדוק למה.
VMware vCPU Hot Add ו-vNUMA
כאשר אתה מאפשר את VMware Hot Add, vNUMA מנוטרל באופן אוטומטי עבור ה-VM. כברירת המחדל, vNUMA מופעל עבור כל ה-VMs שיש להם 8 vCPUs או יותר לשיפור ביצועים. בואו נביט קרוב יותר במושגי NUMA ו-vNUMA.
מהו NUMA?
NUMA (non-uniform memory access) הוא הארכיטקטורה עבור מערכות מרובות עיבוד שמאפשרת למעבדים לשתף זיכרון מקומי. זמן גישה לזיכרון על ידי מעבד תלוי במיקום הזיכרון על לוח האם. לכל מעבד יש עדיפות להשתמש בזיכרון "המקומי" שלו במקום להשתמש בזיכרון המותקן בקרבת מעבד אחר. במילים אחרות, NUMA הוא שיטה שמגדירה כיצד מעבד אחד מתממשק עם מודולי הזיכרון של מעבד אחר. מערכות NUMA הן פלטפורמות עם יותר מקו ביצועים אחד כאשר כל מעבד יכול לגשת לכל הזיכרון על לוח האם. מעבד עם זיכרון מותקן בקרבת מעבד זה נקרא צומת NUMA.
אם NUMA מנוטרלת או, לדוגמה, יש לך שני מעבדים והזיכרון מותקן בקרבת מודולי הזיכרון של רק אחד מהם, עשוי להיות לך נפילת בביצועים ובעיות חומרה נוספות. אם אין לך מספיק מודולי זיכרון כדי למלא את כל החריצים על לוח האם עם שני מעבדים, נסה להפיץ את מודולי הזיכרון על פני חריצי הזיכרון של המעבד הראשון והשני.
NUMA עוזר לתהליכי מערכת הרצה במערכת ההפעלה המודעת ל-NUMA להתפזר באופן רציונלי. זה מאפשר לכל תהליך לגשת לאזורי זיכרון שקרובים ביותר למעבדים שמשמשים אותם תהליכים.
מהו vNUMA?
Virtual NUMA (vNUMA) הוא שיטת אופטימיזציה ב-VMware vSphere. הוא מבטיח ש-VMים גדולים מבצעים ביעילות על ידי לקחת בחשבון את טופולוגיית ה-NUMA ומניעת מכשולי רוחב הזיכרון. טופולוגיית NUMA פיזית נחשפת למערכת ההפעלה האורחת עם vNUMA. כתוצאה מכך, טופולוגיית ה-NUMA הווירטואלית מבוססת על טופולוגיית ה-NUMA של חומרה הפיזית התומכת במארח ESXi. יחידות המעבד הווירטואליות של ה-VM יכולות לתזמן גישה לזיכרון השוכן באותם צומתי NUMA.
vNUMA זמין ל-VMים המשתמשים בחומרה וירטואלית 8 או גבוהה יותר. כאשר אתה יוצר מכונה וירטואלית, אתה יכול לבחור במספר המעבדים ובמספר ליבות מעבד. מספר תקופי המעבד נחשב באופן אוטומטי. אם מספר ה-vCPUs שמשמש על ידי VM גבוה ממספר הליבות בכל צומת NUMA, אז טופולוגיית vNUMA משתנה ומתוחזקת לשימוש של מערכת ההפעלה האורחת. מערכת ההפעלה האורחת יכולה להשתמש במספר NUMA nodes במקרה זה. ה-VM הזה נקרא VM רחבה או גדולה.
מה קורה כש-vNUMA מושבת?
כאשר הגרסה החמה מופעלת ו- vNUMA מושבת, מכונה וירטואלית אינה מודעת למודעות NUMA התחתונה במארח ESXi ומגבירה גישה לזיכרון רחוק במודעות NUMA המרוחקות. תזמון ה-CPU/זיכרון של מערכת ההפעלה האורח אינו אופטימלי. כתוצאה, ביצועי המכונה הווירטואלית נמוכים. הפגיעה בביצועים ניכרת עבור מכונות רחבות עם מספר תהליכים מוגדל על ידי יישום. לדוגמה, אם מפעילים את הגרסה החמה על מכונה וירטואלית שמערכת הפעלת האורח שלה משתמשת בשני מודעות NUMA, מערכת הפעלת האורח יכולה לזהות רק מודעה אחת לאחר מכן מכיוון שהמבנה המותאם לטופולוגיית vNUMA לא נוצר.
מומלץ להפעיל את תכונת הגרסה החמה של VMware רק אם יש צורך בה במהלך פעולת המכונה הווירטואלית. אחרת, מומלץ להשבית את הגרסה החמה עבור מכונות וירטואליות שמתרוממות על יותר ממודעת NUMA אחת. אם אין לך בטוחות שאתה צריך להוסיף CPU וזיכרון בחם, תוכל להקצות יותר משאבי CPU וזיכרון למכונה הווירטואלית מההתחלה.
הגבלות של הגרסה החמה של VMware
לא ניתן להסיר רכיבים בזמן הגרסה החמה
כאשר הגרסה החמה/התקנה החמה מופעלת, אי אפשר להסיר בזמן אמת יכולות של CPU וזיכרון. לאחר שהוספת יחידות vCPU וזיכרון למכונה וירטואלית, היישומים משתמשים במשאבים הנוספים האלו. על כן, היישומים אינם תומכים באפשרויות כמו הורדת זיכרון ויכולת של CPU שכבר בשימוש. מכאן, הדרך היחידה להפחית משאבי CPU וזיכרון עבור מכונה וירטואלית היא לכבות את המכונה ולערוך את הגדרותיה של מכונה מכובתת.
הגבלות על קיבולת הזיכרון
הכמות המרבית של הזיכרון שניתן להוסיף בהגרסה החמה היא x16 מכמות הזיכרון המקורית שהוקצתה למכונה וירטואלית. לדוגמה, אם למכונה וירטואלית יש 4 GB של זיכרון RAM, ניתן להגדיל את הכמות הזו עד ל- 64 GB.
כיצד להגדיר Hot Add ב- VMware
ישנם מספר אופציות לאפשר Hot Add של vCPUs של VMware ו-Hot Add של זיכרון של VMware. ניתן להשתמש בממשק משתמש גרפי או בממשק משתמש בשורת פקודה.
הפעלת Hot Add ב-vCenter
כדי להפעיל את האפשרות של Hot Add של VMware באמצעות vCenter, התחבר ל- VMware vSphere Client ובצע את השלבים הבאים:
- עבור אל מארחים ואשפוז.
- בחר את מכונת הווירטואלית הרצויה בחלונית הניווט. המכונה הווירטואלית חייבת להיות מכובה.
- לחץ על סמל עריכת הגדרות. כאלטרנטיבה, ניתן ללחוץ עם העכבר ימינה על שם המכונה הווירטואלית ובתפריט הנפתח לבחור ערוך הגדרות.
עשה את הפעולות הבאות כדי להפעיל Hot Add של המעבד:
- בחלון עריכת הגדרות, הרחב את ההגדרות של המעבד.
- בשורת הזיכרון החם של המעבד, בחר את תיבת הסימון אפשר Hot Add של המעבד.
עשה את הפעולות הבאות כדי להפעיל Hot Add של הזיכרון:
- בחלון עריכת הגדרות, הרחב את ההגדרות של הזיכרון.
- בשורת ה-הוספת זיכרון חמים, בחר בתיבת הסימון הפעל.
- לחץ על אישור כדי לשמור את הגדרות ה-VM ולסגור את החלון.
עכשיו ניתן להתחיל את ה-VM ולהוסיף חם VMware vCPUs וזיכרון ל-VM.
הפעלת הוספת חמה של VMware ב-PowerCLI
VMware PowerCLI הוא כלי השורת פקודה העוצמתי עבור ניהול VMware vSphere. בואו נראה איך לאפשר הוספת חמה של VMware ב-PowerCLI.
- התחברו ל-vCenter או ל-ESXi host שלכם באמצעות הפקודה הבאה והזינו את כתובת ה-IP הרלוונטית (192.168.101.205 בדוגמה זו) או שם המארח:
Connect-VIServer 192.168.101.205
- הזן את פרטי הכניסה כשיש לך הוראות.
- רשימת VMs ב-ESXi host שבו התחברת.
Get-VM
- ודאו שה-VM שברצונכם לאפשר הוספת חמה עבורה מושתקת.
- הפעל את הפקודות הללו כדי לאפשר הוספת זיכרון חם והוספת מעבד חם עבור המכונה הווירטואלית שנבחרה.
$VM = Get-VM Windows-VM
$spec = New-Object VMware.Vim.VirtualMachineConfigSpec
$spec.memoryHotAddEnabled = $true
$spec.cpuHotAddEnabled = $true
$VM.ExtensionData.ReconfigVM_Task($spec)
איפה:
Windows-VM הוא שם המכונה הווירטואלית הנדרשת
$spec.memoryHotAddEnabled = $true הוא הפקודה לאפשר הוספת זיכרון חם
$spec.cpuHotAddEnabled = $true הוא הפקודה לאפשר הוספת מעבד חם - בדוק על אילו מכונות וירטואליות מאופשרות תכונות של הוספת זיכרון והוספת מעבד:
Get-VM | Get-View | Select Name, `
@{N=”CpuHotAddEnabled”;E={$_.Config.CpuHotAddEnabled}}, `
@{N=”CpuHotRemoveEnabled”;E={$_.Config.CpuHotRemoveEnabled}}, `
@{N=”MemoryHotAddEnabled”;E={$_.Config.MemoryHotAddEnabled}}
הפעלת הוספת חמימות בקובץ הגדרת מכונה וירטואלית
שיטה נוספת לאפשר Hot Add ב-VMware היא באמצעות ממשק השורה של הפקודה ב-ESXi ממשק שורת הפקודה ועריכת קובץ התצורה VMX של המכונה הווירטואלית. פתח את מעטפת ה-ESXi או התחבר למארח ה-ESXi באמצעות SSH. לאחר מכן, הרץ את הפקודות הבאות בשורת הפקודה כדי לאפשר Hot Add:
- עבור לספריית ה-VM:
cd /vmfs/volumes/datastore10a/Windows-VM/
- ודא שה-VM כבוי.
- פתח את קובץ התצורה VMX של המכונה הווירטואלית בעורך טקסט:
vi Windows-VM.vmx - הוסף שורה זו לקובץ התצורה כדי לאפשר הוספת vCPU חמה:
vcpu.hotadd = “TRUE” - הוסף שורה זו לקובץ התצורה כדי לאפשר הוספת זיכרון חמה:
mem.hotadd = “TRUE” - שמור את קובץ התצורה VMX וצא מעורך הטקסט.
ניתן לבטל את יכולות החיבור החם ב-VM עבור התקנים כמו מתאמי רשת, מבקרי דיסקים וכו' (אשר מופעלים כברירת מחדל).
devices.hotplug = “false”
הגדרה זו אינה משפיעה על התקנת CPU חמה והוספת זיכרון בתצורת VMware של ה-VM.
עריכת קובץ התצורה VMX ב-VMware vSphere Client
ניתן גם לערוך את קובץ התצורה VMX ב-VMware vSphere Client:
- בחר את ה-VM הנדרש ב-VMware vSphere Client.
- כבה את ה-VM אם הוא פועל.
- לחץ על ערוך הגדרות.
- בחר בלשונית אפשרויות VM בחלון הגדרות VM.
- לחץ על מתקדם כדי להרחיב אפשרויות ולחץ על עריכת הגדרות.
- לחץ על הוספת פרמטרי הגדרה בחלון פרמטרי הגדרה.
- בקטע הוספת פרמטרי הגדרה חדשים הזן את הערכים כדי לאפשר זיכרון חם של VMware ו-vCPUs של VMware בהתאמה.
שם: mem.hotadd ערך: TRUE
שם: vcpu.hotadd ערך: TRUE - לחץ על אישור כדי לשמור את ההגדרות ולסגור את החלון.
סיום
אפשר את VMware Hot Add רק כאשר אתה מצפה להשתמש בתכונה זו להוספת מעבדים וירטואליים וזיכרון ל- VM הפעיל. אם אתה מאפשר את VMware Hot Add אך אתה לא משתמש בתכונה זו, ביצועים יכולים להתדרדר עבור VMs גדולים, כאשר הטופולוגיה עם מספר צומתים NUMA לא תהיה בשימוש. השתמש בניטור VMware VM כדי לנטור את ביצועים ושימוש במשאבים של VM ב- vSphere. גישה זו עוזרת לך לזהות אם VM זקוק לתכונת Hot Add להיות מופעלת.
Source:
https://www.nakivo.com/blog/vmware-vsphere-resources-hotadd-hotplug-explained/