Bug 1571113

Summary: Didn't use the temporary password to login to HE-VM by "hosted-engine --add-console-password"
Product: [oVirt] ovirt-hosted-engine-setup Reporter: Yihui Zhao <yzhao>
Component: GeneralAssignee: Simone Tiraboschi <stirabos>
Status: CLOSED CURRENTRELEASE QA Contact: Nikolai Sednev <nsednev>
Severity: high Docs Contact:
Priority: high    
Version: 2.2.18CC: bugs, cshao, huzhao, jiaczhan, michal.skrivanek, phbailey, qiyuan, rbarry, sbonazzo, stirabos, weiwang, yaniwang, ycui, yturgema
Target Milestone: ovirt-4.2.3Keywords: Regression, Triaged
Target Release: ---Flags: rule-engine: ovirt-4.2+
rule-engine: blocker+
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: ovirt-hosted-engine-setup-2.2.20-1.el7ev Doc Type: Bug Fix
Doc Text:
Hosted-engine VM deployed with the ansible flow are configured for SPICE+VNC graphical consoles. hosted-engine --add-console-password should still work for the VNC console.
Story Points: ---
Clone Of: Environment:
Last Closed: 2018-05-10 06:29:53 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: Integration RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1458709    
Attachments:
Description Flags
terminal_set_temporary_passwd
none
engine_side_temporary_passwd none

Description Yihui Zhao 2018-04-24 06:51:22 UTC
Created attachment 1425811 [details]
terminal_set_temporary_passwd

Description of problem:
While deploying HostedEngine successfully, set a temporary password by "hosted-engine --add-console-password --password="123456", 

Use "vncviewer 10.73.73.106:5902" to login to HE-VM, but failed.


Version-Release number of selected component (if applicable):
redhat-virtualization-host-4.2.2.1-0.20180420.0
cockpit-160-3.el7.x86_64
cockpit-bridge-160-3.el7.x86_64
cockpit-ws-160-3.el7.x86_64
cockpit-storaged-160-3.el7.noarch
cockpit-ovirt-dashboard-0.11.22-1.el7ev.noarch
cockpit-dashboard-160-3.el7.x86_64
cockpit-system-160-3.el7.noarch
ovirt-hosted-engine-setup-2.2.18-1.el7ev.noarch
ovirt-hosted-engine-ha-2.2.10-1.el7ev.noarch
rhvm-appliance-4.2-20180420.0.el7.noarch


How reproducible:
100%


Steps to Reproduce:
1. Clean install redhat-virtualization-host-4.2.2.1-0.20180420.0 with ks
2. Deploy HE via cockpit
3. Use "hosted-engine --add-console-password " to set a temporary password
4. Login to the HE-VM by the temporary password

Actual results:
After step4, login to HE-VM failed


Expected results:
After step4, login to HE-VM successfully


Additional info:

Comment 1 Yihui Zhao 2018-04-24 06:52:10 UTC
Created attachment 1425813 [details]
engine_side_temporary_passwd

Comment 2 Simone Tiraboschi 2018-04-24 10:25:07 UTC
Not sure if relevant but I see 10.73.73.106 in the terminal screenshot and 10.73.73.105 in the engine one.

Should the point to the same env?

Comment 3 Yihui Zhao 2018-04-24 11:03:11 UTC
(In reply to Simone Tiraboschi from comment #2)
> Not sure if relevant but I see 10.73.73.106 in the terminal screenshot and
> 10.73.73.105 in the engine one.
> 
> Should the point to the same env?

Yes , it is the same env.

Comment 4 Simone Tiraboschi 2018-04-26 17:42:56 UTC
Michal,

'hosted-engine --add-console-password' is simply calling 

    cli.VM.setTicket(
        vmID=args.vmid,
        password=args.password,
        ttl=args.ttl,
        existingConnAction='keep',
        params={},
    )

https://github.com/oVirt/ovirt-hosted-engine-setup/blob/master/src/ovirt_hosted_engine_setup/vdsm_helper.py#L87

and from the logs it run successfully but then the user cannot login with that password directly pointing a VNC client to host address on the right port.

We didn't change that code in recent months/years.

The only relevant change is that we recently switched from VNC to Spice+VNC, Could it affect our setTicket call?

Comment 5 Michal Skrivanek 2018-04-26 18:03:20 UTC
Yes. See https://github.com/oVirt/vdsm/blob/0cfab8ce3730ee89ed5b9dd9320a501d4254c0a0/lib/vdsm/virt/vm.py#L4977

You can use updateDevice instead if you need to set it on arbitrary console/protocol

Comment 6 Yihui Zhao 2018-05-03 03:14:41 UTC
Works for me with these component:

ovirt-hosted-engine-ha-2.2.11-1.el7ev.noarch
ovirt-hosted-engine-setup-2.2.20-1.el7ev.noarch
rhvm-appliance-4.2-20180427.0.el7.noarch
cockpit-dashboard-165-3.el7.x86_64
cockpit-bridge-165-3.el7.x86_64
cockpit-165-3.el7.x86_64
cockpit-storaged-165-3.el7.noarch
cockpit-ws-165-3.el7.x86_64
cockpit-ovirt-dashboard-0.11.23-1.el7ev.noarch
cockpit-system-165-3.el7.noarch
rhvh-4.2.3.0-0.20180430.0+1
ansible-2.5.2-1.el7ae.noarch


I will move to verify if the bug become to ON_QA.

Comment 8 Nikolai Sednev 2018-05-03 14:39:20 UTC
Moving to verified forth to https://bugzilla.redhat.com/show_bug.cgi?id=1571113#c6.

Comment 9 Sandro Bonazzola 2018-05-10 06:29:53 UTC
This bugzilla is included in oVirt 4.2.3 release, published on May 4th 2018.

Since the problem described in this bug report should be
resolved in oVirt 4.2.3 release, it has been closed with a resolution of CURRENT RELEASE.

If the solution does not work for you, please open a new bug report.