Skip to content

SAS-62 clusterd: set TCP keepalive sysctls on pods#36351

Merged
jubrad merged 1 commit intoMaterializeInc:mainfrom
jubrad:jb-clusterd-tcp-keepalive-sysctls
May 1, 2026
Merged

SAS-62 clusterd: set TCP keepalive sysctls on pods#36351
jubrad merged 1 commit intoMaterializeInc:mainfrom
jubrad:jb-clusterd-tcp-keepalive-sysctls

Conversation

@jubrad
Copy link
Copy Markdown
Contributor

@jubrad jubrad commented May 1, 2026

Summary

  • Container network namespaces get default kernel values, not the host's custom sysctl settings — host-level TCP keepalive tuning was being silently overwritten by container defaults
  • Adds net.ipv4.tcp_keepalive_time=300, net.ipv4.tcp_keepalive_intvl=30, net.ipv4.tcp_keepalive_probes=3 to the clusterd PodSecurityContext
  • Adds validate_clusterd_pod() to the orchestratord integration tests, called from all three existing clusterd pod validation sites (SwapEnabledGlobal, StorageClass, ClusterdCpu)

@jubrad jubrad requested a review from Alphadelta14 May 1, 2026 19:45
@jubrad jubrad marked this pull request as ready for review May 1, 2026 19:45
@jubrad jubrad requested a review from a team as a code owner May 1, 2026 19:45
Container network namespaces get default kernel values, not the host's
custom sysctl settings. This means host-level TCP keepalive tuning was
being silently overwritten by container defaults.

Add net.ipv4.tcp_keepalive_{time,intvl,probes} to the clusterd
PodSecurityContext so the values are enforced at the Kubernetes pod
spec level.

Also adds validation in the orchestratord integration tests to assert
the sysctls are present on clusterd pods.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@jubrad jubrad force-pushed the jb-clusterd-tcp-keepalive-sysctls branch from cc61050 to e76845e Compare May 1, 2026 19:47
@jubrad jubrad merged commit 991dfbf into MaterializeInc:main May 1, 2026
125 checks passed
@jubrad jubrad changed the title clusterd: set TCP keepalive sysctls on pods SAS-62 clusterd: set TCP keepalive sysctls on pods May 1, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants