Bug 1200469

Summary: [RFE] add support for hosted-engine deployment on additional hosts
Product: [oVirt] ovirt-host-deploy Reporter: Sandro Bonazzola <sbonazzo>
Component: Plugins.Hosted-EngineAssignee: Sandro Bonazzola <sbonazzo>
Status: CLOSED CURRENTRELEASE QA Contact: Nikolai Sednev <nsednev>
Severity: low Docs Contact:
Priority: high    
Version: ---CC: alukiano, bazulay, bugs, daniel.helgenberger, dfediuck, dougsland, iheim, istein, juwu, lsurette, mavital, rgolan, sbonazzo, s.kieske, srevivo, ykaul, ylavi
Target Milestone: ovirt-4.0.0-rcKeywords: FutureFeature, Triaged
Target Release: 1.5.0Flags: rule-engine: ovirt-4.0.0+
nsednev: testing_plan_complete+
rule-engine: planning_ack+
dfediuck: devel_ack+
mavital: testing_ack+
Hardware: Unspecified   
OS: Unspecified   
URL: http://www.ovirt.org/develop/release-management/features/hosted-engine-add-hosts-with-web-ui/
Whiteboard:
Fixed In Version: ovirt 4.0.0 alpha1 Doc Type: Enhancement
Doc Text:
Feature: support for hosted-engine deployment on additional hosts has been added to ovirt-host-deploy Reason: to ease hosted-engine additional node deployment Result: ovirt-engine can now use ovirt-host-deploy for deploying hosted engine additional nodes
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-08-01 12:29:54 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: 1202852, 1205792, 1344900, 1349532, 1351109, 1352286    
Bug Blocks: 1167262, 1255230    

Description Sandro Bonazzola 2015-03-10 15:55:46 UTC
Add plugins for allowing the deployment of additional hosts for Hosted Engine.

- it needs to install ovirt-hosted-engine-setup
- it needs to configure ovirt-ha-agent and ovirt-ha-broker daemons
- it needs to start ovirt-ha-agent and ovirt-ha-broker daemons

It will receive needed config parameters from ovirt-engine

Comment 1 Doron Fediuck 2015-04-07 13:45:52 UTC
*** Bug 1156163 has been marked as a duplicate of this bug. ***

