Skip to content

Commit f5b056f

Browse files
committed
Disable TCP early demux when pod-eni is enabled
1 parent 0d3daa5 commit f5b056f

File tree

6 files changed

+29
-5
lines changed

6 files changed

+29
-5
lines changed

config/master/aws-k8s-cni-cn.yaml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -193,7 +193,10 @@
193193
"name": "xtables-lock"
194194
"hostNetwork": true
195195
"initContainers":
196-
- "image": "961992271922.dkr.ecr.cn-northwest-1.amazonaws.com.cn/amazon-k8s-cni-init:latest"
196+
- "env":
197+
- "name": "DISABLE_TCP_EARLY_DEMUX"
198+
"value": "false"
199+
"image": "961992271922.dkr.ecr.cn-northwest-1.amazonaws.com.cn/amazon-k8s-cni-init:latest"
197200
"imagePullPolicy": "Always"
198201
"name": "aws-vpc-cni-init"
199202
"securityContext":

config/master/aws-k8s-cni-us-gov-east-1.yaml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -193,7 +193,10 @@
193193
"name": "xtables-lock"
194194
"hostNetwork": true
195195
"initContainers":
196-
- "image": "151742754352.dkr.ecr.us-gov-east-1.amazonaws.com/amazon-k8s-cni-init:latest"
196+
- "env":
197+
- "name": "DISABLE_TCP_EARLY_DEMUX"
198+
"value": "false"
199+
"image": "151742754352.dkr.ecr.us-gov-east-1.amazonaws.com/amazon-k8s-cni-init:latest"
197200
"imagePullPolicy": "Always"
198201
"name": "aws-vpc-cni-init"
199202
"securityContext":

config/master/aws-k8s-cni-us-gov-west-1.yaml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -193,7 +193,10 @@
193193
"name": "xtables-lock"
194194
"hostNetwork": true
195195
"initContainers":
196-
- "image": "013241004608.dkr.ecr.us-gov-west-1.amazonaws.com/amazon-k8s-cni-init:latest"
196+
- "env":
197+
- "name": "DISABLE_TCP_EARLY_DEMUX"
198+
"value": "false"
199+
"image": "013241004608.dkr.ecr.us-gov-west-1.amazonaws.com/amazon-k8s-cni-init:latest"
197200
"imagePullPolicy": "Always"
198201
"name": "aws-vpc-cni-init"
199202
"securityContext":

config/master/aws-k8s-cni.yaml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -193,7 +193,10 @@
193193
"name": "xtables-lock"
194194
"hostNetwork": true
195195
"initContainers":
196-
- "image": "602401143452.dkr.ecr.us-west-2.amazonaws.com/amazon-k8s-cni-init:latest"
196+
- "env":
197+
- "name": "DISABLE_TCP_EARLY_DEMUX"
198+
"value": "false"
199+
"image": "602401143452.dkr.ecr.us-west-2.amazonaws.com/amazon-k8s-cni-init:latest"
197200
"imagePullPolicy": "Always"
198201
"name": "aws-vpc-cni-init"
199202
"securityContext":

config/master/manifests.jsonnet

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -227,6 +227,11 @@ local awsnode = {
227227
image: "%s/amazon-k8s-cni-init:%s" % [$.ecrRepo, $.version],
228228
imagePullPolicy: "Always",
229229
securityContext: {privileged: true},
230+
env: [
231+
{
232+
name: "DISABLE_TCP_EARLY_DEMUX", value: "false",
233+
},
234+
],
230235
volumeMounts: [
231236
{mountPath: "/host/opt/cni/bin", name: "cni-bin-dir"},
232237
],

scripts/init.sh

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,14 @@ TOKEN=$(curl -X PUT "http://169.254.169.254/latest/api/token" -H "X-aws-ec2-meta
2727
HOST_IP=$(curl -H "X-aws-ec2-metadata-token: $TOKEN" http://169.254.169.254/latest/meta-data/local-ipv4)
2828
PRIMARY_IF=$(ip -4 -o a | grep "$HOST_IP" | awk '{print $2}')
2929
sysctl -w "net.ipv4.conf.$PRIMARY_IF.rp_filter=2"
30-
3130
cat "/proc/sys/net/ipv4/conf/$PRIMARY_IF/rp_filter"
3231

32+
# Set DISABLE_TCP_EARLY_DEMUX to true to enable kubelet to pod-eni TCP communication
33+
# https://lwn.net/Articles/503420/ and https://github.com/aws/amazon-vpc-cni-k8s/pull/1212 for background
34+
if [ "${DISABLE_TCP_EARLY_DEMUX:-false}" == "true" ]; then
35+
sysctl -w "net.ipv4.tcp_early_demux=0"
36+
else
37+
sysctl -w "net.ipv4.tcp_early_demux=1"
38+
fi
39+
3340
echo "CNI init container done"

0 commit comments

Comments
 (0)