[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-devel] After switching from "xm" to "xl" toolstack, can't get Guest networking to work.



Hi All.

I posted this over on the OpenSUSE Virtual mailing list, since I use
that distro.  But I found on the Xen wiki site,

  http://wiki.xen.org/wiki/MigrationGuideToXen4.1%2B#Toolstack_upgrade_notes

so I guess we should post xm->xl migration configuration problems here
too, or instead.


I inherited an OpenSUSE Version 11.4 Xen host machine here at work.

Without too much trouble I finished upgrading it to Version 12.1.

The old setup was running using the Xen "xm" toolstack and works like
you'd expect.  The new setup works ok if I use the "xm" stack as well.

I learned that we should move to the "xl" toolstack.  I'm trying to do
that now and having some problems with networking, but only with the xl
approach.

I've been running up to date Xen for awhile.

rpm -qa | grep -i xen
 xen-tools-4.1.2_11-164.5.x86_64
 xen-doc-html-4.1.2_11-164.5.x86_64
 xen-libs-4.1.2_11-164.5.x86_64
 xen-4.1.2_11-164.5.x86_64
 patterns-openSUSE-xen_server-12.1-25.21.1.x86_64
 xen-devel-4.1.2_11-164.5.x86_64
 xen-doc-pdf-4.1.2_11-164.5.x86_64
 kernel-xen-devel-3.1.0-1.2.1.x86_64
 kernel-xen-3.1.0-1.2.1.x86_64

I already setup the networking on the Host to use OpenSUSE
configuration.

brctl show
 bridge name     bridge id               STP enabled     interfaces
 br0             8000.0052351d5337       no              eth0

cat /etc/sysconfig/network/ifcfg-br0  
 STARTMODE='auto'
 BOOTPROTO='static'
 BRIDGE='yes'
 BRIDGE_PORTS='eth0'
 BRIDGE_FORWARDDELAY='0'
 BRIDGE_STP='off'

 NAME='Motherboard'
 IPADDR='192.168.1.32/24'
 BROADCAST=''
 REMOTE_IPADDR=''
 NETWORK=''
 MTU=''
 ETHTOOL_OPTIONS=''
 USERCONTROL='no'
 NM_CONTROLLED='no'

cat /etc/sysconfig/network/ifcfg-eth0
 STARTMODE='manual'
 BOOTPROTO='none'
 BRIDGE='no'

The Guest cfg file I'm using for testing is:

cat test.cfg
 name='test'
 builder='linux'
 bootloader='/usr/bin/pygrub'
 disk=['phy:/dev/XenVols/test,xvda,w']
 vif=[mac=00:16:3e:12:34:01, bridge=br0  , vifname=vifBR']
 vfb=[ 'type=vnc, vncdisplay=1, vnclisten=127.0.0.1']
 extra='textmode=1 xencons=xvc0 noirqdebug'
 on_shutdown='destroy'
 on_reboot='restart'
 on_crash='destroy'
 vcpus=2
 maxmem=2048
 memory=2048

With a clean-booted Host and no launched Guests,

xl list
 Name                                        ID   Mem VCPUs      State  
 Time(s)
 Domain-0                                     0  1010     4     r-----  
    86.3

xl create -c test.cfg
            pyGRUB  version 0.6
         
ââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ
         â Xen4 12.1 DomU                                               
                  â
         â                                                              
                  â
         â                                                              
                  â
         â                                                              
                  â
         â                                                              
                  â
         â                                                              
                  â
         â                                                              
                  â
         â                                                              
                  â
         
ââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ
             Use the ^ and v keys to select which entry is highlighted.
             Press enter to boot the selected OS, 'e' to edit the
             commands before booting, 'a' to modify the kernel arguments
             before booting, or 'c' for a command line.

             Will boot selected entry in  1 seconds


        Daemon running with PID 6779

I get no other output here (why not?) on the console for about 30
seconds. Then just,

 Welcome to openSUSE 12.1 "Asparagus" - Kernel 3.1.0-1.2-xen (xvc0).

 testserver login:


The output of 'tail -f /var/log/messages /var/log/xen/*log' is just

        ==> /var/log/messages <==
        Jan 21 10:40:39 testserver logger: /etc/xen/scripts/block: add
        XENBUS_PATH=backend/vbd/5/51712
        Jan 21 10:40:39 testserver logger: /etc/xen/scripts/block: add
        XENBUS_PATH=backend/vbd/5/51728
        Jan 21 10:40:39 testserver logger: /etc/xen/scripts/block: add
        XENBUS_PATH=backend/vbd/5/51744
        Jan 21 10:40:40 testserver logger: /etc/xen/scripts/vif-bridge:
        online type_if=vif XENBUS_PATH=backend/vif/5/0
        Jan 21 10:40:40 testserver logger: /etc/xen/scripts/vif-bridge:
        No device details in backend/vif/5/0, exiting.
        Jan 21 10:40:40 testserver logger: /etc/xen/scripts/vif-bridge:
        online XENBUS_PATH=backend/vif/5/0
        Jan 21 10:40:40 testserver logger: /etc/xen/scripts/vif-bridge:
        No device details in backend/vif/5/0, exiting.
        Jan 21 10:40:40 testserver kernel: [ 2711.951822] blkback:
        ring-ref 8, event-channel 12, protocol 1 (x86_64-abi)
        Jan 21 10:40:40 testserver kernel: [ 2712.015731] blkback:
        ring-ref 9, event-channel 13, protocol 1 (x86_64-abi)
        Jan 21 10:40:40 testserver kernel: [ 2712.066467] blkback:
        ring-ref 10, event-channel 14, protocol 1 (x86_64-abi)


I can login to the guest at the console and the Guest's networking looks
like it's recognized OK.

dmesg | grep eth
[    0.896597] netfront: Initialising virtual ethernet driver.

hwinfo --network
05: None 00.0: 10700 Loopback
  [Created at net.124]
  Unique ID: ZsBS.GQNx7L4uPNA
  SysFS ID: /class/net/lo
  Hardware Class: network interface
  Model: "Loopback network interface"
  Device File: lo
  Link detected: yes
  Config Status: cfg=new, avail=yes, need=no, active=unknown

06: None 00.0: 10701 Ethernet
  [Created at net.124]
  Unique ID: usDW.ndpeucax6V1
  Parent ID: +jsg.Sd+ykfyvlK4
  SysFS ID: /class/net/eth0
  SysFS Device Link: /devices/xen/vif-0
  Hardware Class: network interface
  Model: "Ethernet network interface"
  Driver: "vif"
  Driver Modules: "xennet"
  Device File: eth0
  HW Address: 00:16:3e:12:34:01
  Link detected: yes
  Config Status: cfg=new, avail=yes, need=no, active=unknown
  Attached to: #4 (Ethernet controller)

The Guest's network routes look OK.

route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use
Iface
default         192.168.1.1     0.0.0.0         UG    0      0        0
eth0
loopback        *               255.0.0.0       U     0      0        0
lo
link-local      *               255.255.0.0     U     0      0        0
eth0
192.168.1.0     *               255.255.255.0   U     0      0        0
eth0

But when I try to ping anywhere off the Guest I get HostUnreachable
errors.

ping 192.168.1.1
PING 192.168.1.1 (192.168.1.1) 56(84) bytes of data.
From 192.168.1.32 icmp_seq=1 Destination Host Unreachable
From 192.168.1.32 icmp_seq=2 Destination Host Unreachable
From 192.168.1.32 icmp_seq=3 Destination Host Unreachable
etc etc

It feels like I'm pretty close to getting this working.  Am I still
missing some part of the configuration changes needed for using the xl
toolstack?

Regards,

Erin

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.