Comment 2 Doron Fediuck 2015-04-19 13:48:27 UTC
(In reply to Sandro Bonazzola from comment #0)
> Add plugins for allowing the deployment of additional hosts for Hosted
> Engine.
> 
> - it needs to install ovirt-hosted-engine-setup
> - it needs to configure ovirt-ha-agent and ovirt-ha-broker daemons
> - it needs to start ovirt-ha-agent and ovirt-ha-broker daemons
> 
> It will receive needed config parameters from ovirt-engine

One more related thing is the need to allow 'un-deploy' of an HE host,
which means clearing the configurations (or part of it) of the hosted
engine environment.

Comment 3 Doron Fediuck 2015-04-19 13:49:24 UTC
*** Bug 1136009 has been marked as a duplicate of this bug. ***

Comment 4 Red Hat Bugzilla Rules Engine 2015-10-19 10:59:51 UTC
Target release should be placed once a package build is known to fix a issue. Since this bug is not modified, the target version has been reset. Please use target milestone to plan a fix for a oVirt release.

Comment 5 Doron Fediuck 2015-11-01 16:33:10 UTC
Sandro,
is this ready?

Comment 6 Sandro Bonazzola 2015-11-11 15:24:42 UTC
The patch has been merged.

Comment 7 Nikolai Sednev 2016-01-13 07:50:51 UTC
Any chance also deleting hosted engine hosts via the engine to be supported by this RFE? For example if host #3 added via the engine, then if customer requires deletion of hosted engine host #3, it will be deleted as well by the HE, and will be not shown via the "hosted-engine --vm-status".

Comment 8 Sandro Bonazzola 2016-01-14 12:55:59 UTC
Yes, also disabling hosted engine is included in the RFE.

Comment 9 Nikolai Sednev 2016-04-10 10:44:21 UTC
Hi Sandro,
Can I get the documentation for the RFE please? I see the RFE's link is broken.

I'd like to ask for if the https://bugzilla.redhat.com/show_bug.cgi?id=1001181 is related to this RFE? From what I understand, the host that was once added as hosted-engine-host and then customer decided to remove it from being hosted-engine-host and turn it in to regular host, then the clean-up script from 1001181, should do the trick and remove any HE related components from host and clean-up the metadata about the host on storage.

Comment 10 Nikolai Sednev 2016-04-14 13:24:13 UTC
Engine is missing the functionality on 4.0.0-0.0.master.20160404161620.git4ffd5a4.el7.centos

Comment 11 Sandro Bonazzola 2016-04-14 13:25:44 UTC
Moving back on modified because the engine side of the feature is not yet ready and make it hard to verify without the web ui.
Bug #1001181 require to do much more than just undeploy the host.

Comment 12 Nikolai Sednev 2016-04-18 08:49:44 UTC
Hi Sandro,
Please supply the documentation for the RFE, as it's currently is missing or only partial.

Comment 13 Nikolai Sednev 2016-04-27 07:10:34 UTC
Would be REST API support provided for the feature?

Comment 14 Sandro Bonazzola 2016-04-28 11:22:55 UTC
Note that this bug is on ovirt-host-deploy project so it has no rest-api and no web ui. It's just the program which is executed on the host when it's added to the engine management.

A test for it alone can be done, I updated http://www.ovirt.org/develop/release-management/features/hosted-engine-add-hosts-with-web-ui/ with relevant info merging https://github.com/oVirt/ovirt-site/pull/197

Testing using the Web UI will be available once bug #1167262 will be addressed.
Rest-API should be provided along with the Web UI.

Docs about the procedure using the web ui will be available once bug #1255230 will be addressed

Comment 20 Nikolai Sednev 2016-07-25 09:31:49 UTC
Works for me on both RHEVH NGN 4.0.2 and RHEL7.2 hosts and 4.0.2 engine.
Tested on hosted engine running over couple of RHEVH NGN and over couple of RHEL7.2 and in mixed environment over RHEL7.2 and RHEVH NGN.

Host1:
rhevm-appliance-20160714.0-1.el7ev.noarch
rhev-release-4.0.2-1-001.noarch
ovirt-imageio-daemon-0.3.0-0.el7ev.noarch
libvirt-client-1.2.17-13.el7_2.5.x86_64
ovirt-vmconsole-1.0.4-1.el7ev.noarch
ovirt-hosted-engine-setup-2.0.1.1-1.el7ev.noarch
vdsm-4.18.8-1.el7ev.x86_64
qemu-kvm-rhev-2.3.0-31.el7_2.19.x86_64
ovirt-host-deploy-1.5.1-1.el7ev.noarch
ovirt-hosted-engine-ha-2.0.1-1.el7ev.noarch
ovirt-engine-sdk-python-3.6.7.0-1.el7ev.noarch
mom-0.5.5-1.el7ev.noarch
ovirt-setup-lib-1.0.2-1.el7ev.noarch
ovirt-imageio-common-0.3.0-0.el7ev.noarch
ovirt-vmconsole-host-1.0.4-1.el7ev.noarch
sanlock-3.2.4-3.el7_2.x86_64
Linux version 3.10.0-327.30.1.el7.x86_64 (mockbuild.eng.bos.redhat.com) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-4) (GCC) ) #1 SMP Wed Jul 13 22:09:46 EDT 2016
Linux 3.10.0-327.30.1.el7.x86_64 #1 SMP Wed Jul 13 22:09:46 EDT 2016 x86_64 x86_64 x86_64 GNU/Linux
Red Hat Enterprise Linux Server release 7.2 (Maipo)

Host2:
sanlock-3.2.4-2.el7_2.x86_64
ovirt-hosted-engine-ha-2.0.1-1.el7ev.noarch
ovirt-imageio-daemon-0.3.0-0.el7ev.noarch
ovirt-host-deploy-1.5.1-1.el7ev.noarch
ovirt-engine-sdk-python-3.6.7.0-1.el7ev.noarch
qemu-kvm-rhev-2.3.0-31.el7_2.16.x86_64
mom-0.5.5-1.el7ev.noarch
ovirt-setup-lib-1.0.2-1.el7ev.noarch
ovirt-vmconsole-host-1.0.4-1.el7ev.noarch
libvirt-client-1.2.17-13.el7_2.5.x86_64
vdsm-4.18.6-1.el7ev.x86_64
ovirt-hosted-engine-setup-2.0.1-1.el7ev.noarch
ovirt-imageio-common-0.3.0-0.el7ev.noarch
ovirt-vmconsole-1.0.4-1.el7ev.noarch
Linux version 3.10.0-327.22.2.el7.x86_64 (mockbuild.eng.bos.redhat.com) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-4) (GCC) ) #1 SMP Thu Jun 9 10:09:10 EDT 2016
Linux 3.10.0-327.22.2.el7.x86_64 #1 SMP Thu Jun 9 10:09:10 EDT 2016 x86_64 x86_64 x86_64 GNU/Linux
Red Hat Enterprise Linux release 7.2

