0044: Keel Web in the cloud #49
Labels
No labels
accessibility
bug
documentation
duplicate
enhancement
good first issue
help wanted
invalid
question
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
Keel-Linux/tracker#49
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
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?
Decision (maintainer, 2026-10-02). Public traffic to Keel Web in the cloud modes: DNS with a health check is the primary mechanism (0020), with a low TTL; some resolvers ignore low TTLs, and that is stated. The second mechanism is an edge node: a rendezvous point with a fixed address that receives public traffic and forwards it over the mesh to the live Keel Web nodes, with VRRP between edge nodes, which share a network in one datacenter. VRRP with a floating public address between Keel Web nodes is low priority (IPv4 scarcity, same physical network needed). The WireGuard VIP of 0029 is mesh internal and never public. Load balancing in front of applications is 0042's; in front of Keel Web nodes it is DNS with a health check plus VRRP at the edge. Keel Web gets a role in the cloud modes (active and standby, or N active), and its sites and certificates replicate across nodes over the mesh.
Handbook:
docs/decisions/0044-keel-web-in-the-cloud.md(handbook#38)Amends: 0020 (DNS service becomes Keel DNS, keepalived used at the edge, Keel Web's own role), 0024 (rendezvous points may be edge nodes), 0028 (a Keel Web role in the cloud modes), 0029 (the VIP restated as mesh internal).
Open questions (recommendations in the note)
web.cluster.modeandweb.cluster.role; on an appliance with a database, the web role follows the elected database rolewebsection reaches other nodes: etcd in cloud advanced, pull from the first node in cloud simplevrrpoverlayFirst tasks
websection shared across a set (cloud simple, by pull)deploy.dreload on every nodevrrpoverlay (keepalived 1:2.3.3-1)websection through etcd in cloud advanced