Capsule 6.2 fails to start httpd service with error "Name duplicates previous WSGI daemon definition."

Solution Verified - Updated -

Environment

  • Red Hat Satellite or Capsule 6.2
  • Red Hat Enterprise Linux 7

Issue

When upgrading Capsule server to 6.2.x, the httpd service fails to start after 'yum update' with the below error:

capsule.example.com systemd[1]: Starting The Apache HTTP Server...
capsule.example.com httpd[1220]: AH00526: Syntax error on line 28 of /etc/httpd/conf.d/pulp.conf:
capsule.example.com httpd[1220]: Name duplicates previous WSGI daemon definition.
capsule.example.com systemd[1]: httpd.service: main process exited, code=exited, status=1/FAILURE

Resolution

The bug has been resolved in Satellite 6.2.7 errata https://access.redhat.com/errata/RHBA-2017:0197

Workaround WAS:
Move pulp.conf from /etc/httpd/conf.d/

# mv /etc/httpd/conf.d/pulp.conf /tmp
# systemctl restart httpd

**Please note: if the satellite-installer script did not complete successfully due to httpd startup failure, the installer will need to be re-executed once pulp.conf has been moved:

# satellite-installer --scenario capsule --upgrade

Root Cause

The Satellite installer may not have appropriately removed the file /etc/httpd/conf.d/pulp.conf, which is causing the conflict when the WSGI daemon is called during httpd startup.

The Bug in Bugzilla # 1368085

Diagnostic Steps

Check the service status for the output indicating that the "Name duplicates previous WSGI daemon definition":

[root@capsule]# systemctl status httpd

● httpd.service - The Apache HTTP Server
   Loaded: loaded (/usr/lib/systemd/system/httpd.service; enabled; vendor preset: disabled)
  Drop-In: /etc/systemd/system/httpd.service.d
           └─limits.conf
   Active: failed (Result: exit-code) since Tue 2016-08-16 11:31:30 EDT; 1min 43s ago
     Docs: man:httpd(8)
           man:apachectl(8)
  Process: 2441 ExecStop=/bin/kill -WINCH ${MAINPID} (code=exited, status=1/FAILURE)
  Process: 1220 ExecStart=/usr/sbin/httpd $OPTIONS -DFOREGROUND (code=exited, status=1/FAILURE)
 Main PID: 1220 (code=exited, status=1/FAILURE)

capsule.example.com systemd[1]: Starting The Apache HTTP Server...
capsule.example.com httpd[1220]: AH00526: Syntax error on line 28 of /etc/httpd/conf.d/pulp.conf:
capsule.example.com httpd[1220]: Name duplicates previous WSGI daemon definition.
capsule.example.com systemd[1]: httpd.service: main process exited, code=exited, status=1/FAILURE
capsule.example.com kill[2441]: kill: cannot find process ""
capsule.example.com systemd[1]: httpd.service: control process exited, code=exited status=1
capsule.example.com systemd[1]: Failed to start The Apache HTTP Server.
capsule.example.com systemd[1]: Unit httpd.service entered failed state.
capsule.example.com systemd[1]: httpd.service failed.
Some services failed to status: httpd

This solution is part of Red Hat’s fast-track publication program, providing a huge library of solutions that Red Hat engineers have created while supporting our customers. To give you the knowledge you need the instant it becomes available, these articles may be presented in a raw and unedited form.

Comments