proxies / src.fp.o: drop haproxy from src #3211
No reviewers
Labels
No labels
ai-review-please
freeze-break-request
post-freeze
Backlog Status
Needs Review
Backlog Status
Ready
chore
documentation
points
01
points
02
points
03
points
05
points
08
points
13
Priority
High
Priority
Low
Priority
Medium
Sprint Status
Blocked
Sprint Status
Done
Sprint Status
In Progress
Sprint Status
Review
Sprint Status
To Do
Technical Debt
Work Item
Bug
Work Item
Epic
Work Item
Spike
Work Item
Task
Work Item
User Story
No milestone
No project
No assignees
2 participants
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
infra/ansible!3211
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "kevin/ansible:no-haproxy-for-src"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Right now requests go:
client -> httpd on proxy -> anubis -> httpd on proxy -> varnish -> haproxy -> pkgs01
but haproxy is pretty useless in this case.
There is only one backend (pkgs01) so no load balancing, and doing a
liveness check is also pointless because if its down the request will
fail anyhow.
It might be tha haproxy ovehead is causing varnish to return retries
sometimes ( infra/tickets#13123 )
So, this drops it out for this.
Signed-off-by: Kevin Fenzi kevin@scrye.com
AI Code Review
📋 MR Summary
Removes HAProxy from the request pipeline for
src.fedoraproject.orgto simplify the architecture.src-frontendandsrc-backendblocks from HAProxy configuration.pkgs01backend instead of the local HAProxy instance.Detailed Code Review
The removal of the HAProxy layer for this specific service aligns well with the stated goal of reducing unnecessary overhead and retries, especially given there is only a single backend server (
pkgs01). By pointing Varnish directly to the backend node, you simplify the request chain.The Varnish configuration update correctly references the backend and utilizes
httpfor the port designation. Varnish compiler (VCC) will resolvehttpusing/etc/servicesto port 80, which matches the removed HAProxy configuration (pkgs01:80). Note that since the HAProxy health check (option httpchk) is being removed, Varnish will assume the backend is always healthy unless a.probeis explicitly defined in the VCL. Given the commit message states liveness checks are pointless here since the request would fail anyway, this behavior is expected.📂 File Reviews
📄 `roles/varnish/templates/proxies.vcl.j2` - Updates Varnish backend configuration to point directly to pkgs01 instead of local HAProxy.
.portis perfectly valid VCL as Varnish resolves it via/etc/services, but specifying the numeric port '80' is often preferred for explicitness and to avoid any reliance on local system service definitions..port = "http";to.port = "80";for strict explicitness.✅ Summary
🤖 AI Code Review | Generated with ai-code-review | Model:
gemini-3.1-pro-preview⚠️ AI-generated suggestions may be incorrect. Verify before applying. Not a replacement for human review.
Lets give it a try. Will deploy to stg and if all looks ok there do prod.