Bug #16972
closedhttpd fails to start after mod_ssl updated
Description
Cloned from BZ:
Description of problem:
Running "yum update" on a Satellite 6.2 beta installed on RHEL 7 results in package httpd being updated from 2.4.6-40.el7 to 2.4.6-40.el7_2.1.
This causes previously non existent file /etc/httpd/conf.d/ssl.conf to be created.
Running "foreman-installer --scenario katello --upgrade" does not remove /etc/httpd/conf.d/ssl.conf and httpd fails to start.
"Listen 443" in /etc/httpd/conf.d/ssl.conf conflicts with "Listen 443" on /etc/httpd/conf/ports.conf .
Version-Release number of selected component (if applicable):
foreman-installer-1.11.0.3-1.el7sat
How reproducible:
Always
Steps to Reproduce:
1. Run "yum update" on the Satellite and have httpd package updated.
2. Running "foreman-installer --scenario katello --upgrade"
3.
Actual results:
httpd fails to start:
- foreman-installer --scenario katello --upgrade
Upgrading...
Upgrade Step: stop_services...
Upgrade Step: start_databases...
Upgrade Step: migrate_pulp...
Upgrade Step: start_httpd...
Upgrade step start_httpd failed. Check logs for more information.
- tail /var/log/httpd/error_log
[Mon May 16 09:26:03.951254 2016] [core:crit] [pid 46664] (22)Invalid argument: AH00069: make_sock: for address [::]:443, apr_socket_opt_set: (IPV6_V6ONLY)
(98)Address already in use: AH00072: make_sock: could not bind to address [::]:443
(98)Address already in use: AH00072: make_sock: could not bind to address 0.0.0.0:443
[Mon May 16 09:26:03.951314 2016] [mpm_prefork:alert] [pid 46664] no listening sockets available, shutting down
[Mon May 16 09:26:03.951317 2016] [:emerg] [pid 46664] AH00019: Unable to open logs, exiting
/usr/share/gems/gems/passenger-4.0.18/helper-scripts/prespawn:105:in `initialize': Connection refused - connect(2) (Errno::ECONNREFUSED)
from /usr/share/gems/gems/passenger-4.0.18/helper-scripts/prespawn:105:in `new'
from /usr/share/gems/gems/passenger-4.0.18/helper-scripts/prespawn:105:in `connect'
from /usr/share/gems/gems/passenger-4.0.18/helper-scripts/prespawn:86:in `socket'
from /usr/share/gems/gems/passenger-4.0.18/helper-scripts/prespawn:90:in `head_request'
from /usr/share/gems/gems/passenger-4.0.18/helper-scripts/prespawn:145:in `<main>'
/usr/share/gems/gems/passenger-4.0.18/helper-scripts/prespawn:105:in `initialize': Connection refused - connect(2) (Errno::ECONNREFUSED)
from /usr/share/gems/gems/passenger-4.0.18/helper-scripts/prespawn:105:in `new'
from /usr/share/gems/gems/passenger-4.0.18/helper-scripts/prespawn:105:in `connect'
from /usr/share/gems/gems/passenger-4.0.18/helper-scripts/prespawn:112:in `connect'
from /usr/share/gems/gems/passenger-4.0.18/helper-scripts/prespawn:86:in `socket'
from /usr/share/gems/gems/passenger-4.0.18/helper-scripts/prespawn:90:in `head_request'
from /usr/share/gems/gems/passenger-4.0.18/helper-scripts/prespawn:145:in `<main>'
Duplicated "Listen 443" directives as a result of httpd package provided file /etc/httpd/conf.d/ssl.conf not being cleared by "foreman-installer --scenario katello --upgrade":
- grep -r "Listen 443" /etc/httpd
/etc/httpd/conf/ports.conf:Listen 443
/etc/httpd/conf.d/ssl.conf:Listen 443 https
Expected results:
"foreman-installer --scenario katello --upgrade" resolves the conflict and httpd starts successfully.