Engine:
ovirt-engine-websocket-proxy-4.0.2-0.1.rc.el7ev.noarch
ovirt-engine-extensions-api-impl-4.0.2-0.1.rc.el7ev.noarch
ovirt-engine-userportal-4.0.2-0.1.rc.el7ev.noarch
ovirt-iso-uploader-4.0.0-1.el7ev.noarch
ovirt-engine-dbscripts-4.0.2-0.1.rc.el7ev.noarch
ovirt-vmconsole-proxy-1.0.4-1.el7ev.noarch
ovirt-engine-setup-plugin-ovirt-engine-4.0.2-0.1.rc.el7ev.noarch
ovirt-engine-vmconsole-proxy-helper-4.0.2-0.1.rc.el7ev.noarch
ovirt-engine-webadmin-portal-debuginfo-4.0.2-0.1.rc.el7ev.noarch
ovirt-engine-tools-4.0.2-0.1.rc.el7ev.noarch
ovirt-engine-webadmin-portal-4.0.2-0.1.rc.el7ev.noarch
ovirt-engine-cli-3.6.7.0-1.el7ev.noarch
ovirt-vmconsole-1.0.4-1.el7ev.noarch
ovirt-setup-lib-1.0.2-1.el7ev.noarch
ovirt-engine-setup-base-4.0.2-0.1.rc.el7ev.noarch
ovirt-engine-setup-plugin-vmconsole-proxy-helper-4.0.2-0.1.rc.el7ev.noarch
ovirt-engine-setup-4.0.2-0.1.rc.el7ev.noarch
ovirt-engine-tools-backup-4.0.2-0.1.rc.el7ev.noarch
ovirt-engine-dashboard-1.0.1-0.el7ev.x86_64
ovirt-engine-4.0.2-0.1.rc.el7ev.noarch
ovirt-engine-sdk-python-3.6.7.0-1.el7ev.noarch
ovirt-log-collector-4.0.0-1.el7ev.noarch
ovirt-engine-lib-4.0.2-0.1.rc.el7ev.noarch
ovirt-host-deploy-java-1.5.1-1.el7ev.noarch
ovirt-engine-dwh-setup-4.0.1-1.el7ev.noarch
ovirt-engine-setup-plugin-ovirt-engine-common-4.0.2-0.1.rc.el7ev.noarch
ovirt-engine-userportal-debuginfo-4.0.2-0.1.rc.el7ev.noarch
ovirt-engine-backend-4.0.2-0.1.rc.el7ev.noarch
ovirt-engine-dwh-4.0.1-1.el7ev.noarch
ovirt-engine-setup-plugin-websocket-proxy-4.0.2-0.1.rc.el7ev.noarch
python-ovirt-engine-sdk4-4.0.0-0.5.a5.el7ev.x86_64
ovirt-engine-restapi-4.0.2-0.1.rc.el7ev.noarch
ovirt-image-uploader-4.0.0-1.el7ev.noarch
ovirt-host-deploy-1.5.1-1.el7ev.noarch
ovirt-engine-extension-aaa-jdbc-1.1.0-1.el7ev.noarch
rhev-guest-tools-iso-4.0-4.el7ev.noarch
rhevm-4.0.2-0.1.rc.el7ev.noarch
rhev-release-4.0.2-1-001.noarch
rhevm-doc-4.0.0-3.el7ev.noarch
rhevm-spice-client-x86-msi-4.0-2.el7ev.noarch
rhevm-branding-rhev-4.0.0-3.el7ev.noarch
rhevm-spice-client-x64-msi-4.0-2.el7ev.noarch
rhevm-guest-agent-common-1.0.12-2.el7ev.noarch
rhevm-dependencies-4.0.0-1.el7ev.noarch
rhevm-setup-plugins-4.0.0.1-1.el7ev.noarch
rhev-release-4.0.1-2-001.noarch
Linux version 3.10.0-327.22.2.el7.x86_64 (mockbuild.eng.bos.redhat.com) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-4) (GCC) ) #1 SMP Thu Jun 9 10:09:10 EDT 2016
Linux 3.10.0-327.22.2.el7.x86_64 #1 SMP Thu Jun 9 10:09:10 EDT 2016 x86_64 x86_64 x86_64 GNU/Linux
Red Hat Enterprise Linux Server release 7.2 (Maipo)

I've tested also using REST-API, addition of a new host works fine.
The only issue which I saw has working work-around and it's documented in https://bugzilla.redhat.com/show_bug.cgi?id=1353600
It is about redeployment of previously removed host, so if we're about adding new clean host, then it would not happen.
As for specifically 1353600, the work around would be to enter via CLI to the host and simply cast "hosted-engine --set-maintenance --mode=none" on it, then it'll change it's HA=3400 score.

Comment 21 Nikolai Sednev 2016-07-25 09:34:24 UTC
NGN RHEVHs were installed on hosts using virtual media and RHVH-7.2-20160718.1-RHVH-x86_64-dvd1.iso.