Tutorials
Manage global settings
In your load balancer configuration, a global
section defines settings that affect how the load balancer runs.
You can manage global settings programmatically by calling the API endpoint /services/haproxy/configuration/global
.
Note
The version
parameter in DELETE, POST, and PUT requests must match the system’s current version. The APIv3 examples in this section use a GET request to /v3/services/haproxy/configuration/version
to retrieve the version and populate the CFGVER
environment variable for the URL version
parameter.
List global settings Jump to heading
To get the contents of a global
section, make a GET request to the global
endpoint:
nix
curl -X GET \--user admin:adminpwd \"http://localhost:5555/v3/services/haproxy/configuration/global"
nix
curl -X GET \--user admin:adminpwd \"http://localhost:5555/v3/services/haproxy/configuration/global"
outputjson
{"runtime_apis": [{"level": "admin","mode": "660","address": "/var/run/haproxy.sock"}],"insecure_fork_wanted": true,"master-worker": true}
outputjson
{"runtime_apis": [{"level": "admin","mode": "660","address": "/var/run/haproxy.sock"}],"insecure_fork_wanted": true,"master-worker": true}
nix
curl -X GET \--user admin:adminpwd \"http://localhost:5555/v2/services/haproxy/configuration/global"
nix
curl -X GET \--user admin:adminpwd \"http://localhost:5555/v2/services/haproxy/configuration/global"
outputjson
{"_version": 99,"data": {"runtime_apis": [{"level": "admin","mode": "660","address": "/var/run/haproxy.sock"}],"insecure_fork_wanted": true,"master-worker": true}}
outputjson
{"_version": 99,"data": {"runtime_apis": [{"level": "admin","mode": "660","address": "/var/run/haproxy.sock"}],"insecure_fork_wanted": true,"master-worker": true}}
Replace global settings Jump to heading
To make changes to global settings, you must replace them entirely. To replace global settings, make a PUT request to the global
endpoint, passing the fields in the body of the request. In this example, we replace the settings to include maxconn
, user
, group
, pidfile
, and runtime_apis
:
nix
CFGVER=$(curl -s -u admin:adminpwd http://localhost:5555/v3/services/haproxy/configuration/version)curl -X PUT \--user admin:adminpwd \-H "Content-Type: application/json" \-d '{"maxconn": 100000,"chroot": "/var/empty","user": "haproxy","group": "haproxy","pidfile": "/var/run/haproxy/haproxy.pid","runtime_apis": [{"address": "/var/run/haproxy.sock","level": "admin","mode": "660"},{"address": "ipv4@0.0.0.0:9999","level": "admin"}]}' \"http://localhost:5555/v3/services/haproxy/configuration/global?version=$CFGVER"
nix
CFGVER=$(curl -s -u admin:adminpwd http://localhost:5555/v3/services/haproxy/configuration/version)curl -X PUT \--user admin:adminpwd \-H "Content-Type: application/json" \-d '{"maxconn": 100000,"chroot": "/var/empty","user": "haproxy","group": "haproxy","pidfile": "/var/run/haproxy/haproxy.pid","runtime_apis": [{"address": "/var/run/haproxy.sock","level": "admin","mode": "660"},{"address": "ipv4@0.0.0.0:9999","level": "admin"}]}' \"http://localhost:5555/v3/services/haproxy/configuration/global?version=$CFGVER"
nix
CFGVER=$(curl -s -u admin:adminpwd http://localhost:5555/v2/services/haproxy/configuration/version)curl -X PUT \--user admin:adminpwd \-H "Content-Type: application/json" \-d '{"maxconn": 100000,"chroot": "/var/empty","user": "haproxy","group": "haproxy","pidfile": "/var/run/haproxy/haproxy.pid","runtime_apis": [{"address": "/var/run/haproxy.sock","level": "admin","mode": "660"},{"address": "ipv4@0.0.0.0:9999","level": "admin"}]}' \"http://localhost:5555/v2/services/haproxy/configuration/global?version=$CFGVER"
nix
CFGVER=$(curl -s -u admin:adminpwd http://localhost:5555/v2/services/haproxy/configuration/version)curl -X PUT \--user admin:adminpwd \-H "Content-Type: application/json" \-d '{"maxconn": 100000,"chroot": "/var/empty","user": "haproxy","group": "haproxy","pidfile": "/var/run/haproxy/haproxy.pid","runtime_apis": [{"address": "/var/run/haproxy.sock","level": "admin","mode": "660"},{"address": "ipv4@0.0.0.0:9999","level": "admin"}]}' \"http://localhost:5555/v2/services/haproxy/configuration/global?version=$CFGVER"
Do you have any suggestions on how we can improve the content of this page?