]> git.proxmox.com Git - ceph.git/commit
fix #5213: ceph-osd postinst: add patch to avoid connection freezes
authorFriedrich Weber <f.weber@proxmox.com>
Thu, 15 Feb 2024 09:40:54 +0000 (10:40 +0100)
committerThomas Lamprecht <t.lamprecht@proxmox.com>
Thu, 15 Feb 2024 13:01:02 +0000 (14:01 +0100)
commite45d466e439c97e3f9783f826e6bfd381afaf5ee
tree57251b52327b5f2bbfed84da8c840a0a5f2246c2
parent7bd13736e11292a34271282ec56d44f321e1a7f1
fix #5213: ceph-osd postinst: add patch to avoid connection freezes

Assume there is an open TCP connection to a VM, and ceph-osd is
installed/upgraded on the host on which the PVE firewall is active.
Currently, ceph-osd postinst reloads all sysctl settings. Thus,
installing/upgrading ceph-osd will set the sysctl setting
`net.bridge.bridge-nf-call-iptables` to 0. The PVE firewall will flip
the setting back to 1 in its next iteration (in <10 seconds). But
while the setting is 0, conntrack will not see packets of the existing
TCP connection. When the setting is flipped back to 1, conntrack will
see packets again, but may consider the seq/ack numbers of new packets
out-of-window, mark them as invalid and drop them. This will freeze
the TCP connection.

To avoid this, add a patch that modifies the ceph-osd postinst to only
apply settings from the sysctl settings file shipped with ceph-osd,
and only apply them on fresh install. As the ceph-osd sysctl settings
do not set `net.bridge.bridge-nf-call-iptables`, this will avoid the
temporary flip to 0 when installing/upgrading ceph-osd.

Signed-off-by: Friedrich Weber <f.weber@proxmox.com>
patches/0015-ceph-osd-postinst-avoid-reloading-all-sysctl-setting.patch [new file with mode: 0644]
patches/series