
"משגוח המכונות הוירטואליות" Xen מתחיל לצוץ בכל מקום, או לפחות במספר הפצות לינוקס. Fedora Core 4 כוללת אריזה מוכנה של Xen, כחלק מההפצה עצמה. SUSE Professional 9.3 כוללת את Xen אף היא ויש גם את Xenophillia - הפצה המבוססת על Xen. היא נמצאת גם במאגר unstable של דביאן. XenSource, החברה שהקימו מפתחי Xen, נמצאת אף היא בחדשות, לאחר שזכתה למימון של קרנות הון סיכון ותרומת קוד מחברת אינטל. מאת ג'ו ברוקמייר, LWN.
Xen מקרוב
עושה רושם שזה העיתוי המתאים לבחון את Xen מקרוב כדי להבין למה היא מסוגלת ולאן היא הולכת. כדי לנסות ללמוד עד כמה היא בשלה, החלטנו לבחון אותה בעזרת Fedora Core 4 וגירסה עדכנית של LiveCD שמשחרר פרוייקט Xen עצמו. על פי המדריך למשתמש, גירסת Xen ששולבה בפדורה, מבוססת על ענף הפיתוח ולכן צפוי היה שלא הכל יעבוד כשורה. מי שרוצים לבחון את Xen מבלי להתקין את פדורה, יכולים להעזר בדיסק ההדגמה שמבוסס על דביאן. דיברנו גם עם סיימון קרוסבי, ממייסדי XenSource ופרופסור לשעבר באוניברסיטת קיימברידג' בה החל פיתוחה של Xen.
Xen היא "hypervisor", או משגוח, של מכונות וירטואליות, שיכול להפעיל מספר מכונות כאלו על גבי אותה החומרה. Xen אינה מיוחדת בכך שהיא יודעת להריץ מכונות וירטואליות - משתמשי לינוקס יכלו לעשות זאת בעבר בעזרת User-Mode-Linux, Bochs או VMWare וכיום גם עם מוצרים כמו Virtuozzo של חברת SWSoft ושאר טכנולוגיות וירטואליזציה מסוג זה.
אבל Xen עובדת מעט אחרת מאשר UML או VMWare. היא דורשת הסבה של הקרנל של מערכת ההפעלה האורחת מאחר שהיא לא מיישמת וירטואליזציה מלאה של סביבת x86 מלאה, כפי שמקובל. הגישה של Xen אמורה להבטיח ביצועים טובים יותר - מבחן ביצועים השוואתי בין Xen, VMWare Workstation ו-UML זמין באתר הפרוייקט - אבל משמעות הדבר היא שמערכות הפעלה האורחות לא יכולות לרוץ כמות שהן בתוך Xen. משתמשים שמעוניינים להריץ את מערכת ההפעלה Windows למשל, יצטרכו לחפש פתרונות אחרים. לעת עתה לפחות. קרוסבי מציין שנעשה פיתוח שיאפשר הרצת מערכות הפעלה ללא צורך בביצוע שינויים כלשהם במערכת ההפעלה האורחת, אבל אין לצפות לפתרון מסוג זה, אלא זמן מה לאחר שתשוחרר גירסה 3.0.

נוסף על כך, Xen יכולה לרוץ על גבי מעבדי x86 מסידרה 686 ומעלה בלבד, אבל מתנהל כיום פיתוח של היסבים גם לארכיטקטורות x86_64 וארכיטקטורות אחרות. קרוסבי מציין שחברת יבמ עובדת על היסב למעבד Power5, חברת HP מפתחת היסב עבור IA64 והוא חושב שגם סאן מפתחת היסב עבור SPARC. הגירסה הנוכחית של Xen יכולה לרוץ בסביבת SMP, אבל היא לא עושה שימוש במעבדים הנוספים. קרוסבי מציין שנעשה פיתוח גם בתחום זה ותמיכה ב-SMP נמצאת בתוכנית העבודה של גירסה 3.0 - גם עבור מערכת ההפעלה המתארחת ב-Xen.
נוסף על האפשרות להריץ מספר מופעים של לינוקס במחשב אחד, Xen תומכת גם במערכות ההפעלה NetBSD ו-FreeBSD, לכן היא איננה מגבילה את המשתמשים להשתמש בלינוקס בלבד. הרצנו מופעים של דביאן עם הקרנלים 2.4 ו-2.6 לצד מופעים של FreeBSD ו-NetBSD בעזרת גירסת ה-LiveCD של Xen.
התקנה ושימוש
התקנו את Fedora Core 4 עם סט החבילות "Workstation", שאינה כוללת את Xen ולכן השתמשנו ב-YUM כדי להוריד קרנל Xen וחבילות תומכות נוספות. Xen בגירסה זו של פדורה דורשת עדיין התערבות ידנית ניכרת בהתקנה. בהעדר ממשק גרפי לצורך יצירה נוחה של מכונות וירטואליות, המשתמשים עשויים למצא את התהליך כולו מעיק למדי. עקבנו אחר ההוראות במדריך (Quick Starter) כדי להתקין את Xen וכדי וליצור מכונות וירטואליות, ובמדריך למשתמש כדי ללמוד כיצד לעבוד עם הכלים הבסיסיים.
לאחר שהתקנו קרנל Xen0, ביטלנו את התמיכה ב-SELinux ואתחלנו את המחשב עם הקרנל החדש. חובה לכבות את SELinux כדי לאפשר יצירת מערכת הקבצים עבור מערכת ההפעלה האורחת. לאחר האתחול יצרנו קובץ בגודל 2 ג"ב והתקנו לתוכו מערכת פדורה בסיסית, בעזרת YUM. אפשר גם לייצא התקני בלוק (block devices) לתוך המתחם (דומיין) של מערכת ההפעלה המתארחת, כך שניתן יהיה לאפשר למשתמשים לעבוד עם מחיצה שלמה כמערכת הקבצים של מערכת ההפעלה האורחת.
לאחר יצירת מערכת הקבצים ולאחר שיצרנו את קובץ התצורה עבור מערכת ההפעלה המתארחת בספריה etc/xen/, הפעלנו אותה. הקצנו עבורה 128 מ"ב מהזיכרון הפנוי במחשב עם זיכרון בנפח 1 ג"ב בסה"כ. התחלנו לשחק איתה מעט על ידי יצירת ממשק רשת, התקנת שרת Apache עם YUM וכן הלאה. הביצועים של מערכת ההפעלה המארחת והאורחת, נראו סבירים גם אחרי שהתחלנו מופע שני עם תצורה דומה באותו המחשב עצמו.
שימוש מתקדם
תכונה מעניינת נוספת של Xen, היא האפשרות להעביר "מופע חי" ממחשב אחד למחשב אחר. קרוסבי ציין שאפשר להעביר מכונות וירטואליות באופן כזה ש"מערכת ההפעלה המתארחת אינה זמינה לעולם החיצון למשך מספר מילישניות ספורות."
גירסה 3.0 של Xen צריכה להיות זמינה מתישהו ביולי על פי הלו"ז של הפיתוח. קרוסבי ציין שגירסה 3.0 תסתעף "תוך מספר שבועות," לאחר שיתקבלו מספר עדכונים שהמפתחים ממתינים להם. כאשר גירסה 3 תתפצל ביולי, קרוסבי אמר שהצוות של Xen יעבוד עם הקהילה, השותפים והמפיצים על פתרון באגים.
ממשק ניהול
Xen מספקת גם ממשק בקרה וובי. הממשק לא עבד בפדורה, אבל הוא עבד ללא כל בעיות מיוחדות בגירסת ה-LiveCD. לאחר שהרצנו את "xensv", יכולנו להתחבר באמצעות כניסה 8080 ולבצע את מרבית הפעולות שביצענו משורת הפקודה בעזרת הממשק הוובי.
ממשק הניהול של Xen סביר, אבל אין לצפות שיזכה בפרסים על ידידותיות. קרוסבי מכיר בכך וציין ש"אתה צריך להיות קצת גורו כדי להשתמש בו," אבל הוא גם הזכיר ש-Xen מלוטשת למדי בכל מה שקשור ליציבות, ואכן, לא נתקלנו בבעיות יציבות בזמן המבחנים, ועושה רושם שהיא מוכנה לעבודה בשטח. קרוסבי ציין גם שחברת XenSource מריצה את האתר שלה ושירותים אחרים על גבי מספר מערכות הפעלה שרצות בתוך Xen.
העתיד של Xen
שוחחנו עם קרוסבי גם על עתידה של XenSource ושאלנו אותו האם החברה תשחרר מוצרים עתידיים כקוד פתוח. קרוסבי ציין שהחברה מתכוונת לשחרר מספר כלים קנייניים, אבל Xen עצמה תשאר פתוחה. הוא גם אמר שהחברה מעוניינת ש-Xen תהיה נפוצה ככל שניתן ותיצור סביבה אקו-סיסטם של ספקי שירותים והזדמנויות עסקיות עבור חברות אחרות - שוק שהוא מעריך שלחברת XenSource יהיה נתח גדול בו.
למרות ש-Xen עדיין מחוספסת, היא כבר מתאימה למשתמשים שמחפשים פתרונות וירטואליזציה. הביצועים שלה טובים מאוד, ועושה רושם שמדובר בפתרון טוב לצורך בניית סביבת טסטים, ואולי גם לצורך אירוח אתרים וכדומה. בהתחשב בעניין הרב מצידם של המשקיעים, אינטל, סוזה, רד האט ואחרים, יש להניח ש-Xen תמשיך להתפתח בקצב מהיר.
מידע נוסף
הערך "Xen" בוויקי של Guides.co.il
לינמגזין, Xen 3.0 באוגוסט עם SMP ותמיכה ב-VT של אינטל
לינמגזין, שוחררה SUSE Linux Professional 9.3
לינמגזין, SUSE Linux 9.3 LiveCD: רשמים ראשונים
לינמגזין, SUSE Linux Professional 9.3 באפריל
לינמגזין, XenSource גייסה 6 מיליון דולרים
לינמגזין, נובל שיחררה אריזה של Xen עבור סוזה
לינמגזין, xen-tools ב-ubuntu
אודות המחבר
המאמר "A look at Xen" מאת ג'ו ברוקמייר (Joe 'Zonker' Brockmeier) התפרסם לראשונה באתר LWN ותורגם לעברית עבור לינמגזין על ידי אורי שרף, יולי 2005.