Author here: there's a bunch of existing HAProxy load balancing guides but outdated: specifically, this adds HTTP/2 (added end of 2017) and dynamic reconfig (added end of 2015), as well as the HTML5 SSE, a static server, and other common useful bits and pieces.
All configs and the 'swap-server' script are at https://github.com/certsimple/haproxy-http2-load-balancing-c...