P{font-size:10pt; line-height:16; margin-left:0; margin-top:0;
margin-right:0; margin-bottom:0; font-family:gulim;}
(English is not my first language Sorry for my poor English )
OS :
Linux nc233 2632-220171el6x86_64 #1 SMP Tue May 15 17:16:46 CDT 2012 x86_64
x86_64 x86_64 GNU/Linux
CentOS release 63 (Final)
open vswitch : 11190
virsh : 100
ibvirtd (libvirt) : 100
I have tried to see what the virsh setting can do to open vswitch(ovs)
until now I had installed open vswitch from a source, not by using rpm or
rpm build of the source (I had tried to do 'ovs rpm build' described
at INSTALLRHEL included in ovs, But i failed to do it)
What i tried is
this(http://blogscottloweorg/2012/11/07/using-vlans-with-ovs-and-libvirt/)
I installed and started up ovs and it looked like properly working I
could create and delete bridges and ports with 'ovs-vsctl'
1 what i created before running 'virsh net-define'
--------------------------------------------
# ovs-vsctl show
76d9d6aa-cfce-4868-bf99-7d16bcfe38eb
Bridge "br0"
Port "br0"
Interface
"br0"
type: internal
Port "eth1"
Interface
"eth1"
--------------------------------------------
2 And then runned 'virsh net-define netxml'
'netxml' i used
--------------------------------------------
<network>
<name>ovs-network</name>
<forward mode='bridge'/>
<bridge name='br0'/>
<virtualport type='openvswitch'/>
<portgroup name='vlan-01'
default='yes'>
</portgroup>
<portgroup name='vlan-02'>
<vlan>
<tag id='2'/>
</vlan>
</portgroup>
<portgroup name='vlan-03'>
<vlan>
<tag id='3'/>
</vlan>
</portgroup>
<portgroup name='vlan-all'>
<vlan
trunk='yes'>
<tag id='2'/>
<tag id='3'/>
</vlan>
</portgroup>
</network>
--------------------------------------------
3 vmxml which was used for 'virsh define vmxml'
--------------------------------------------
<domain type="kvm">
<name>vm</name>
<memory>1048576</memory>
<vcpu>1</vcpu>
<os>
<type arch="x86_64"
machine="pc">hvm</type>
<boot
dev="hd"/>
</os>
<features>
<acpi/>
<apic/>
<pae/>
</features>
<clock mode="localtime">
<timer name="rtc"
tickpolicy="catchup" wallclock="guest"/>
<timer name="hpet"
present="no"/>
</clock>
<devices>
<!--<emulator>/usr/libexec/qemu-kvm</emulator>-->
<emulator>/usr/bin/qemu-system-x86_64</emulator>
<!--<disk
device="disk"
type="block">-->
<disk device="disk"
type="file">
<!--<driver
cache="none" name="qemu"
type="qcow2"/>-->
<driver
cache="writeback" io="threads"
name="qemu"
type="qcow2"/>
<source
file="/root/img/vmimg"/>
<target
bus="virtio"
dev="vda"/>
</disk>
<interface
type="network">
<mac
address="d2:0d:45:a3:92:ea"/>
<source
network='ovs-network' portgroup='vlan-02'/>
</interface>
<console
type="pty">
<target
port="0"/>
</console>
<input bus="usb"
type="tablet"/>
<input bus="ps2"
type="mouse"/>
<graphics
autoport="yes"
keymap="en-us" listen="0000"
port="-1"
type="vnc"/>
</devices>
</domain>
--------------------------------------------
4 runned 'virsh start vm', and failed
(messages had not been printed in english at my server, so i googled and
tried to choose simillar sentecne which were shown in libvirt related
threads please consider it)
-----------------------------------------
#virsh start vm
error : Failled to start domain vm
error : Unable to add port vnet0 to OVS bridge br0
-----------------------------------------
At that time, /var/log/libvirt/libvirtdlog
(these are also translated)
-----------------------------------------
2013-05-23 04:32:14588+0000: 11455: error : virNetDevGetMTU:343 : Cannot
get interface MTU on 'ovsbr0': No such device
2013-05-23 04:32:14678+0000: 11455: error : virExecWithHook:419 : Cannot
find 'ovs-vsctl' in path: No such file or directory
2013-05-23 04:32:14679+0000: 11455: error :
virNetDevOpenvswitchRemovePort:173 : Unable to delete port (null) from OVS:
command does not allowed
-----------------------------------------
I think above errors comes from install location of OVS as written in
libvirtdlog How can i solve that by hands? (I'm also trying to solve the
problem by installing ovs, using rpm build) There are not only fedora or
ubuntu linux, so the solution may exist Are there a way to get libvirt to
recognize ovs-vsctl? (As i mentioned above, ovs-vsctl and ovs are properly
working)
Thank you for reading