You have been subscribed to a public bug: [Impact] Valid haproxy configuration directives don't work on trusty as /run/haproxy does not survive reboots and is not-recreated on daemon start.
[Test Case] sudo apt install haproxy configure /etc/haproxy.cfg with a admin socket in /run/haproxy: global log /var/lib/haproxy/dev/log local0 log /var/lib/haproxy/dev/log local1 notice maxconn 20000 user haproxy group haproxy spread-checks 0 stats socket /var/run/haproxy/admin.sock mode 600 level admin stats timeout 2m Restart haproxy (will fail as /{,var/}run/haproxy does not exist) [Regression Potential] Minimal - same fix is in later package revisions [Original Bug Report] While testing upgrades of an Ubuntu 14.04 deployment of OpenStack from ~15.04 to 17.11 charms, I noticed that a number of the OpenStack charmed services failed to start haproxy when I rebooted their units: cinder, glance, keystone, neutron-api, nova-cloud-controller, and swift-proxy. The following was in /var/log/boot.log: [ALERT] 069/225906 (1100) : cannot bind socket for UNIX listener (/var/run/haproxy/admin.sock). Aborting. [ALERT] 069/225906 (1100) : [/usr/sbin/haproxy.main()] Some protocols failed to start their listeners! Exiting. * Starting haproxy haproxy [fail] The charm created /var/run/haproxy, but since /var/run (really /run) is a tmpfs, this did not survive the reboot and so haproxy could not create the socket. I compared the haproxy.cfg the charm creates with the default config shipped by the Ubuntu 16.04 haproxy package, and it seems that charmhelpers/contrib/openstack/templates/haproxy.cfg is closely based on the package, including the admin.sock directive. However, on Ubuntu 16.04, /etc/init.d/haproxy ensures that /var/run/haproxy exists before it starts haproxy: [agnew(work)] diff -u haproxy-1.4.24/debian/haproxy.init haproxy-1.6.3/debian/haproxy.init --- haproxy-1.4.24/debian/haproxy.init 2015-12-16 03:55:29.000000000 +1300 +++ haproxy-1.6.3/debian/haproxy.init 2015-12-31 20:10:38.000000000 +1300 [...] @@ -50,6 +41,10 @@ haproxy_start() { + [ -d "$RUNDIR" ] || mkdir "$RUNDIR" + chown haproxy:haproxy "$RUNDIR" + chmod 2775 "$RUNDIR" + check_haproxy_config start-stop-daemon --quiet --oknodo --start --pidfile "$PIDFILE" \ [...] charm-helpers or the OpenStack charms or both should be updated so that haproxy will start on boot when running on Ubuntu 14.04. ** Affects: ubuntu-translations Importance: High Status: Invalid ** Affects: charm-nova-cloud-controller Importance: High Status: Invalid ** Affects: haproxy (Ubuntu) Importance: High Status: Fix Released ** Affects: haproxy (Ubuntu Trusty) Importance: High Assignee: James Page (james-page) Status: Fix Committed ** Tags: canonical-is-ps45-1711-upgrade verification-needed verification-needed-trusty -- HAProxyContext on Ubuntu 14.04 generates config that fails to start on boot https://bugs.launchpad.net/bugs/1755061 You received this bug notification because you are a member of Ubuntu Translations Coordinators, which is subscribed to Ubuntu Translations. _______________________________________________ Mailing list: https://launchpad.net/~ubuntu-translations-coordinators Post to : ubuntu-translations-coordinators@lists.launchpad.net Unsubscribe : https://launchpad.net/~ubuntu-translations-coordinators More help : https://help.launchpad.net/ListHelp