fix(kubernetes): match DinD bridge MTU to the pod network #50

Merged
rcsheets merged 2 commits from fix/dind-mtu-match-pod-network into main 2026-07-20 00:12:25 +00:00
Owner

Also bring in a doc update

Also bring in a doc update
Privileged (DinD) pools ran dockerd with the default bridge MTU of 1500.
On overlay CNIs the pod interface is smaller (e.g. 1450 with VXLAN
encapsulation), so job containers emitted oversized frames that silently
stalled large transfers: `apt-get update` and image pulls crawled or
failed, flooding logs with apt's "Tried to start delayed item ... but
failed". Reproduced in a runner's dind: a 9.6 MB Packages fetch Ign'd and
retried at 304 kB/s.

The DinD sidecar now wraps dockerd-entrypoint.sh to read the pod's eth0
MTU (shared netns) and start dockerd with a matching --mtu, so docker0 and
every nested job container match the pod network. Verified end-to-end:
docker0 drops to 1450 and the same apt fetch completes in 1s at 7.3 MB/s
with no retries.

Adds spec.backend.kubernetes.dockerMTU to override the auto-detected value
for paths whose effective MTU is smaller than the pod interface (a further
tunnel the operator can't observe) or when eth0 is the wrong interface.
Applies to every privileged pool once the image rolls out; no pool changes
required.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
docs: forbid touching CHANGELOG.md unless the user asks
All checks were successful
CI (next Go) / next-go (tip) (pull_request) Successful in 17m52s
CI / ci (pull_request) Successful in 1m58s
E2E smoke test / e2e (pull_request) Successful in 4m49s
bd1ff776e0
Strengthen the existing directive: do not modify CHANGELOG.md at all
unless the user explicitly requests it, and never as a side effect of
another change.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Collaborator

Automated review by pr-reviewer v0.32.2 | Safety Check | Mistral Small | tracking id r-5d61c8-fbf89a
This is an AI-generated review and may contain mistakes.

Status: ⚠️ Unavailable


Review unavailable — the inference service isn't reachable right now. This isn't a problem with your PR. Tracking id r-5d61c8-fbf89a.

Comment @pr-reviewer-bot retry once it's back.

*Automated review by [pr-reviewer](https://git.brooktrails.org/brooktrails/pr-reviewer) v0.32.2 | Safety Check | Mistral Small | tracking id `r-5d61c8-fbf89a`* *This is an AI-generated review and may contain mistakes.* **Status:** ⚠️ Unavailable --- Review unavailable — the inference service isn't reachable right now. This isn't a problem with your PR. Tracking id `r-5d61c8-fbf89a`. Comment `@pr-reviewer-bot retry` once it's back.
rcsheets deleted branch fix/dind-mtu-match-pod-network 2026-07-20 00:12:26 +00:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
brooktrails/forgejo-runner-operator!50
No description provided.