Skip to content

Commit 06eea11

Browse files
author
Kasturi Narra
committed
Fix kindnet POD_SUBNET mismatch in CNCF conformance tests
1 parent dfa6c32 commit 06eea11

1 file changed

Lines changed: 22 additions & 2 deletions

File tree

.github/workflows/cncf-conformance.yaml

Lines changed: 22 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -94,6 +94,26 @@ jobs:
9494
sudo podman exec "${node}" systemctl disable firewalld || true
9595
done
9696
97+
# Tune conntrack to prevent table exhaustion during conformance tests.
98+
# The CNCF suite runs 400+ tests, each creating pods/services/connections.
99+
# TCP conntrack entries persist much longer than UDP (established: 5 days,
100+
# time_wait: 120s vs UDP: 30s). When the table fills up, new TCP SYN packets
101+
# are silently dropped, causing TCP DNS (dig +tcp) to fail while UDP works.
102+
#
103+
# nf_conntrack_max must be set on the host since it's a namespace-level
104+
# kernel parameter that cannot be changed from within containers.
105+
echo ""
106+
echo "Tuning conntrack settings on host..."
107+
sudo sysctl -w net.netfilter.nf_conntrack_max=262144
108+
109+
echo "Tuning conntrack settings on cluster nodes..."
110+
for node in microshift-okd-1 microshift-okd-2; do
111+
echo " - Configuring conntrack on ${node}"
112+
sudo podman exec "${node}" sysctl -w net.netfilter.nf_conntrack_tcp_timeout_time_wait=10
113+
sudo podman exec "${node}" sysctl -w net.netfilter.nf_conntrack_tcp_timeout_close_wait=10
114+
sudo podman exec "${node}" sysctl -w net.netfilter.nf_conntrack_tcp_timeout_established=600
115+
done
116+
97117
- name: Configure hostname resolution for cluster nodes
98118
shell: bash
99119
run: |
@@ -109,7 +129,7 @@ jobs:
109129
ip=$(sudo podman inspect "$node" | jq -r '.[].NetworkSettings.Networks | to_entries[0].value.IPAddress')
110130
if [ -n "$ip" ] && [ "$ip" != "null" ]; then
111131
echo "$ip $node" | sudo tee -a /etc/hosts
112-
echo " Added: $ip $node"
132+
echo " Added: $ip $node"
113133
else
114134
echo "ERROR: Could not get IP address for node: $node"
115135
exit 1
@@ -120,7 +140,7 @@ jobs:
120140
echo "Verifying hostname resolution:"
121141
for node in microshift-okd-1 microshift-okd-2; do
122142
if getent hosts "$node" > /dev/null 2>&1; then
123-
echo " $node resolves successfully"
143+
echo " $node resolves successfully"
124144
else
125145
echo "ERROR: Hostname resolution failed for node: $node"
126146
exit 1

0 commit comments

Comments
 (0)