How to flush map from HAProxy to disk after set map


#1

I am setting map key, value using socket. But same is not flushed to map file on disk.
This means HAProxy restart gets old load2 - 2 value and not new value 22.

How could a map be flushed to disk after set map?
Could someone please clarify as documentation is blank on flush part.

$ echo “set map /home/cloud/load.map load2 22” | sudo socat /var/run/haproxy.sock stdio

$ cat load.map
load1 10
load2 2

$ echo “show map /home/cloud/load.map” | sudo socat /var/run/haproxy.sock stdio
0x15890f0 load1 10
0x1589120 load2 22


#2

Got Solution here
http://comments.gmane.org/gmane.comp.web.haproxy/16324

Solution as per HAProxy support:

Are these meant to also modify the acl/map file on disk?

  1. During the runtime, HAProxy never acces to the filesystem, so the
    original files containing map left unchanged.

  2. you can run a process which reads acls/maps content from HAProxy
    socket and write it to a file on disk.