Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Need custom server line incase of consul service discovery enabled dataplane #328

Open
dhruvjain99 opened this issue Apr 2, 2024 · 2 comments

Comments

@dhruvjain99
Copy link

As per consul.md, the generated server line will be of the format: server SRV_<rand_id> <node-ip>:<node-port> weight 128. We need to configure some more params for our backend servers like check, port 8888, on-marked-down, send-proxy, etc. As per the official blog, if I use the default-server configuration line then the dataplane api issues the reload command instead of updating the haproxy using runtime api. We use backend balancing mode as leastconn and the problem with reloading is that when new backend servers are added, the haproxy gets reloaded due to which the new process does not inherit the connections count resulting in equal distribution of connections while our requirement is to distribute more connections to the servers which are recently added.

There is no way we can define our own custom format of server line when using consul service discovery enabled dataplane.

@dhruvjain99
Copy link
Author

dhruvjain99 commented Apr 2, 2024

@hdurand0710 @mjuraga could you please confirm if this is true? Maybe I can work on this enhancement and contribute. In the past I have also contributed to the HAProxy by fixing the support of stick tables for MQTT 3.

@illmatik0ne
Copy link

illmatik0ne commented May 10, 2024

Related, I am currently experiencing an issue with consul service discovery when the backend server is expecting SSL. A nomad container is expecting SSL traffic for a web interface over port 8443. When the Data Plane API registers the service, it does not include an ssl argument in the backend server configuration and attempts to connect using http instead of https.

Consul does not seem to have a way to inform that SSL is expected in the service definition. Is there a way to use consul service tags to add more parameters to our backend servers?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants