Bug 1144334

Summary: [RFE] refactor VM startup code using VDSM API and don't try to set ticket until VM is up
Product: [Retired] oVirt Reporter: Sandro Bonazzola <sbonazzo>
Component: ovirt-hosted-engine-setupAssignee: Sandro Bonazzola <sbonazzo>
Status: CLOSED CURRENTRELEASE QA Contact: Nikolai Sednev <nsednev>
Severity: low Docs Contact:
Priority: high    
Version: 3.5CC: bugs, didi, ecohen, gklein, iheim, istein, lsurette, lveyde, rbalakri, sbonazzo, s.kieske, stirabos, yeylon
Target Milestone: ---Keywords: Improvement, Triaged
Target Release: 3.6.0   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard: integration
Fixed In Version: Doc Type: Enhancement
Doc Text:
Thanks to the adoption of vdscli API it is now possible to have more control on the VM startup process and set the ticket only when the VM is started and ready to accept it.
Story Points: ---
Clone Of: Environment:
Last Closed: 2015-11-04 13:56:13 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1234915    

Description Sandro Bonazzola 2014-09-19 09:05:02 UTC
Lot of bugs opened on hosted-engine setup report as error cannot set VM ticket.
This happens because the success of setVMTicket is used for determining when the VM is ready to accept VNC / Spice connection.
This sadly cause the vdsm log to show several setVMTicket errors misleading people from the original issue causing the VM failure.
With current code using vdsClient inside a mixin it's really hard to get feedback from vdsm daemon about the status of the VM creation.
Code should be refactored for using API and ensure the VM is up before trying to set ticket and a better error message should be provided getting the failure reason from VDSM daemon.

Comment 1 Itamar Heim 2014-09-21 11:17:03 UTC
you don't need to wait for "up" status.
up means either guest agent replied via the serial console, or 2 minutes passed (iirc).
powering up|up is probably good enough for you.

Comment 2 Sandro Bonazzola 2015-02-20 11:08:16 UTC
Automated message: can you please update doctext or set it as not required?

Comment 3 Nikolai Sednev 2015-05-31 18:26:12 UTC
Hi Sandro,
Please provide exact steps for reproduction.

Comment 4 Sandro Bonazzola 2015-06-04 07:51:37 UTC
Just start deploying Hosted Engine and once VM is up and you can connect to it using remote-viewer check vdsm logs for cannot set VM ticket errors.
If you see them, the fix is not working as expected.

Comment 5 Nikolai Sednev 2015-06-04 08:53:28 UTC
Works for me on these components:
vdsm-4.17.0-822.git9b11a18.el7.noarch
qemu-kvm-common-ev-2.1.2-23.el7_1.3.1.x86_64
ovirt-release-master-001-0.8.master.noarch
ovirt-engine-sdk-python-3.6.0.0-0.13.20150515.gitdd15fbf.el7.centos.noarch
qemu-kvm-ev-2.1.2-23.el7_1.3.1.x86_64
ovirt-hosted-engine-setup-1.3.0-0.0.master.20150518075146.gitdd9741f.el7.noarch
mom-0.4.4-0.0.master.20150515133332.git2d32797.el7.noarch
qemu-kvm-tools-ev-2.1.2-23.el7_1.3.1.x86_64
ovirt-host-deploy-1.4.0-0.0.master.20150505205623.giteabc23b.el7.noarch
ovirt-hosted-engine-ha-1.3.0-0.0.master.20150424113553.20150424113551.git7c14f4c.el7.noarch
sanlock-3.2.2-2.el7.x86_64

No ticket VM related errors found.
Used HE deployment on RHEL7.1 host with RHEL6.6 engine VM OS.

Comment 6 Sandro Bonazzola 2015-11-04 13:56:13 UTC
oVirt 3.6.0 has been released on November 4th, 2015 and should fix this issue.
If problems still persist, please open a new BZ and reference this one.