From 6533eb3514928f797c00fd61cb841483bd22c314 Mon Sep 17 00:00:00 2001 From: Igor Zachinyaev Date: Thu, 4 Apr 2024 10:33:47 +0300 Subject: [PATCH 1/2] Changed MTU to 1430 --- documentation/Troubleshooting.md | 4 ++-- kubemarine/plugins/yaml/calico-v3.22.2-original.yaml | 2 +- kubemarine/plugins/yaml/calico-v3.24.2-original.yaml | 2 +- kubemarine/plugins/yaml/calico-v3.25.1-original.yaml | 2 +- kubemarine/plugins/yaml/calico-v3.26.1-original.yaml | 2 +- kubemarine/plugins/yaml/calico-v3.26.4-original.yaml | 2 +- kubemarine/plugins/yaml/calico-v3.27.0-original.yaml | 2 +- kubemarine/resources/configurations/defaults.yaml | 2 +- kubemarine/resources/schemas/definitions/plugins/calico.json | 2 +- test/unit/plugins/test_calico.py | 2 +- 10 files changed, 11 insertions(+), 11 deletions(-) diff --git a/documentation/Troubleshooting.md b/documentation/Troubleshooting.md index 575602499..b7241f168 100644 --- a/documentation/Troubleshooting.md +++ b/documentation/Troubleshooting.md @@ -323,11 +323,11 @@ kubectl patch crontab/my-new-cron-object -p '{"metadata":{"finalizers":[]}}' --t **Solution**: To change MTU size to required value run following command on any control-plane node: ``` -# kubectl patch configmap/calico-config -n kube-system --type merge -p '{"data":{"veth_mtu": "1440"}}' +# kubectl patch configmap/calico-config -n kube-system --type merge -p '{"data":{"veth_mtu": "1430"}}' ``` where: - - **1440** is the size of MTU. For MTU 1450 on interface eth0 you should set MTU size 1430 for calico-config. + - **1430** is the size of MTU. For MTU 1450 on interface eth0 you should set MTU size 1430 for calico-config. After updating the ConfigMap, perform a rolling restart of all calico/node pods. For example: diff --git a/kubemarine/plugins/yaml/calico-v3.22.2-original.yaml b/kubemarine/plugins/yaml/calico-v3.22.2-original.yaml index 3d8c77579..6d61e3d7b 100644 --- a/kubemarine/plugins/yaml/calico-v3.22.2-original.yaml +++ b/kubemarine/plugins/yaml/calico-v3.22.2-original.yaml @@ -974,7 +974,7 @@ spec: type: boolean ipipMTU: description: 'IPIPMTU is the MTU to set on the tunnel device. See - Configuring MTU [Default: 1440]' + Configuring MTU [Default: 1430]' type: integer ipsetsRefreshInterval: description: 'IpsetsRefreshInterval is the period at which Felix re-checks diff --git a/kubemarine/plugins/yaml/calico-v3.24.2-original.yaml b/kubemarine/plugins/yaml/calico-v3.24.2-original.yaml index 84f8e1454..c2320910e 100644 --- a/kubemarine/plugins/yaml/calico-v3.24.2-original.yaml +++ b/kubemarine/plugins/yaml/calico-v3.24.2-original.yaml @@ -1154,7 +1154,7 @@ spec: type: boolean ipipMTU: description: 'IPIPMTU is the MTU to set on the tunnel device. See - Configuring MTU [Default: 1440]' + Configuring MTU [Default: 1430]' type: integer ipsetsRefreshInterval: description: 'IpsetsRefreshInterval is the period at which Felix re-checks diff --git a/kubemarine/plugins/yaml/calico-v3.25.1-original.yaml b/kubemarine/plugins/yaml/calico-v3.25.1-original.yaml index 0d5009f19..8603d2c0b 100644 --- a/kubemarine/plugins/yaml/calico-v3.25.1-original.yaml +++ b/kubemarine/plugins/yaml/calico-v3.25.1-original.yaml @@ -1204,7 +1204,7 @@ spec: type: boolean ipipMTU: description: 'IPIPMTU is the MTU to set on the tunnel device. See - Configuring MTU [Default: 1440]' + Configuring MTU [Default: 1430]' type: integer ipsetsRefreshInterval: description: 'IpsetsRefreshInterval is the period at which Felix re-checks diff --git a/kubemarine/plugins/yaml/calico-v3.26.1-original.yaml b/kubemarine/plugins/yaml/calico-v3.26.1-original.yaml index 894970ae2..4d56bfd98 100644 --- a/kubemarine/plugins/yaml/calico-v3.26.1-original.yaml +++ b/kubemarine/plugins/yaml/calico-v3.26.1-original.yaml @@ -1347,7 +1347,7 @@ spec: type: boolean ipipMTU: description: 'IPIPMTU is the MTU to set on the tunnel device. See - Configuring MTU [Default: 1440]' + Configuring MTU [Default: 1430]' type: integer ipsetsRefreshInterval: description: 'IpsetsRefreshInterval is the period at which Felix re-checks diff --git a/kubemarine/plugins/yaml/calico-v3.26.4-original.yaml b/kubemarine/plugins/yaml/calico-v3.26.4-original.yaml index 625bc7ea3..fa1a4f7eb 100644 --- a/kubemarine/plugins/yaml/calico-v3.26.4-original.yaml +++ b/kubemarine/plugins/yaml/calico-v3.26.4-original.yaml @@ -1347,7 +1347,7 @@ spec: type: boolean ipipMTU: description: 'IPIPMTU is the MTU to set on the tunnel device. See - Configuring MTU [Default: 1440]' + Configuring MTU [Default: 1430]' type: integer ipsetsRefreshInterval: description: 'IpsetsRefreshInterval is the period at which Felix re-checks diff --git a/kubemarine/plugins/yaml/calico-v3.27.0-original.yaml b/kubemarine/plugins/yaml/calico-v3.27.0-original.yaml index 53e7ccb83..f6735a341 100644 --- a/kubemarine/plugins/yaml/calico-v3.27.0-original.yaml +++ b/kubemarine/plugins/yaml/calico-v3.27.0-original.yaml @@ -1421,7 +1421,7 @@ spec: type: boolean ipipMTU: description: 'IPIPMTU is the MTU to set on the tunnel device. See - Configuring MTU [Default: 1440]' + Configuring MTU [Default: 1430]' type: integer ipsetsRefreshInterval: description: 'IpsetsRefreshInterval is the period at which Felix re-checks diff --git a/kubemarine/resources/configurations/defaults.yaml b/kubemarine/resources/configurations/defaults.yaml index 36e23dcc8..05e90d9ac 100644 --- a/kubemarine/resources/configurations/defaults.yaml +++ b/kubemarine/resources/configurations/defaults.yaml @@ -567,7 +567,7 @@ plugins: mode: ipip crossSubnet: true natOutgoing: true - mtu: 1440 + mtu: 1430 fullmesh: true announceServices: false defaultAsNumber: 64512 diff --git a/kubemarine/resources/schemas/definitions/plugins/calico.json b/kubemarine/resources/schemas/definitions/plugins/calico.json index 6a6f46bb3..6c47982f3 100644 --- a/kubemarine/resources/schemas/definitions/plugins/calico.json +++ b/kubemarine/resources/schemas/definitions/plugins/calico.json @@ -27,7 +27,7 @@ }, "mtu": { "type": "integer", - "default": 1440, + "default": 1430, "description": "MTU size for Calico interface" }, "fullmesh": { diff --git a/test/unit/plugins/test_calico.py b/test/unit/plugins/test_calico.py index 541f5d9ea..ab7916a12 100644 --- a/test/unit/plugins/test_calico.py +++ b/test/unit/plugins/test_calico.py @@ -61,7 +61,7 @@ def test_common_enrichment(self): def _test_common_calico_config(self, manifest: Manifest): data = self.get_obj(manifest, "ConfigMap_calico-config")['data'] - self.assertEqual('1440', data['veth_mtu'], + self.assertEqual('1430', data['veth_mtu'], "Unexpected veth_mtu configuration in calico-config ConfigMap") def _test_deployment_calico_kube_controllers(self, manifest: Manifest, k8s_version: str): From 386e79a1de26cb3815e319c6768f75a81fa8292f Mon Sep 17 00:00:00 2001 From: Igor Zachinyaev Date: Tue, 9 Apr 2024 15:32:21 +0300 Subject: [PATCH 2/2] Replace MTU 1430 to 1440 in original Calico manifests --- kubemarine/plugins/yaml/calico-v3.22.2-original.yaml | 2 +- kubemarine/plugins/yaml/calico-v3.24.2-original.yaml | 2 +- kubemarine/plugins/yaml/calico-v3.25.1-original.yaml | 2 +- kubemarine/plugins/yaml/calico-v3.26.1-original.yaml | 2 +- kubemarine/plugins/yaml/calico-v3.26.4-original.yaml | 2 +- kubemarine/plugins/yaml/calico-v3.27.0-original.yaml | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) diff --git a/kubemarine/plugins/yaml/calico-v3.22.2-original.yaml b/kubemarine/plugins/yaml/calico-v3.22.2-original.yaml index 6d61e3d7b..3d8c77579 100644 --- a/kubemarine/plugins/yaml/calico-v3.22.2-original.yaml +++ b/kubemarine/plugins/yaml/calico-v3.22.2-original.yaml @@ -974,7 +974,7 @@ spec: type: boolean ipipMTU: description: 'IPIPMTU is the MTU to set on the tunnel device. See - Configuring MTU [Default: 1430]' + Configuring MTU [Default: 1440]' type: integer ipsetsRefreshInterval: description: 'IpsetsRefreshInterval is the period at which Felix re-checks diff --git a/kubemarine/plugins/yaml/calico-v3.24.2-original.yaml b/kubemarine/plugins/yaml/calico-v3.24.2-original.yaml index c2320910e..84f8e1454 100644 --- a/kubemarine/plugins/yaml/calico-v3.24.2-original.yaml +++ b/kubemarine/plugins/yaml/calico-v3.24.2-original.yaml @@ -1154,7 +1154,7 @@ spec: type: boolean ipipMTU: description: 'IPIPMTU is the MTU to set on the tunnel device. See - Configuring MTU [Default: 1430]' + Configuring MTU [Default: 1440]' type: integer ipsetsRefreshInterval: description: 'IpsetsRefreshInterval is the period at which Felix re-checks diff --git a/kubemarine/plugins/yaml/calico-v3.25.1-original.yaml b/kubemarine/plugins/yaml/calico-v3.25.1-original.yaml index 8603d2c0b..0d5009f19 100644 --- a/kubemarine/plugins/yaml/calico-v3.25.1-original.yaml +++ b/kubemarine/plugins/yaml/calico-v3.25.1-original.yaml @@ -1204,7 +1204,7 @@ spec: type: boolean ipipMTU: description: 'IPIPMTU is the MTU to set on the tunnel device. See - Configuring MTU [Default: 1430]' + Configuring MTU [Default: 1440]' type: integer ipsetsRefreshInterval: description: 'IpsetsRefreshInterval is the period at which Felix re-checks diff --git a/kubemarine/plugins/yaml/calico-v3.26.1-original.yaml b/kubemarine/plugins/yaml/calico-v3.26.1-original.yaml index 4d56bfd98..894970ae2 100644 --- a/kubemarine/plugins/yaml/calico-v3.26.1-original.yaml +++ b/kubemarine/plugins/yaml/calico-v3.26.1-original.yaml @@ -1347,7 +1347,7 @@ spec: type: boolean ipipMTU: description: 'IPIPMTU is the MTU to set on the tunnel device. See - Configuring MTU [Default: 1430]' + Configuring MTU [Default: 1440]' type: integer ipsetsRefreshInterval: description: 'IpsetsRefreshInterval is the period at which Felix re-checks diff --git a/kubemarine/plugins/yaml/calico-v3.26.4-original.yaml b/kubemarine/plugins/yaml/calico-v3.26.4-original.yaml index fa1a4f7eb..625bc7ea3 100644 --- a/kubemarine/plugins/yaml/calico-v3.26.4-original.yaml +++ b/kubemarine/plugins/yaml/calico-v3.26.4-original.yaml @@ -1347,7 +1347,7 @@ spec: type: boolean ipipMTU: description: 'IPIPMTU is the MTU to set on the tunnel device. See - Configuring MTU [Default: 1430]' + Configuring MTU [Default: 1440]' type: integer ipsetsRefreshInterval: description: 'IpsetsRefreshInterval is the period at which Felix re-checks diff --git a/kubemarine/plugins/yaml/calico-v3.27.0-original.yaml b/kubemarine/plugins/yaml/calico-v3.27.0-original.yaml index f6735a341..53e7ccb83 100644 --- a/kubemarine/plugins/yaml/calico-v3.27.0-original.yaml +++ b/kubemarine/plugins/yaml/calico-v3.27.0-original.yaml @@ -1421,7 +1421,7 @@ spec: type: boolean ipipMTU: description: 'IPIPMTU is the MTU to set on the tunnel device. See - Configuring MTU [Default: 1430]' + Configuring MTU [Default: 1440]' type: integer ipsetsRefreshInterval: description: 'IpsetsRefreshInterval is the period at which Felix re-checks