mirror of
http://git.haproxy.org/git/haproxy.git/
synced 2024-12-25 06:02:08 +00:00
e826bc3dfa
When the `haproxy -c` check during the reload fails, no error is output in the logs, this can be quite bothersome to understand what's going on. This patch removes the -q option on the check so we can see the error with `journalctl -u haproxy` or `systemctl status haproxy` This will change the behavior when the check works, and will display "Configuration file is valid" Note that in some case this test could be completely removed, because the master process loads the configuration itself and is able to keep the previous workers running when the reload failed. This is interesting to disable the test when there are a lot of certificates of files to load, to divide the reload time by 2. No need to backport.
38 lines
1.3 KiB
SYSTEMD
38 lines
1.3 KiB
SYSTEMD
[Unit]
|
|
Description=HAProxy Load Balancer
|
|
After=network-online.target
|
|
Wants=network-online.target
|
|
|
|
[Service]
|
|
EnvironmentFile=-/etc/default/haproxy
|
|
EnvironmentFile=-/etc/sysconfig/haproxy
|
|
Environment="CONFIG=/etc/haproxy/haproxy.cfg" "PIDFILE=/run/haproxy.pid" "EXTRAOPTS=-S /run/haproxy-master.sock"
|
|
ExecStart=@SBINDIR@/haproxy -Ws -f $CONFIG -p $PIDFILE $EXTRAOPTS
|
|
ExecReload=@SBINDIR@/haproxy -Ws -f $CONFIG -c $EXTRAOPTS
|
|
ExecReload=/bin/kill -USR2 $MAINPID
|
|
KillMode=mixed
|
|
Restart=always
|
|
SuccessExitStatus=143
|
|
Type=notify
|
|
|
|
# The following lines leverage SystemD's sandboxing options to provide
|
|
# defense in depth protection at the expense of restricting some flexibility
|
|
# in your setup (e.g. placement of your configuration files) or possibly
|
|
# reduced performance. See systemd.service(5) and systemd.exec(5) for further
|
|
# information.
|
|
|
|
# NoNewPrivileges=true
|
|
# ProtectHome=true
|
|
# If you want to use 'ProtectSystem=strict' you should whitelist the PIDFILE,
|
|
# any state files and any other files written using 'ReadWritePaths' or
|
|
# 'RuntimeDirectory'.
|
|
# ProtectSystem=true
|
|
# ProtectKernelTunables=true
|
|
# ProtectKernelModules=true
|
|
# ProtectControlGroups=true
|
|
# If your SystemD version supports them, you can add: @reboot, @swap, @sync
|
|
# SystemCallFilter=~@cpu-emulation @keyring @module @obsolete @raw-io
|
|
|
|
[Install]
|
|
WantedBy=multi-user.target
|