Menu

#4762 [fvt]2.11:could not set bridge using xHRM bridgeprereq on rh7.1's physical machine for kvmhost install

2.11
open
yangsong
None
unknown
5
2015-07-28
2015-07-27
junxiaw
No

How to reproduce:
1.download the latest build
2.nodeset computenode osimage
rsetboot computenode net
rpower computenode boot
Details:
After provision:
c910f04x12:~ # lsdef c910f04x30
Object name: c910f04x30
arch=x86_64
bmc=10.4.30.254
bmcpassword=PASSW0RD
bmcusername=USERID
currchain=boot
currstate=boot
groups=all
initrd=xcat/osimage/rhels7.1-x86_64-install-kvm/initrd.img
ip=10.4.30.1
kcmdline=quiet inst.repo=http://!myipfn!:80/install/rhels7.1/x86_64 (http://%21myipfn%21:80/install/rhels7.1/x86_64) inst.ks=http://!myipfn!:80/install/autoinst/c910f04x30 (http://%21myipfn%21:80/install/autoinst/c910f04x30) ip=dhcp inst.cmdline console=tty0 console=ttyS0,115200n8r
kernel=xcat/osimage/rhels7.1-x86_64-install-kvm/vmlinuz
mac=34:40:b5:b9:ba:d4
mgt=ipmi
netboot=xnba
nodetype=osi
os=rhels7.1
postbootscripts=otherpkgs,xHRM bridgeprereq eno1:virbr0
postscripts=syslog,remoteshell,syncfiles
profile=kvm
provmethod=rhels7.1-x86_64-install-kvm
serialflow=hard
serialport=0
serialspeed=115200
status=booted
[root@c910f04x30 network-scripts]# ifconfig -a
eno1: flags=4163<up,broadcast,running,multicast> mtu 1500
inet6 fe80::3640:b5ff:feb9:bad4 prefixlen 64 scopeid 0x20<link>
ether 34:40:b5:b9:ba:d4 txqueuelen 1000 (Ethernet)
RX packets 714817 bytes 90090156 (85.9 MiB)
RX errors 0 dropped 48 overruns 0 frame 0
TX packets 1915 bytes 330004 (322.2 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
device memory 0xbda20000-bda3ffff </up,broadcast,running,multicast>

enp0s26u1u5u5: flags=4098<broadcast,multicast> mtu 1500
ether 36:40:b5:b9:ba:d9 txqueuelen 1000 (Ethernet)[r</broadcast,multicast>


[root@c910f04x30 ~]# brctl show
bridge name bridge id STP enabled interfaces
virbr0
------------------>could not set the ip and bridge here.

Discussion

  • yangsong

    yangsong - 2015-07-27

    some investigation:

    when the node is provisioned with rhels7.1-x86_64-install-kvm without the postbootscript "xHRM bridgeprereq eno1:virbr0":

    c910f04x12:/opt/xcat/share/xcat/install/rh # lsdef c910f04x30
    Object name: c910f04x30
        addkcmdline=inst.sshd
        arch=x86_64
        bmc=10.4.30.254
        bmcpassword=PASSW0RD
        bmcusername=USERID
        currchain=boot
        currstate=install rhels7.1-x86_64-kvm
        groups=all
        initrd=xcat/osimage/rhels7.1-x86_64-install-kvm/initrd.img
        ip=10.4.30.1
        kcmdline=quiet inst.repo=http://!myipfn!:80/install/rhels7.1/x86_64 inst.ks=http://!myipfn!:80/install/autoinst/c910f04x30 ip=dhcp  inst.cmdline  console=tty0 console=ttyS0,115200n8r
        kernel=xcat/osimage/rhels7.1-x86_64-install-kvm/vmlinuz
        mac=34:40:b5:b9:ba:d4
        mgt=ipmi
        netboot=xnba
        nodetype=osi
        os=rhels7.1
        postbootscripts=otherpkgs
        postscripts=syslog,remoteshell,syncfiles
        profile=kvm
        provmethod=rhels7.1-x86_64-install-kvm
        serialflow=hard
        serialport=0
        serialspeed=115200
        status=booted
        statustime=07-27-2015 10:01:23
        updatestatus=failed
        updatestatustime=07-27-2015 09:47:13
        vmstorage=dir:///var/lib/libvirt/images/
    c910f04x12:/opt/xcat/share/xcat/install/rh # lsdef -t osimage -o rhels7.1-x86_64-install-kvm
    Object name: rhels7.1-x86_64-install-kvm
        imagetype=linux
        osarch=x86_64
        osdistroname=rhels7.1-x86_64
        osname=Linux
        osvers=rhels7.1
        otherpkgdir=/install/post/otherpkgs/rhels7.1/x86_64
        pkgdir=/install/rhels7.1/x86_64
        pkglist=/opt/xcat/share/xcat/install/rh/kvm.rhels7.pkglist
        profile=kvm
        provmethod=install
        template=/opt/xcat/share/xcat/install/rh/kvm.rhels7.tmpl
    

    a network bridge is created:

    [root@c910f04x30 ~]# brctl show
    bridge name     bridge id               STP enabled     interfaces
    virbr0          8000.525400a9def8       yes             virbr0-nic
    

    virbr0-nic is dummy virtual nic created during system installation,

    the PBS "xHRM bridgeprereq eno1:virbr0" will exit with the following logic:

    161     if brctl showstp "$BNAME" > /dev/null; then
    162         echo "$BNAME"
    163         exit 0
    164     fi
    

    not sure when virbr0-nic is created, seems related to the installation of the following packages in the kvm.rhels7.pkglist:

    libvirt
    screen
    qemu-kvm
    
     
    • XiaoPeng Wang

      XiaoPeng Wang - 2015-07-27

      What if we use the specific bridge name like xcatbr0 instead of virbr0?

       
  • yangsong

    yangsong - 2015-07-28

    in a kvm node provisioned with osimage rhels7.1-x86_64-install-kvm, virbr0 is a default bridge created by the system during installation, we need to use some names other than "virbr0" when creating a bridge, for example, "virbr1".

    Junxia has verified that

    postbootscripts=otherpkgs,xHRM bridgeprereq eno1:virbr1 
    

    works well

     

    Last edit: yangsong 2015-07-28
    • XiaoPeng Wang

      XiaoPeng Wang - 2015-07-29

      Does it work when run xHRM in postscripts instead of postbootscripts?

       
MongoDB Logo MongoDB