Bug 1337050

Summary: ovirt-hosted-engine-setup always refuses to deploy if NetworkManager is active, make it configurable
Product: [oVirt] ovirt-hosted-engine-setup Reporter: Simone Tiraboschi <stirabos>
Component: NetworkAssignee: Simone Tiraboschi <stirabos>
Status: CLOSED CURRENTRELEASE QA Contact: Nikolai Sednev <nsednev>
Severity: low Docs Contact:
Priority: unspecified    
Version: 1.3.6.1CC: bugs, sbonazzo, ylavi
Target Milestone: ovirt-3.6.7Keywords: Triaged
Target Release: 1.3.7.0Flags: rule-engine: ovirt-3.6.z+
ylavi: planning_ack+
sbonazzo: devel_ack+
mavital: testing_ack+
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Enhancement
Doc Text:
ovirt-hosted-engine-setup always refuses to deploy if NetworkManager is active, making it configurable via answer file
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-07-04 12:29:35 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: 1326798    
Bug Blocks: 1339216    

Description Simone Tiraboschi 2016-05-18 07:25:52 UTC
Description of problem:
In the normal flow, host-deploy will disable NetworkManager if active.
When host-deploy runs, the management bridge has already been created and the engine VM is already running so, disabling NetworkManager on the fly can be risky for the engine VM networking.
To avoid that, ovirt-hosted-engine-setup will check NetworkManager status and eventually ask the user to stop, this behavior is not configurable.
Making it configurable (default enforcing) can enable other scenarios.

Version-Release number of selected component (if applicable):
1.3.6.1

How reproducible:
100%

Steps to Reproduce:
1. activate NetworkManager
2. run hosted-engine --deploy


Actual results:
It checks for NM status and asks to disable it before proceeding.

Expected results:
The check on NetworkManager can be optionally skipped via answerfile, in that case hosted-engine-setup will also instruct host-deploy to do the same.

Additional info:
oVirt Next Generation Node uses NetworkManager

Comment 1 Nikolai Sednev 2016-05-29 11:03:28 UTC
Works for me on these components:
ovirt-vmconsole-1.0.2-2.el7ev.noarch
ovirt-hosted-engine-setup-1.3.7.0-1.el7ev.noarch
ovirt-host-deploy-1.4.1-1.el7ev.noarch
ovirt-setup-lib-1.0.1-1.el7ev.noarch
ovirt-hosted-engine-ha-1.3.5.6-1.el7ev.noarch
ovirt-vmconsole-host-1.0.2-2.el7ev.noarch
rhevm-sdk-python-3.6.5.1-1.el7ev.noarch
rhevm-appliance-20160526.0-1.el7ev.noarch
sanlock-3.2.4-2.el7_2.x86_64
qemu-kvm-rhev-2.3.0-31.el7_2.14.x86_64
vdsm-4.17.29-0.el7ev.noarch
libvirt-client-1.2.17-13.el7_2.5.x86_64
mom-0.5.3-1.el7ev.noarch
Red Hat Enterprise Linux Server release 7.2 (Maipo)
Linux version 3.10.0-327.22.1.el7.x86_64 (mockbuild.eng.bos.redhat.com) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-4) (GCC) ) #1 SMP Mon May 16 13:31:48 EDT 2016
Linux 3.10.0-327.22.1.el7.x86_64 #1 SMP Mon May 16 13:31:48 EDT 2016 x86_64 x86_64 x86_64 GNU/Linux


Here what was done:

# systemctl status NetworkManager
● NetworkManager.service - Network Manager
   Loaded: loaded (/usr/lib/systemd/system/NetworkManager.service; enabled; vendor preset: enabled)
   Active: active (running) since Sun 2016-05-29 09:08:35 IDT; 4h 44min ago
 Main PID: 779 (NetworkManager)
   CGroup: /system.slice/NetworkManager.service
           ├─779 /usr/sbin/NetworkManager --no-daemon
           └─887 /sbin/dhclient -d -q -sf /usr/libexec/nm-dhcp-helper -pf /var/run/dhclient-enp3s0f0.pid -lf /var/lib/NetworkManager/dhclient-3...

# systemctl is-enabled NetworkManager
enabled

ovirt-hosted-engine-setup-1.3.7.0-1.el7ev.noarch

# hosted-engine --deploy
[ INFO  ] Stage: Initializing
[ INFO  ] Generating a temporary VNC password.
[ INFO  ] Stage: Environment setup
          Continuing will configure this host for serving as hypervisor and create a VM where you have to install the engine afterwards.
          Are you sure you want to continue? (Yes, No)[Yes]: 
          Configuration files: []
          Log file: /var/log/ovirt-hosted-engine-setup/ovirt-hosted-engine-setup-20160529135643-l3j5se.log
          Version: otopi-1.4.1 (otopi-1.4.1-1.el7ev)
          It has been detected that this program is executed through an SSH connection without using screen.
          Continuing with the installation may lead to broken installation if the network connection fails.
          It is highly recommended to abort the installation and run it inside a screen session using command "screen".
          Do you want to continue anyway? (Yes, No)[No]: yes
[ INFO  ] Hardware supports virtualization
[ INFO  ] Stage: Environment packages setup
[ INFO  ] Stage: Programs detection
[ ERROR ] Failed to execute stage 'Programs detection': hosted-engine cannot be deployed while NetworkManager is running, please stop and disable it before proceeding
[ INFO  ] Stage: Clean up
[ INFO  ] Generating answer file '/var/lib/ovirt-hosted-engine-setup/answers/answers-20160529135649.conf'
[ INFO  ] Stage: Pre-termination
[ INFO  ] Stage: Termination
[ ERROR ] Hosted Engine deployment failed: this system is not reliable, please check the issue, fix and redeploy
          Log file is located at /var/log/ovirt-hosted-engine-setup/ovirt-hosted-engine-setup-20160529135643-l3j5se.log

I've received the "[ ERROR ] Failed to execute stage 'Programs detection': hosted-engine cannot be deployed while NetworkManager is running, please stop and disable it before proceeding" and setting this bug status to verified, as it works as required.

After I've disabled the NetworkManager, deployment was executed without any issues.