If I have a cloud provider, why might I use HAProxy over the provider's load balancing solution?
HAProxy 2.4
51–60 of 70 posts
Re: HAProxy 2.4
#52Earlier quoted context omitted.
Not specific to this release, but for an system architect that is taking the first look ever to the product: - the site does not do a good job of describing the products and what they do. https://www.haproxy.com/products/haproxy-enterprise-edition/ has a download button as the start and tells nothing about the product. - it is hard to find requirements from the first page. ( https://www.haproxy.com/documentation/hape…
How did you get a system architect title while somehow never looking at haproxy in the last.... 15 years?!
Re: HAProxy 2.4
#53Earlier quoted context omitted.
How did you get a system architect title while somehow never looking at haproxy in the last.... 15 years?!
Downvote me all you want but “architects” need to look at the solution landscape at least once in 15 years.
Re: HAProxy 2.4
#54Earlier quoted context omitted.
They have very nice features that provider's load balancing might not offer you. First to me is the ability to retain the IP address. When using AWS Load Balancer, the LB scale automatically and replace the IP. Second is sophisiciated routing. Example route by cookie. What it buy is that by setting a cookie you can make sure the request hit a specific pool. You can also have concept of backup Third is lots of useful…
Small note - AWS Network Load Balancers maintain the same IP addresses.
With an application load balancer, you can set up multiple backends, do basic redirections, do OIDC authentication, etc.
With a network load balancer, you can only spread TCP and / or UDP connections.
Re: HAProxy 2.4
#55If I have a cloud provider, why might I use HAProxy over the provider's load balancing solution?
More control, maybe less cost? If your cloudy provider has an awful solution like the one I was using, you'd get better uptime by doing it yourself. I haven't heard many problems with AWS or Google load balancing, but sometimes there's issues where people talk about 'pre-warming'... more control would probably help there. If you're running HAProxy on AWS, be sure your AWS firewall rules are stateless, otherwise you m…
This.
I got bit by this the other day, a bunch of servers were having very low CPU usage but new connections to them were failing. Turns out it was because they were hitting the conntrack limit. Changing the security group rules to allow all from all "fixed" it.
Although after a quick test, I think there's another limit, also unpublished, as I still can't establish as many connections as I want on a smaller instance – same number of requests on fewer connections works, and also a bigger instance works with many connections. In every case, the CPU was largely unused.
AWS doc regarding the issue: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/security...
Re: HAProxy 2.4
#56Earlier quoted context omitted.
It has the ability to route by FIX tags. You can find an example here [1] [1] https://www.haproxy.com/blog/haproxy-enterprise-2-3-and-hapr...
Sure, I saw that example. Maybe let me put it a different way: if a client has one inbound FIX connection to HAProxy, can HAProxy connect to N backend servers and send each FIX message from the single client connection to a different backend?
use_backend fix_servers_a if { var(txn.sendercompid) -m str firmA }
default_backend fix_servers_b
Then "fix_servers_a" could be defined as a round-robin backend.Re: HAProxy 2.4
#57Earlier quoted context omitted.
Open tracing sounds nice, what info is passed along?
My question is what conversation has there been re: Opentelemetry, the successor to OT
It looks like it's being adopted by a few larger app monitoring products, wondering if datadog will follow suit or if they will stick with open tracing and their custom implementations for logging and metrics. I assume they will support ingestion from ot at some point though. It sounds neat tho, will definitely read up on it more.
Re: HAProxy 2.4
#58Earlier quoted context omitted.
Open tracing sounds nice, what info is passed along?
You can pass along timing data from every aspect of the request [1] currently there are approximately 20 events supported. You can also send over just about anything that can be stored within an HAProxy variable / header through a tag. Here's an example configuration for HAProxy (simple) [2] (advanced) [3] and the OpenTracing specific configuration (simple) [4] (advanced) [5]. I've included both simple and advanced c…
Re: HAProxy 2.4
#59Earlier quoted context omitted.
More control, maybe less cost? If your cloudy provider has an awful solution like the one I was using, you'd get better uptime by doing it yourself. I haven't heard many problems with AWS or Google load balancing, but sometimes there's issues where people talk about 'pre-warming'... more control would probably help there. If you're running HAProxy on AWS, be sure your AWS firewall rules are stateless, otherwise you m…
> If you're running HAProxy on AWS, be sure your AWS firewall rules are stateless, otherwise you may well run into the unpublished connection tracking limits. This. I got bit by this the other day, a bunch of servers were having very low CPU usage but new connections to them were failing. Turns out it was because they were hitting the conntrack limit. Changing the security group rules to allow all from all "fixed" it…
Any chance this is an OS limit in your instance? Either a connection tracking firewall there, or FD/socket count limits? I don't have experience beyond the AWS connection tracking limits because I ran into them while testing something, but only found out how to avoid them much later (the test didn't go well, because of the limits, so we didn't go forward, and our assigned rep didn't tell us about the workaround either; I only found out by complaining about the limit to enough people that someone knew how to fix it)