-
Notifications
You must be signed in to change notification settings - Fork 18.7k
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
issues with swarm encrypted overlay network and iptables-nft on RHEL 8+ #43382
Comments
@luca-heitmann Hello! After a kernel rolled back (5.17.3-> 4.18.0) during a system update, I had the same issue. It all works like a clockwork after reverting to the "5. X" kernel. |
This is because RHEL 8.x and other variants (Rocky, CentOS) do not include |
@xinfengliu we have the same error messages with iptables after sudo dnf install kernel-modules-extra. RHEL 8 |
I would suggest upgrading to the latest kernel. |
Thanks for answer johnbizokk and xinfengliu. Our version is: 4.18.0-372.9.1.el8.x86_64 |
RedHat decided to deprecate the |
This issue became, and was fixed during the remediation of: |
Description
We see errors in the journal log when creating an encrypted overlay network with RHEL 8.5 and Docker 20.10. I created an test environment with two Rocky Linux 8.5 VMs where the issue is reproducible (see below). As Mirantis does not support RHEL 8.5 for Docker 20.10 yet, I also verified that the issue is reproducible with Rocky 8.4.
The errors in the log show that some iptables rules cannot be created. The reason seems to be u32 extension was deprecated in RHEL 8: https://bugzilla.redhat.com/show_bug.cgi?id=2061288
The encrypted overlay network seem to use u32:
moby/libnetwork/drivers/overlay/encryption.go
Line 211 in 2b70006
I am not an expert and don't fully understand the consequences of the missing iptables/nftables rules. In the test environment, I cannot detect any misbehavior of the routing mesh or other components.
Steps to reproduce the issue:
docker stack deploy -c stack.yml test-stack
on a system which uses nftables:journalctl
Describe the results you received:
Found these errors when executing
journalctl
:Describe the results you expected:
not having these errors
Additional information you deem important (e.g. issue happens only occasionally):
Output of
docker version
:Output of
docker info
:Additional environment details (AWS, VirtualBox, physical, etc.):
I use the following Vagrantfile in my test environment:
this bootstrap.sh file is used to provision the VMs:
If you have vagrant with VirtualBox set up and want to use this configuration:
Edit: I just noticed that Mirantis does not support RHEL 8.5 but 8.4. So I changed the test environment to Rocky 8.4 and verified that the issue is also reproducible there.
The text was updated successfully, but these errors were encountered: