لینوکس ۳۰۵؛ شب ۲۰: اتصال libvirt به bridge و Open vSwitch
فهرست نوشته
libvirt میتواند NIC مهمان را به switch موجود وصل کند. امشب Linux bridge و OVS خصوصی را مقایسه میکنیم و ownership مدیریت شبکه را روشن میکنیم.
این جلسه بخشی از دورهٔ لینوکس ۳۰۵ در ۶۰ شب است.
جایگاه در دوره: هدفهای 351.1، 351.4 آزمون 305-300.
محیط: hv-a، guest آزمایشگاهی خاموش و bridgeهای بدون NIC فیزیکی؛ OVS فقط در clone مستقل با بستهٔ openvswitch-switch نصب میشود.
برای Linux bridge، brq305 شب ۱۵ یا یک bridge جدید خصوصی بساز. interface XML مربوط:
<interface type='bridge'>
<source bridge='brq305'/>
<model type='virtio'/>
</interface>
برای OVS:
sudo apt install openvswitch-switch
sudo ovs-vsctl add-br ovs305
sudo ovs-vsctl show
نام باید جدید باشد؛ OVS اینجا NIC فیزیکی، tunnel یا DHCP خودکار ندارد. fragment جایگزین interface قبلی:
<interface type='bridge'>
<source bridge='ovs305'/>
<virtualport type='openvswitch'/>
<model type='virtio'/>
</interface>
fragment در devices قرار میگیرد و دو تعریف همنام جایگزین هم هستند. وقتی switch بیرون libvirt ساخته شده، libvirt آن را با subnet/DHCP/NAT مانند network managed ایجاد نمیکند. برای اتصال guestها، IP ثابت خصوصی و MAC مستقل بده.
آزمون: target NIC را با domiflist، Linux bridge با bridge link و OVS را با ovs-vsctl show دنبال کن. ارتباط دو guest روی switch خصوصی باید با IP همشبکه کار کند؛ اینترنت بدون route اضافه انتظار نمیرود. VLAN tag نیاز به تنظیم هر دو endpoint دارد، صرف نوشتن عدد برچسب آن را قابل اعتماد نمیکند.
بازگشت: guest را shutdown و NIC را به lpic305-nat برگردان. فقط وقتی هیچ port وابسته ندارد، ovs305 را با sudo ovs-vsctl del-br ovs305 حذف کن؛ OVS database کل میزبان را reset نکن.
منبع: interface XML ، libvirt و OVS .