A virtual machine (VM) is an emulated or digital version of a physical computer. Virtual machines can be used to run different operating systems and applications, store data, connect to networks, as well as perform other tasks like a physical device. Virtual machines run on a physical device called a host or parent server. And a virtual machine is called a guest or child.
במאמר זה, אסביר כיצד מכונות וירטואליות עובדות וכיצד הן שונות ממיכלים. אספק גם פרטים על כמה מהשימושים החשובים ביותר למכונות וירטואליות, כולל פיתוח תוכנה מרובת פלטפורמות וחקירות תוכנות זדוניות.
איך מכונה וירטואלית פועלת?
למעשה, טכנולוגיית הווירטואליזציה מאפשרת למשתמשים ליצור ולהפעיל מספר מכונות וירטואליות בו זמנית על מחשב מארח בודד. לדוגמה, מארח Windows מסוגל להפעיל מכונות וירטואליות שונות עם Windows, CentOS, Ubuntu והפצות Linux אחרות.
A virtual server uses hypervisor software to interact with the underlying physical hardware. It makes it possible to keep VMs separate and evenly allocate host resources (CPUs, storage, and memory) to each VM guest as needed. The hypervisor can also schedule operations to prevent deadlocks.

שני סוגי ההיפרוייזורים
קיימים שני סוגי היפרוייזורים עיקריים המשמשים בווירטואליזציה.
היפרוייזורים מסוג 1 (מכונה תהליךית)
ראשית, מכונה וירטואלית מסוג 1, הידועה גם כ-hypervisor bare-metal, פועלת באופן טבעי על המחשב הפיזי. לרוב נדרש כלי ניהול נפרד ליצירת/ניהול מכונות וירטואליות וניהול הרשאות על ה-hypervisor. Microsoft Hyper-V ו-Citrix Hypervisor הם דוגמאות למכונות וירטואליות מסוג 1.
מכונות וירטואליות מסוג 2 (מערכת VM)
A type 2 hypervisor, also known as a hosted hypervisor, can run as an application on the host OS. It allows users to manually create a virtual machine instance and install a guest operating system.
המכונה הוירטואלית מסוג 2 איטית יותר לפי השוואה כיוון שכל בקשה של מכונה וירטואלית נדרשת להתווך דרך מערכת ההפעלה המארחת. זו רלוונטית לאנשים פרטיים, מפתחים וחברות קטנות שאינן יכולות לרכוש שרתים מיוחדים. דוגמאות נפוצות למכונות וירטואליות מסוג 2 כוללות Oracle VirtualBox ו-VMware Workstation.
מהו הווירטואליזציה?
הווירטואליזציה היא טכנולוגיה המשלבת יצירת שכבת המראה מעל מחשב בפועל. היא עוזרת לחלק משאבי חומרה (מעבד, זיכרון ואחסון) של מחשב יחיד למחשבות וירטואליים שונים בשם מחשבות וירטואליים.
כל מחשב וירטואלי פועל כמחשב עצמאי עם מערכת הפעלה עצמאית. זו פתרון כלכלי שימושי לארגונים המעוניינים להריץ מערכות הפעלה רבות ויישומים שונים על שרת פיזי אחד בלבד.
חמישה סוגי הווירטואליזציה
קיימים חמישה סוגים נפוצים של ווירטואליזציה: הומור, תוכנה, אחסון, רשת ומחשב שולחני.
1. הווירטואליזציה של חומרה
הווירטואליזציה של חומרה, ידועה גם כהווירטואליזציה של שרת, היא טכניקה המאפשרת למשתמשים ליצור גרסאות וירטואליות של מחשבים ומערכות הפעלה. היא מאפשרת להריץ באופן סימולטני מערכות הפעלה רבות על אותו מכונה פיזית. הווירטואליזציה של חומרה גם מגבירה את השימוש במשאבי החומרה.
2. הווירטואליזציה של תוכנה
הווירטואליזציה של תוכנה היא שיטה המאפשרת למחשב מארח פיזי להריץ מספר מחשבים וירטואליים. זה משתמש בתוכנת ההיפרוויזור כדי לחלק את משאבי החומרה (כגון אחסון, עיבוד וזיכרון) בין מכונות וירטואליות שונות. לדוגמה, ניתן להריץ הפצת Linux במכונה וירטואלית על מחשב המריץ מערכת הפעלה של Windows.
3. וירטואליזציה של אחסון
הווירטואליזציה של אחסון מקצרת את האחסון הפיזי ממספר מכשירי אחסון ברשת להופיע כדיסק וירטואלי אחד. יש לה מספר יתרונות כולל חיסכון בעלויות, איזון העומס, תכנון בטיחות גיבוי, ושיפור בביצועים ומהירות.
4. וירטואליזציה של רשת
הווירטואליזציה של רשת היא תהליך המשמש לקיבוץ רשתות פיזיות לרשת וירטואלית מבוססת תוכנה אחת. זה עוזר לחלק את הרוחב פס הזמין לערוצים שונים ולהקצות אותם למכשירים ושרתים. היא מציעה יתרונות כמו שיפור בביטחון, אמינות ומהירות הרשת.
5. וירטואליזציה של שולחן עבודה
הוירטואליזציה של שולחן עבודה מאפשרת למשתמשים לדמות עומס של תחנת עבודה כך שניתן לגשת אליה מכל מקום ומכל מכשיר. היתרונות העיקריים שלה כוללים חיסכון בעלויות, אופטימיזציה של משאבים, שיפור באבטחת המידע, וניהול קל יותר.
מהם היתרונות העיקריים של שימוש במכונות וירטואליות?
VMs סופקים מגוון יתרונות למשתמשים סופיים ולמנהלי מערכות מידע. הנה רשימה של חלק מהתכונות שהופכות מכונות וירטואליות למאוד מעניינות בסביבות המהות של ארגונים:
1. ענן מחשוב
טכנולוגיית הווירטואליזציה מספקת את התשתית הבסיסית לענן המידע. זה מאפשר לעסקים לפרוץ ולהעביר מכונות וירטואליות ייחודיות לעניני ענן לסביבות שרתים במשרדיהן ולהשתמש בעננים היברידיים.
כמו כן, ניתן לארגונים להקצות ולשנות משאבי ענן בזמן אמת כדי לענות על דרישות השימוש הדינאמיות שלהם. שירותי VM בענן פופולריים להרצת יישומי שירות לקוח (SaaS), לגיבוי נתונים, ולשירותי דוא"ל וניהול גישה.
2. יעילות כלכלית
מכונות וירטואליות מאפשרות לארגונים ליצור ולהפעיל מספר של מופעי מכונה וירטואליים על שרת יחיד. מאחר ועלויות הכוח המחשבי יכולות להיות אתגר אמיתי עבור עסקים, VMs עוזרות להגביר את יעילות העלויות על ידי שימוש במינימום משאבי כוח פיזיים. לדוגמה, מנהלי מערכות יכולים להשתמש במכונת שרת יחידה כדי לפרוץ אפליקציות שונות בסביבת ארגון.
3. אבטחה
המשתמשים יכולים ליצור סביבות וירטואליות כדי לשפר את האבטחה ולמנוע מתוך פגיעה של תוכנות זדוניות בחומרה תחתונה ובמערכת ההפעלה. זה אפשרי למשתמשים לשחזר במהירות ובקלות מכונת וירטואלית פגועה לגרסאות ישנות במקרה של התקפת סייבר.
בינתיים, מפתחים יכולים להשתמש במכונות וירטואליות כדי לבדוק עדכוני תוכנה ואפליקציות לפני שהן משוחררות למשתמשים בייצור. מכונות וירטואליות גם עוזרות לחוקרים לבדוק תוכנות זדוניות.
4. גמישות וניידות
הווירטואליזציה מאפשרת ללקוחות להפעיל במהירות סוגים שונים של מכונות וירטואליות עם מערכות הפעלה של בחירתם וסט ספציפי של משאבים. מכונות וירטואליות יכולות גם לעזור לארגונים להגיב בצורה יותר טובה לשינויים בעומסי עבודה. הן יכולות גם לחסוך את הזמן והמאמץ הנוספים הנדרשים להתקין מערכות הפעלה שונות על שרתים פיזיים.
5. העברת עומס עבודה
מכונות וירטואליות מכונות גם "חבילות עצמיות" המופרדות מהמחשב הפיזי. זה עושה את זה קל יותר לצוותי ה-IT להעביר לחומרה מהירה יותר, להעביר מכונה וירטואלית משרת אחד לשני, וגם לשחזר מכשלות.
6. שחזור במקרי אסון
ארגונים יכולים להשתמש במכונות וירטואליות כדי לגבות את המערכות שלהם בסביבות עננים. היכולת הזו מספקת שכבת אבטחה נוספת וממזערת את הסיכון לאובדן נתונים בתרחישים כגון כשלי חומרה.
7. תמיכה ב-DevOps
ומחשבות מופעלות מעטים מאוד מקבלים את כל הגמישות העליונה בתמיכה במפתחים עסקיים. הם יכולים ליצור סביבות ניידות עם כל הפונקציות המלאות לתהליך הפיתוח והבדיקה של התוכנה. מחשבות המקום גם מאפשרות למפתחים להריץ ולבדוק תוכנה לא תואמת על מערכות ההפעלה השונות.
מחשבות מדומה נגד. קונטררים
בדיוק כמו מחשבות מדומה, קונטררים מאפשרים לנו להריץ את היישומים שמופרדים מהמאסבר הבסיסי. אך בואו נסתכל קרוב יותר על ההבדלים העיקריים בין מחשבות מדומה לקונטררים:
Virtual Machines | Containers |
---|---|
Hardware-level process isolation | Operating system-level process isolation |
A virtual machine offers complete isolation of apps from the host OS | Containers can share some resources with the host OS |
VMs use a few GBs of system memory | Containers require less memory space (KBs or MBs) |
Each VM has a dedicated OS | Containers can share OS resources |
VM is more secure | Containers are less secure |
Boots in minutes | Boots in seconds |
VMs consume more system resources | Containers consume fewer resources |
VMs can move between hardware | Containers are destroyed and recreated |
VM creation takes a considerable amount of time | Users can create containers within a few seconds |
Users can run any OS inside the VM | Users can only run containers on the same OS version as the host |
Some popular use cases of VMs are running multiple applications, monolithic applications, and legacy apps on older OS. | Containers are best for running web apps, DevOps testing, and microservices. |
התרגומים העיקריים למחשבות מדומה
למחשבות מדומה יש מספר משמעויות לשימוש של משתמשים קיצוניים ומנהלי מערכות חשמליות. פה מספר דוגמאות:
1. בדוגמה, בדיקת מערכות הפעלה חדשות
מחשבות מדומה מאפשרות למשתמשים להריץ מערכות הפעלה שונות על מאסבר פיזי אחד. זה אומר שמשתמשים יכולים לבדוק תכונות חדשות ללא השפעה על המערכת העיקרית שלהם.
אם אתה חלק מתוכנית Windows Insider, יתכן שיהיה לך כוונה להשתמש במכונות וירטואליות כדי לבדוק בקרוב בניית ה- Windows 11 הבאה מערוץ Dev. בנייה אלה עשויות להיות לא יציבות מסוימת, אך עדיין אפשרי לשחזר את המכונה הווירטואלית ולהתקין מחדש את מערכת ההפעלה אם ה-VM שלך לא מצליחה להפעיל עקב סיבה מסוימת.
2. הפעלת תוכנות ישנות או לא תואמות
עוד שימוש נפוץ של מכונות וירטואליות הוא היכולת להריץ יישומי תוכנה ישנים בסביבות ארגוניות. ה-VMs מאפשרות למשתמשים להפעיל תוכנה שאינה נתמכת על ידי מערכת ההפעלה הקיימת שלהם.
3. חקירת תוכנות זדוניות
חוקרי תוכנות זדוניות צריכים לעיתים קרובות מכונות חדשות לבדוק תוכניות או אפליקציות מזיקות. כאן נכנסות לתמונה מכונות וירטואליות. הם יכולים לבדוק את התוכנה ב VM במקום לסכן את המחשב המארח בסיכון הדבקת מידע.
4. פיתוח תוכנה בסביבות חוצות-פלטפורמה
טכנולוגיית הווירטואליזציה מאפשרת למפתחי תוכנה וטסטרים לבדוק את היישומים שלהם על פלטפורמות מרובות. לדוגמה, צוות פיתוח יכול להשתמש במכונות וירטואליות שונות כדי לבדוק גרסאות שונות של אפליקציה בסביבה שמונתקת.
5. מושבי הדרכה
חשיבה על המחשבים באולם ההוראות להורדת מוניות של מערכות ההפעלה. מנועי מקטעים מאפשרים למורים לבצע הוראות שמחקות סיטאציות עסקיות וסביבות שונות.
6. הצגת מקום בטיחה
לבסוף, מנועי מקטעים יכולים לסייע בהבטחת חווית הדפדפן הבטיחה עבור המשתמשים. ניתן לצלם תצלום של מנוע מקטעים במצבו הנוכחי ואז לחזור אחורה במקרה של הדבקת מלאכה. המשתמשים יכולים להגיע אחד מאיברי המנוע מסוג 2 או לבקש מאדם מחשב להעניק להם נגישות זמנית לשולחן מקטעים שמאחסן על שרת.
סיכום
בקיצור, מנועי המקטעים הם פתרון יעיל מבחינת עלויות שמאפשר לצוותי הIT לפיתוח ביצועים מערכתיים ולנהל מספרים גדולים של מחשבים. אך למנועים המקטעים יש יתרונות ובעיות שונים, ואורגניזציות בדרך כלל משתמשת בגישה מערבודה (של מחשבים פיזיים ומקטעים) לפי צרכיהן עסקיים.