Stabilize demo ingress after k3s upgrade (MetalLB/Calico LB route regression) #1094
Labels
No labels
1week
2weeks
Failed compliance check
IP cameras
NATS
Possible security concern
Review effort 1/5
Review effort 2/5
Review effort 3/5
Review effort 4/5
Review effort 5/5
UI
aardvark
accessibility
amd64
api
arm64
auth
back-end
bgp
blog
bug
build
checkers
ci-cd
cleanup
cnpg
codex
core
dependencies
device-management
documentation
duplicate
dusk
ebpf
enhancement
eta 1d
eta 1hr
eta 3d
eta 3hr
feature
fieldsurvey
github_actions
go
good first issue
help wanted
invalid
javascript
k8s
log-collector
mapper
mtr
needs-triage
netflow
network-sweep
observability
oracle
otel
plug-in
proton
python
question
reddit
redhat
research
rperf
rperf-checker
rust
sdk
security
serviceradar-agent
serviceradar-agent-gateway
serviceradar-web
serviceradar-web-ng
siem
snmp
sysmon
topology
ubiquiti
wasm
wontfix
zen-engine
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
carverauto/serviceradar#1094
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?
Imported from GitHub.
Original GitHub issue: #2991
Original author: @mfreeman451
Original URL: https://github.com/carverauto/serviceradar/issues/2991
Original created: 2026-03-04T08:43:02Z
Summary
After the k3s control/worker upgrade,
demo.serviceradar.cloudregressed.Observed behavior during incident:
NXDOMAINbecause ingress LB IP allocation failed (k3s-ipv4annotation drift).No route to host.23.138.124.xonbr104remained<incomplete>.23.138.124.0/27path while service-specific/32routes were absent.Root Cause
Control-plane config drift + post-upgrade routing behavior mismatch:
k3s-ipv4)./32Calico advertisements were added.Changes Applied
k3s-pool.serviceLoadBalancerIPs/32entries for active LB services:23.138.124.2/3223.138.124.3/3223.138.124.18/3223.138.124.20/3223.138.124.22/3223.138.124.25/3223.138.124.26/3223.138.124.27/32k8s/demo/prod/calico-bgpconfiguration.yamlk8s/demo/prod/kustomization.yamlrouting1.mdValidation
23.138.124.2/32via BGP and installs it as best route.curl -kI https://demo.serviceradar.cloudreturns HTTP response.dig demo.serviceradar.cloudresolves to expected ingress IP.Follow-ups
/32requirement for this network topology.metallb.universe.tf/*annotations to current keys.Imported GitHub comment.
Original author: @mfreeman451
Original URL: https://github.com/carverauto/serviceradar/issues/2991#issuecomment-3996092846
Original created: 2026-03-04T08:43:16Z
Implemented and pushed recovery hardening changes on branch
fix/2991-demo-lb-route-regression.Commit:
cde0afbc8Files:
k8s/demo/prod/calico-bgpconfiguration.yamlk8s/demo/prod/kustomization.yamlrouting1.mdThis makes the LB /32 route fix declarative/idempotent for re-apply after upgrades or drift.