Невозможно сохранить настраиваемое правило iptables KUBE-FORWARD в кубернетах - PullRequest
2 голосов
/ 17 июня 2020

Я использую kubernetes 1.11.6, и у меня возникает проблема сброса соединения. Для этого исправления ниже в блоге рекомендуется добавить правило iptables. Когда пытаюсь добавить правило. он автоматически смылся. Я предполагаю, что это делается с помощью kube-proxy

https://medium.com/swlh/fix-a-random-network-connection-reset-issue-in-docker-kubernetes-5c57a11de170

iptables -I KUBE-FORWARD 1 -m conntrack --ctstate INVALID -j DROP
iptables -t filter -L KUBE-FORWARD --line-numbers -n

Chain KUBE-FORWARD (1 references)
num  target     prot opt source               destination
1    DROP       all  --  0.0.0.0/0            0.0.0.0/0            ctstate INVALID
2    ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0            /* kubernetes forwarding rules */ mark match 0x4000/0x4000
3    ACCEPT     all  --  10.42.0.0/16         0.0.0.0/0            /* kubernetes forwarding conntrack pod source rule */ ctstate RELATED,ESTABLISHED
4    ACCEPT     all  --  0.0.0.0/0            10.42.0.0/16         /* kubernetes forwarding conntrack pod destination rule */ ctstate RELATED,ESTABLISHED

Через некоторое время я вижу, что он исчез.

iptables -t filter -L KUBE-FORWARD --line-numbers -n
Chain KUBE-FORWARD (1 references)
num  target     prot opt source               destination
1    ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0            /* kubernetes forwarding rules */ mark match 0x4000/0x4000
2    ACCEPT     all  --  10.42.0.0/16         0.0.0.0/0            /* kubernetes forwarding conntrack pod source rule */ ctstate RELATED,ESTABLISHED
3    ACCEPT     all  --  0.0.0.0/0            10.42.0.0/16         /* kubernetes forwarding conntrack pod destination rule */ ctstate RELATED,ESTABLISHED

Я пытаюсь сохранить вышеуказанное правило.

1 Ответ

0 голосов
/ 25 июня 2020

Вы можете попробовать использовать iptables-persistent .

Установите его, выполнив: apt-get install iptables-persistent, и все созданные в настоящее время правила iptables будут сохранены в соответствующих IPv4 и IPv6:

/etc/iptables/rules.v4

/etc/iptables/rules.v6

Чтобы обновить постоянные iptables новыми правилами, просто используйте команду iptables, чтобы включить новые правила в вашу систему. Чтобы сделать изменения постоянными после перезагрузки, выполните команду iptables-save:

iptables-save > /etc/iptables/rules.v4

OR

ip6tables-save > /etc/iptables/rules.v6

Здесь это еще одно руководство по этому topi c.

Кроме того, версия Kubernetes, которую вы используете, довольно старая. Подумайте о переходе на более современную версию.

Пожалуйста, дайте мне знать, помогло ли это.

...