לאחרונה נדרשתי להגדיר מערכת, שתחזיק כמה שרתים וירטואליים מסוגים שונים. השרת המארח צריך לספק שרידות ברמת כרטיסי הרשת, ולהתאים עצמו לסביבה מבוססת (ומרובת) VLAN's.
רוב תוכנות הוירטואליזציה ללינוקס, כאשר הן מאפשרות גישה ישירה של ה-VM לרשת, הן בעצם מצרפות את כרטיס הרשת הפיזי של המכונה ל-Bridge, ומאפשרות גישור של ה-VM-ים לאותו ה-Bridge. גישה זו מאפשר ל-VM לגשת ל-Lan שאליו מחוברת המכונה המארחת. בתצורה שאותה אפרט בהמשך, תתאפשר גישה לכמה רשותות, מכרטיס רשת אחד.
סכימה כללית תראה כך:
|------| |-----------| |-------| |-----|
| eth0 |--| |--| bond0.100 |--| br100 |--| vm1 |
|------| | |-------| | |-----------| |-------| |-----|
|--| bond0 |--|
|------| | |-------| | |-----------| |-------| |-----|
| eth1 |--| |--| bond0.200 |--| br200 |--| vm2 |
|------| |-----------| |-------| |-----|
תודו שהשקעתי ב acsii art.
שלב הראשון הוא הגדרת ה-Bonding על 2 כרטיסי הרשת הפעילים. התצורה של כרטיסי הרשת נקבעת ע"י עריכת הקבצים:
/etc/sysconfig/network-scripts/ifcfg-eth0
/etc/sysconfig/network-scripts/ifcfg-eth1
יש להכניס את הקונפיגורציה הבאה, שם ה-Device צריך לתאום את שם הקובץ, למשל עבור ifcfg-eth0, נשתמש בערכים:
DEVICE=eth0
TYPE=Ethernet
ONBOOT=yes
SLAVE=yes
MASTER=bond0
כדי ליצור את הקונפיגורציה של כרטיס ה-bonding, נערוך את הקובץ
/etc/sysconfig/network-scripts/ifcfg-bond0
ונזין את הערכים הבאים. שימו לב כי אין לכרטיס כתובת IP, זאת משום שהכתובות יהיו על ה-Bridge:
DEVICE=bond0
BOOTPROTO=static
ONBOOT=yes
וכמובן, שאסור לשכוח את התוספות לקובץ
/etc/modprobe.conf
ההגדרות הבאות קובעות כי הכרטיס bond0, הוא כרטיס מסוג bonding, וכי יש להשתמש בתצורה של Active/Standby, עם החלפת כרטיס פעיל בעת זיהוי נפילת Link (בדיקה בכל 100 מילישניות)
alias bond0 bonding
options bonding mode=1 miimon=100
שלב הבא יהיה הגדרת ה-VLAN על כרטיס ה-Bonding. הגדרות אלו יאפשרו לנו לצרף כל כרטיס ל-Bridge אחר, וכך לספק גישה למכונות וירטואליות לרשתות שונות.
כדוגמה, נגדיר VLAN שמספרו 100 ונקשר אותו ל-Bridge ששמו br100. בתור התחלה, נגדיר את ה-VLAN ע"י יצירת הקובץ:
/etc/sysconfig/network-scripts/ifcfg-bond0.100
ובו הערכים הבאים:
DEVICE=bond0.100
BOOTPROTO=static
ONBOOT=yes
BRIDGE=br100
VLAN=yes
כעת ניתן להגדיר את ה-Bridge, ל"כרטיס" זה נגדיר כתובת רשת. הגדרה זו תאפשר גישה לשרת המארח. אם יש לשרת כרטיס רשת יעודי לניהול, אז גם הגדרת כתובת IP אינה הכרחית.
יש לערוך את הקובץ
/etc/sysconfig/network-scripts/ifcfg-br100
ולהזין את הערכים הבאים:
DEVICE=br100
TYPE=Bridge
BOOTPROTO=static
ONBOOT=yes
IPADDR=10.0.0.1
NETMASK=255.255.255.0
GATEWAY=10.0.0.254
בשלב הזה כל שנותר הוא לאתחל את הרשת בעזרת הפקודה
service network restart
ולהתחיל ליצור VM-ים שמקושרים ל-Bridge.
שמקושר ל-VLAN.
שמקושר ל-Bond.
שמקושר לכרטיסי רשת אמיתיים.
מאזין ל: Kaki King
חשוב להדגיש שההגדרות שהצגת כאן של bonding הם עבור תצורה מבוססת RedHat. כלומר בדביאן זה יראה אחרת.
הערה קטנה: ע"מ להמנע מהודעות מביכות בעתיד, עדיף להשתמש בקובץ תחת modprobe.d במקום modprobe.conf עצמו. לדוגמה: /etc/modprobe.d/vlan.conf
ר' http://whatsup.org.il/forum/54137
אתה צודק כמובן.
רוב שעותי הערות נסובות סביב RHEL4, ולשם בעיקר מתייחס הפוסט