Bug 1508843 - Unable to configure HA due to failover monitor service not starting
Summary: Unable to configure HA due to failover monitor service not starting
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Red Hat CloudForms Management Engine
Classification: Red Hat
Component: Appliance
Version: 5.9.0
Hardware: Unspecified
OS: Unspecified
high
high
Target Milestone: GA
: 5.10.0
Assignee: Joe Vlcek
QA Contact: luke couzens
URL:
Whiteboard: HA:black
Depends On:
Blocks: 1510068
TreeView+ depends on / blocked
 
Reported: 2017-11-02 10:51 UTC by luke couzens
Modified: 2019-02-11 13:54 UTC (History)
5 users (show)

Fixed In Version: 5.10.0.0
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
: 1510068 (view as bug list)
Environment:
Last Closed: 2019-02-11 13:54:12 UTC
Category: ---
Cloudforms Team: CFME Core
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)

Description luke couzens 2017-11-02 10:51:37 UTC
Description of problem:Unable to configure HA due to failover monitor service not starting.


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


How reproducible:100%


Steps to Reproduce:
1.provision appliance
2.run appliance_console
3.select option 9 'Configure Application Database Failover Monitor'

Actual results:
Failed to configure failover monitor

Failed to start evm-failover-monitor.service: Unit is not loaded properly: Invalid argument.
See system logs and 'systemctl status evm-failover-monitor.service' for details.


Press any key to continue.



Expected results:
Failover monitor service started.

Additional info:
I configured a complete HA configuration when testing this but to save time you can reproduce it with one appliance.

Running systemctl status evm-failover-monitor.service gives:

● evm-failover-monitor.service - PostgreSQL Failover Monitor for ManageIQ
   Loaded: error (Reason: Invalid argument)
   Active: inactive (dead)

Nov 02 06:27:23  systemd[1]: [/usr/lib/systemd/system/evm-failover-monitor.service:6] Executable path is not absolute, ignoring: source /etc/default/evm && bundle exec postgres_ha_admin
Nov 02 06:27:23  systemd[1]: evm-failover-monitor.service lacks both ExecStart= and ExecStop= setting. Refusing.
Nov 02 06:27:23  systemd[1]: [/usr/lib/systemd/system/evm-failover-monitor.service:6] Executable path is not absolute, ignoring: source /etc/default/evm && bundle exec postgres_ha_admin
Nov 02 06:27:23  systemd[1]: evm-failover-monitor.service lacks both ExecStart= and ExecStop= setting. Refusing.

Comment 2 Joe Vlcek 2017-11-03 18:58:08 UTC
I've root caused this failure and will post a PR shortly. The issue is that the /usr/lib/systemd/system/evm-failover-monitor.service file has an invalid ExecStart line:

ExecStart=source /etc/default/evm && bundle exec postgres_ha_admin

The target to the ExecStart line must be the full path to an executable file. It can not be "source"

This works:

ExecStart=/bin/sh -c /etc/default/evm && bundle exec postgres_ha_admin

PR forthcoming.

JoeV

Comment 4 CFME Bot 2017-11-04 14:57:49 UTC
New commit detected on ManageIQ/manageiq-appliance/master:
https://github.com/ManageIQ/manageiq-appliance/commit/c026ba1037ed25d1c4ae61ddc68e7a3cbc82aec6

commit c026ba1037ed25d1c4ae61ddc68e7a3cbc82aec6
Author:     Joe VLcek <jvlcek>
AuthorDate: Fri Nov 3 15:37:12 2017 -0400
Commit:     Joe VLcek <jvlcek>
CommitDate: Fri Nov 3 15:37:12 2017 -0400

    ExecStart requires an absolute executable path
    
    https://bugzilla.redhat.com/show_bug.cgi?id=1508843

 COPY/usr/lib/systemd/system/evm-failover-monitor.service | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comment 6 luke couzens 2018-06-19 12:57:20 UTC
Verified in 5.10


Note You need to log in before you can comment on or make changes to this bug.