mirror of https://github.com/apache/cloudstack.git
vrouter: reload haproxy when cfg file is updated (#3726)
since 4.11.3, haproxy is always restarted when add/delete a lb rule. When haproxy is started, the processes are ``` root@r-854-VM:~# ps aux |grep haproxy root 22272 0.0 0.2 4036 668 ? Ss 07:52 0:00 /usr/sbin/haproxy-systemd-wrapper -f /etc/haproxy/haproxy.cfg -p /run/haproxy.pid haproxy 22274 0.0 2.3 38444 5856 ? S 07:52 0:00 /usr/sbin/haproxy-master haproxy 22275 0.0 0.3 38444 880 ? Ss 07:52 0:00 /usr/sbin/haproxy -f /etc/haproxy/haproxy.cfg -p /run/haproxy.pid -Ds ``` When haproxy is reload, the processes are ``` root@r-854-VM:~# ps aux |grep haproxy root 22272 0.0 0.2 4168 632 ? Ss 07:52 0:00 /usr/sbin/haproxy-systemd-wrapper -f /etc/haproxy/haproxy.cfg -p /run/haproxy.pid haproxy 22283 0.0 2.3 38444 5884 ? S 07:53 0:00 /usr/sbin/haproxy-master haproxy 22286 0.0 0.3 38444 880 ? Ss 07:53 0:00 /usr/sbin/haproxy -f /etc/haproxy/haproxy.cfg -p /run/haproxy.pid -Ds -sf 22275 ``` We need to change the pid file from /var/run/haproxy.pid to /run/haproxy.pid, so the haproxy will be reloaded instead of restarted.
This commit is contained in:
parent
4ea6f32566
commit
be112a0220
|
|
@ -45,7 +45,7 @@ class CsLoadBalancer(CsDataBag):
|
|||
if not file2.compare(file1):
|
||||
CsHelper.copy(HAPROXY_CONF_T, HAPROXY_CONF_P)
|
||||
|
||||
proc = CsProcess(['/var/run/haproxy.pid'])
|
||||
proc = CsProcess(['/run/haproxy.pid'])
|
||||
if not proc.find():
|
||||
logging.debug("CsLoadBalancer:: will restart HAproxy!")
|
||||
CsHelper.service("haproxy", "restart")
|
||||
|
|
|
|||
Loading…
Reference in New Issue