Haven’t used HAProxy since Tumblr, but it was fantastic then.
Anyone with recent experience using it as the reverse-proxy in front of your webservers, especially if it does your HTTPS decryption:
Is it still awesome?
Does it work well with LetsEncrypt + certbot or similar?
HAproxy is definitely still the way to go. I use my own scripts to manage SSL certs (and OCSP staples) and just put them in the directory HAproxy is configured to look at.
In typical “I know you asked about X, but what about Y”, I’m running nginx as reverse proxy in front of about 100 servers, handling all the LetsEncrypt stuff. On a $5/month Linode.
How "big" is Overcast?
We know of several companies using us to serve tens of thousands of their customers sites -- Caddy scales globally and can handle millions of sites and certificates (hardware/cluster permitting).
Google, Netflix, Cloudflare all run Go on their edge.
If you mean Overcast.fm, then does it help to know that @TransistorFM uses Caddy too? Their deployment is part of the reason Caddy 2 is as good as it is.
Used HAProxy but for internal load balancing.
I’d recommend Nginx. Been using it for Reverse proxy + load balancing + HTTPS decr for more than 5 years. Been a Champ.
Does this have anything to do with the Dallas outage on Friday? That has me rethinking some of our backup plans as well. 🤔 Interested in what you come up with. 🙏
Unrelated. I’m currently doing load-balancing and HTTPS termination with CloudFlare, I’m looking to bring it back “in-house”, and my previous experience with Linode NodeBalancers was fine but I overloaded them a lot.
I’d recommend giving Caddy 2 a try, does wonders as a reverse proxy with auto SSL. Super simple config, rock solid.
I find HAProxy’s config overly verbose, Caddy is a breath of fresh air.
Happy to help if you have any questions!
Having said that, yes HAProxy still works flawlessly and is great at serving HTTPS.
The benefit of a modern alternative (like Caddy or Traefik) is that you can get modern cryptography without being tied to your (probably old) OpenSSL version on the host.
haproxy + lego (zero dependency lets encrypt client) is great. Custom integration is easy with a zero downtime `service haproxy reload` or using the newish haproxy data plane api.
HaProxy is still awesome. Old boring technology that works really well.
We use it for load balancing and HTTPS encryption at @ChurchTools
It was never our bottleneck and handles everything you throw at it.
Just add a Kubernetes container to spin up an autoprovisioned terraform node and orchestrate level 6 load balancing across multicloud distributed kvs clusters by dropping in an etcd pod to your systemd YAML.
Caddy is much easier way. Use it everywhere. Used in a project that had 100M uniques a month. Although that’s the version 1. Haven’t yet used version 2
Yes. I have recent experience, and it still is awesome. Wicked fast, still uses almost no resources. Works fine with LetsEncrypt, drop your cert in the right folder, restart proxy.
My employer uses it for load balancing and some routing (some paths go to applications servers some directed to asset servers) and our ops team seems pretty happy with it. I don’t know Overcast’s numbers but we’re a fairly large e-commerce company
Another one for Nginx. It’s so super simple and it’s there’s plenty of tutorials on using it with letsencrypt. I use Nginx and certbot (letsencrypt) as a reverse proxy with HTTPS running on docker to front all my home automation stuff