@dan thank you!
I actually tried starting the installing procedure in production mode but i had some issues...
Anyway i now have a working 2-node cluster in devel mode (on your input, i just checked /usr/local/fusionauth/config/fusionauth.properties files on both nodes, they are md5sum-equal so far).
For "working cluster" i mean that i see "2 nodes" in the system>about page
Is there any way to perform a more comprehensive test to check that everything is configured correctly...?
I will switch asap in production mode (that's my target anyway).
Btw, I found a lot simpler to perform initial configuration with only one node and then add the other one later with your Youtube guide.
Referring specifically to my cluster architecture i also had to:
get rid of PgBouncer, it messes up with hikari and also with pgsql prepared statements (switching to session pool_mode in pgbouncer did not help)
tweak haproxy a bit, especially to make it work with hikari... i am still not yet satisfied with the results and i will probably have to tweak also fusionauth/hikari db connections management
Coming to the load balancer configuration, the guide says to setup these header rules:
X-Forwarded-Proto: typically this will be https. This ensures any redirects are sent with the appropriate scheme.
X-Forwarded-Host: The original host requested by the client in the Host HTTP request header.
X-Forwarded-For: The originating IP address of the client.
X-Forwarded-Server: The hostname of the proxy server.
I more than able to setup a nginx ha setup to do that.
However, my cloud environnment provides out-of-the-box ha load balancers that work with these rules (not modifiable):
X-Forwarded-For - contains the IP address of the original client making the request
X-Forwarded-Port - contains the listen port of the Load Balancer service. So if your Load Balancer listens on port 80, it will contain 80.
X-Forwarded-Proto - contains the protocol the client used to contact the Load Balancer. Can be http or https.
I also checked that incoming Host header contains the load balancer's dns name.
Things seem running smoothly also with this last setup (please note that so far i just did configuration tasks and i did not use any apis or production features...)... can i proceed with this load balancer setup or am i going to face problems in production?