[virt-tools-list] virt-install doesn't reboot rhel6/7 VMs after install

Cole Robinson crobinso at redhat.com
Fri Aug 15 14:32:04 UTC 2014


Sorry for the late response. I think the issue is that virt-viewer is failing
to launch, probably because this is done on a TTY or over SSH.

The default virt-install invocation kind of depends on virt-viewer running to
detect when the VM starts up and shuts down. However you can force it to not
work that way with --noautoconsole (don't launch virt-viewer) and --wait -1
(wait indefinitely for the VM to shutdown, then restart it)

- Cole

On 08/06/2014 10:00 PM, Digimer wrote:
> On 29/07/14 11:01 AM, Digimer wrote:
>> On 29/07/14 10:36 AM, Cole Robinson wrote:
>>> On 07/28/2014 12:55 PM, Digimer wrote:
>>>> On 28/07/14 12:02 PM, Cole Robinson wrote:
>>>>> On 07/28/2014 11:37 AM, Digimer wrote:
>>>>>> Hi all,
>>>>>>
>>>>>>     I've noticed that, for reasons I am not entirely sure of
>>>>>> (though may exist
>>>>>> and be valid), newly provisioned EL6 and EL7 VMs stay off after
>>>>>> pressing
>>>>>> "reboot" at the end of the OS install (--os-variant rhel*). I've
>>>>>> seen this
>>>>>> behaviour on RHEL/CentOS 6.x and various recent Fedoras. Note that
>>>>>> when I
>>>>>> install other OSes, the VM reboots properly.
>>>>>>
>>>>>>     Why would this be? Is this designed behaviour? Installing the
>>>>>> same on
>>>>>> bare-iron nodes reboots properly.
>>>>>>
>>>>>
>>>>> The VM should be restarting... can you show an example command line
>>>>> and full
>>>>> virt-install --debug output? Make sure you aren't passing --noreboot
>>>>> or --wait
>>>>> timeout that is expiring.
>>>>>
>>>>> The way it's supposed to work is that the VM fully shuts down,
>>>>> virt-install
>>>>> changes the VM configuration to boot off the now installed disk, and
>>>>> restarts
>>>>> the VM. It does this by telling VM to shutdown rather than perform a
>>>>> soft
>>>>> reboot with <on_reboot>destroy</on_reboot> in the VM XML. It does
>>>>> this for all
>>>>> VM installs regardless of the OS.
>>>>>
>>>>> When the VM shuts down after install, virt-install should update the
>>>>> config,
>>>>> restart the VM, and exit. But clearly that's failing here
>>>>>
>>>>> - Cole
>>>>
>>>> Here is an example install which showed the problem. It is very
>>>> similar to how
>>>> I do all my EL6/EL7 installs (save for sometimes installing from
>>>> PXE/http):
>>>>
>>>> virt-install --connect qemu:///system \
>>>>    --name an-a03n01 \
>>>>    --ram 2048 \
>>>>    --arch x86_64 \
>>>>    --vcpus 2 \
>>>>    --cdrom /mnt/usb/VMs/files/CentOS-7.0-1406-x86_64-Everything.iso \
>>>>    --os-variant rhel7 \
>>>>    --network bridge=virbr0,model=virtio \
>>>>    --network bridge=virbr0,model=virtio \
>>>>    --network bridge=virbr0,model=virtio \
>>>>    --network bridge=virbr0,model=virtio \
>>>>    --network bridge=virbr0,model=virtio \
>>>>    --network bridge=virbr0,model=virtio \
>>>>    --disk path=/mnt/usb/VMs/images/an-a03n01.img,bus=virtio,size=40 \
>>>>    --graphics vnc
>>>>
>>>
>>> I just tried a centos 7 install from cdrom with a nearly identical
>>> command
>>> line using stock f20 host, and virt-install rebooted the guest
>>> correctly at
>>> the end of the VM install. So you'll need to provide the virt-install
>>> --debug
>>> output of a failing invocation so I can see what's going wrong
>>>
>>> Thanks,
>>> Cole
>>
>> OK, I will try to get that to you later today or tomorrow. Thanks!
>>
>> digimer
> 
> Hi,
> 
>   Sorry for the lag, got inundated with work.
> 
>   I ran a fresh install today on a CentOS 6.5 host, installing CentOS 6.5,
> using '--debug' and, as expected, it did not reboot. I manually booted it
> after about a minute of waiting.
> 
> Provision script:
> ======
> lvremove -f /dev/c01n01_vg0/vm18-striker_0
> lvcreate -L 35GiB -n vm18-striker_0 c01n01_vg0
> virt-install --connect qemu:///system \
>   --name vm18-striker \
>   --ram 2048 \
>   --arch x86_64 \
>   --vcpus 2 \
>   --cdrom '/shared/files/CentOS-6.5-x86_64-bin-DVD1.iso' \
>   --os-variant rhel6 \
>   --video cirrus \
>   --network bridge=vbr2,model=virtio \
>   --disk path=/dev/c01n01_vg0/vm18-striker_0,bus=virtio \
>   --debug \
>   --graphics vnc > /var/log/an-install_vm18-striker.log &
> ======
> 
> STDOUT
> ======
>   Configuration setting "activation/thin_check_executable" unknown.
>   Configuration setting "activation/thin_check_options" unknown.
>   Logical volume "vm18-striker_0" successfully removed
>   Configuration setting "activation/thin_check_executable" unknown.
>   Configuration setting "activation/thin_check_options" unknown.
>   Logical volume "vm18-striker_0" created
> an-c01n01:/shared/provision# Wed, 06 Aug 2014 21:38:04 DEBUG    Launched with
> command line:
> /usr/sbin/virt-install --connect qemu:///system --name vm18-striker --ram 2048
> --arch x86_64 --vcpus 2 --cdrom /shared/files/CentOS-6.5-x86_64-bin-DVD1.iso
> --os-variant rhel6 --video cirrus --network bridge=vbr2,model=virtio --disk
> path=/dev/c01n01_vg0/vm18-striker_0,bus=virtio --debug --graphics vnc
> Wed, 06 Aug 2014 21:38:04 DEBUG    Requesting libvirt URI qemu:///system
> Wed, 06 Aug 2014 21:38:04 DEBUG    Received libvirt URI qemu:///system
> Wed, 06 Aug 2014 21:38:04 DEBUG    Requesting virt method 'default', hv type
> 'default'.
> Wed, 06 Aug 2014 21:38:04 DEBUG    Received virt method 'hvm'
> Wed, 06 Aug 2014 21:38:04 DEBUG    Hypervisor name is 'kvm'
> Wed, 06 Aug 2014 21:38:04 DEBUG    Setting os type to 'linux' for variant 'rhel6'
> Wed, 06 Aug 2014 21:38:04 DEBUG    DistroInstaller location is a local
> file/path: /shared/files/CentOS-6.5-x86_64-bin-DVD1.iso
> Wed, 06 Aug 2014 21:38:04 DEBUG    Guest.has_install_phase: True
> Wed, 06 Aug 2014 21:38:04 DEBUG    Generated install XML:
> <domain type='kvm'>
>   <name>vm18-striker</name>
>   <uuid>4ad074a8-a4bf-7ffe-4d8b-6c009771ce04</uuid>
>   <memory>2097152</memory>
>   <currentMemory>2097152</currentMemory>
>   <vcpu>2</vcpu>
>   <os>
>     <type arch='x86_64'>hvm</type>
>     <boot dev='cdrom'/>
>     <boot dev='hd'/>
>   </os>
>   <features>
>     <acpi/><apic/><pae/>
>   </features>
>   <clock offset="utc"/>
>   <on_poweroff>destroy</on_poweroff>
>   <on_reboot>destroy</on_reboot>
>   <on_crash>destroy</on_crash>
>   <devices>
>     <emulator>/usr/libexec/qemu-kvm</emulator>
>     <disk type='block' device='disk'>
>       <driver name='qemu' cache='none' io='native'/>
>       <source dev='/dev/c01n01_vg0/vm18-striker_0'/>
>       <target dev='vda' bus='virtio'/>
>     </disk>
>     <disk type='file' device='cdrom'>
>       <driver name='qemu'/>
>       <source file='/shared/files/CentOS-6.5-x86_64-bin-DVD1.iso'/>
>       <target dev='hdc' bus='ide'/>
>       <readonly/>
>     </disk>
>     <interface type='bridge'>
>       <source bridge='vbr2'/>
>       <mac address='52:54:00:e2:40:5c'/>
>       <model type='virtio'/>
>     </interface>
>     <input type='tablet' bus='usb'/>
>     <graphics type='vnc' port='-1'/>
>     <console type='pty'/>
>     <video>
>       <model type='cirrus'/>
>     </video>
>   </devices>
> </domain>
> 
> Wed, 06 Aug 2014 21:38:04 DEBUG    Generated boot XML:
> <domain type='kvm'>
>   <name>vm18-striker</name>
>   <uuid>4ad074a8-a4bf-7ffe-4d8b-6c009771ce04</uuid>
>   <memory>2097152</memory>
>   <currentMemory>2097152</currentMemory>
>   <vcpu>2</vcpu>
>   <os>
>     <type arch='x86_64'>hvm</type>
>     <boot dev='hd'/>
>   </os>
>   <features>
>     <acpi/><apic/><pae/>
>   </features>
>   <clock offset="utc"/>
>   <on_poweroff>destroy</on_poweroff>
>   <on_reboot>restart</on_reboot>
>   <on_crash>restart</on_crash>
>   <devices>
>     <emulator>/usr/libexec/qemu-kvm</emulator>
>     <disk type='block' device='disk'>
>       <driver name='qemu' cache='none' io='native'/>
>       <source dev='/dev/c01n01_vg0/vm18-striker_0'/>
>       <target dev='vda' bus='virtio'/>
>     </disk>
>     <disk type='block' device='cdrom'>
>       <target dev='hdc' bus='ide'/>
>       <readonly/>
>     </disk>
>     <interface type='bridge'>
>       <source bridge='vbr2'/>
>       <mac address='52:54:00:e2:40:5c'/>
>       <model type='virtio'/>
>     </interface>
>     <input type='tablet' bus='usb'/>
>     <graphics type='vnc' port='-1'/>
>     <console type='pty'/>
>     <video>
>       <model type='cirrus'/>
>     </video>
>   </devices>
> </domain>
> 
> Wed, 06 Aug 2014 21:38:05 DEBUG    Started guest, connecting to console if
> requested
> Wed, 06 Aug 2014 21:38:05 DEBUG    Launching virt-viewer for graphics type 'vnc'
> Wed, 06 Aug 2014 21:38:05 DEBUG    Running: /usr/bin/virt-viewer --connect
> qemu:///system --wait 5
> Wed, 06 Aug 2014 21:38:05 DEBUG    XML fetched from libvirt object:
> <domain type='kvm' id='5'>
>   <name>vm18-striker</name>
>   <uuid>4ad074a8-a4bf-7ffe-4d8b-6c009771ce04</uuid>
>   <memory unit='KiB'>2097152</memory>
>   <currentMemory unit='KiB'>2097152</currentMemory>
>   <vcpu placement='static'>2</vcpu>
>   <os>
>     <type arch='x86_64' machine='rhel6.5.0'>hvm</type>
>     <boot dev='cdrom'/>
>     <boot dev='hd'/>
>   </os>
>   <features>
>     <acpi/>
>     <apic/>
>     <pae/>
>   </features>
>   <clock offset='utc'/>
>   <on_poweroff>destroy</on_poweroff>
>   <on_reboot>destroy</on_reboot>
>   <on_crash>destroy</on_crash>
>   <devices>
>     <emulator>/usr/libexec/qemu-kvm</emulator>
>     <disk type='block' device='disk'>
>       <driver name='qemu' type='raw' cache='none' io='native'/>
>       <source dev='/dev/c01n01_vg0/vm18-striker_0'/>
>       <target dev='vda' bus='virtio'/>
>       <alias name='virtio-disk0'/>
>       <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/>
>     </disk>
>     <disk type='file' device='cdrom'>
>       <driver name='qemu' type='raw'/>
>       <source file='/shared/files/CentOS-6.5-x86_64-bin-DVD1.iso'/>
>       <target dev='hdc' bus='ide'/>
>       <readonly/>
>       <alias name='ide0-1-0'/>
>       <address type='drive' controller='0' bus='1' target='0' unit='0'/>
>     </disk>
>     <controller type='usb' index='0'>
>       <alias name='usb0'/>
>       <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x2'/>
>     </controller>
>     <controller type='ide' index='0'>
>       <alias name='ide0'/>
>       <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x1'/>
>     </controller>
>     <interface type='bridge'>
>       <mac address='52:54:00:e2:40:5c'/>
>       <source bridge='vbr2'/>
>       <target dev='vnet3'/>
>       <model type='virtio'/>
>       <alias name='net0'/>
>       <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
>     </interface>
>     <serial type='pty'>
>       <source path='/dev/pts/0'/>
>       <target port='0'/>
>       <alias name='serial0'/>
>     </serial>
>     <console type='pty' tty='/dev/pts/0'>
>       <source path='/dev/pts/0'/>
>       <target type='serial' port='0'/>
>       <alias name='serial0'/>
>     </console>
>     <input type='tablet' bus='usb'>
>       <alias name='input0'/>
>     </input>
>     <input type='mouse' bus='ps2'/>
>     <graphics type='vnc' port='5903' autoport='yes' listen='127.0.0.1'>
>       <listen type='address' address='127.0.0.1'/>
>     </graphics>
>     <video>
>       <model type='cirrus' vram='9216' heads='1'/>
>       <alias name='video0'/>
>       <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/>
>     </video>
>     <memballoon model='virtio'>
>       <alias name='balloon0'/>
>       <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0'/>
>     </memballoon>
>   </devices>
>   <seclabel type='none'/>
> </domain>
> 
> Cannot open display:
> Run 'virt-viewer --help' to see a full list of available command line options
> Wed, 06 Aug 2014 21:38:08 DEBUG    Domain state after install: 1
> ======
> 
> Contents of /var/log/an-install_vm18-striker.log
> ======
> Starting install...
> Creating domain...                                       |    0 B 00:00
> Domain installation still in progress. You can reconnect to
> the console to complete the installation process.
> ======
> 
> Contents of /var/log/libvirt/qemu/vm18-striker.log
> ======
> 2014-08-07 01:35:36.912+0000: starting up
> LC_ALL=C PATH=/sbin:/usr/sbin:/bin:/usr/bin QEMU_AUDIO_DRV=none
> /usr/libexec/qemu-kvm -name vm18-striker -S -M rhel6.5.0 -enable-kvm -m 2048
> -realtime mlock=off -smp 2,sockets=2,cores=1,threads=1 -uuid
> 5bc740b0-b57c-df9d-f824-6281d6076a4a -nodefconfig -nodefaults -chardev
> socket,id=charmonitor,path=/var/lib/libvirt/qemu/vm18-striker.monitor,server,nowait
> -mon chardev=charmonitor,id=monitor,mode=control -rtc base=utc -no-reboot
> -no-shutdown -device piix3-usb-uhci,id=usb,bus=pci.0,addr=0x1.0x2 -drive
> file=/dev/c01n01_vg0/vm18-striker_0,if=none,id=drive-virtio-disk0,format=raw,cache=none,aio=native
> -device
> virtio-blk-pci,scsi=off,bus=pci.0,addr=0x4,drive=drive-virtio-disk0,id=virtio-disk0,bootindex=2
> -drive
> file=/shared/files/CentOS-6.5-x86_64-bin-DVD1.iso,if=none,media=cdrom,id=drive-ide0-1-0,readonly=on,format=raw
> -device
> ide-drive,bus=ide.1,unit=0,drive=drive-ide0-1-0,id=ide0-1-0,bootindex=1
> -netdev tap,fd=25,id=hostnet0,vhost=on,vhostfd=29 -device
> virtio-net-pci,netdev=hostnet0,id=net0,mac=52:54:00:5d:6d:4f,bus=pci.0,addr=0x3 -chardev
> pty,id=charserial0 -device isa-serial,chardev=charserial0,id=serial0 -device
> usb-tablet,id=input0 -vnc 0.0.0.0:3 -vga cirrus -device
> virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x5
> char device redirected to /dev/pts/0
> qemu: terminating on signal 15 from pid 7182
> 2014-08-07 01:36:45.703+0000: shutting down
> 2014-08-07 01:38:04.719+0000: starting up
> LC_ALL=C PATH=/sbin:/usr/sbin:/bin:/usr/bin QEMU_AUDIO_DRV=none
> /usr/libexec/qemu-kvm -name vm18-striker -S -M rhel6.5.0 -enable-kvm -m 2048
> -realtime mlock=off -smp 2,sockets=2,cores=1,threads=1 -uuid
> 4ad074a8-a4bf-7ffe-4d8b-6c009771ce04 -nodefconfig -nodefaults -chardev
> socket,id=charmonitor,path=/var/lib/libvirt/qemu/vm18-striker.monitor,server,nowait
> -mon chardev=charmonitor,id=monitor,mode=control -rtc base=utc -no-reboot
> -no-shutdown -device piix3-usb-uhci,id=usb,bus=pci.0,addr=0x1.0x2 -drive
> file=/dev/c01n01_vg0/vm18-striker_0,if=none,id=drive-virtio-disk0,format=raw,cache=none,aio=native
> -device
> virtio-blk-pci,scsi=off,bus=pci.0,addr=0x4,drive=drive-virtio-disk0,id=virtio-disk0,bootindex=2
> -drive
> file=/shared/files/CentOS-6.5-x86_64-bin-DVD1.iso,if=none,media=cdrom,id=drive-ide0-1-0,readonly=on,format=raw
> -device
> ide-drive,bus=ide.1,unit=0,drive=drive-ide0-1-0,id=ide0-1-0,bootindex=1
> -netdev tap,fd=25,id=hostnet0,vhost=on,vhostfd=29 -device
> virtio-net-pci,netdev=hostnet0,id=net0,mac=52:54:00:e2:40:5c,bus=pci.0,addr=0x3 -chardev
> pty,id=charserial0 -device isa-serial,chardev=charserial0,id=serial0 -device
> usb-tablet,id=input0 -vnc 127.0.0.1:3 -vga cirrus -device
> virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x5
> char device redirected to /dev/pts/0
> qemu: terminating on signal 15 from pid 7182
> 2014-08-07 01:49:40.120+0000: shutting down
> 2014-08-07 01:51:19.649+0000: starting up
> LC_ALL=C PATH=/sbin:/usr/sbin:/bin:/usr/bin QEMU_AUDIO_DRV=none
> /usr/libexec/qemu-kvm -name vm18-striker -S -M rhel6.5.0 -enable-kvm -m 2048
> -realtime mlock=off -smp 2,sockets=2,cores=1,threads=1 -uuid
> 4ad074a8-a4bf-7ffe-4d8b-6c009771ce04 -nodefconfig -nodefaults -chardev
> socket,id=charmonitor,path=/var/lib/libvirt/qemu/vm18-striker.monitor,server,nowait
> -mon chardev=charmonitor,id=monitor,mode=control -rtc base=utc -no-shutdown
> -device piix3-usb-uhci,id=usb,bus=pci.0,addr=0x1.0x2 -drive
> file=/dev/c01n01_vg0/vm18-striker_0,if=none,id=drive-virtio-disk0,format=raw,cache=none,aio=native
> -device
> virtio-blk-pci,scsi=off,bus=pci.0,addr=0x4,drive=drive-virtio-disk0,id=virtio-disk0,bootindex=1
> -drive if=none,media=cdrom,id=drive-ide0-1-0,readonly=on,format=raw -device
> ide-drive,bus=ide.1,unit=0,drive=drive-ide0-1-0,id=ide0-1-0 -netdev
> tap,fd=22,id=hostnet0,vhost=on,vhostfd=23 -device
> virtio-net-pci,netdev=hostnet0,id=net0,mac=52:54:00:e2:40:5c,bus=pci.0,addr=0x3 -chardev
> pty,id=charserial0 -device isa-serial,chardev=charserial0,id=serial0 -device
> usb-tablet,id=input0 -vnc 127.0.0.1:3 -vga cirrus -device
> virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x5
> char device redirected to /dev/pts/0
> ======
> 
> Screenshot showing the behaviour:
> 
> http://i.imgur.com/kV0kfbA.png
> 
> Let me know if there is anything else I can do to help. I can reproduce this
> 100% of the time.
> 
> Cheers
> 




More information about the virt-tools-list mailing list