You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Clarify backend selection, mention that Oracle Linux uses firewalld, and
reuse the ostests firewalld service snippets, so the documented setup
stays in lockstep with the automated tests.
Signed-off-by: Tom Wieczorek <[email protected]>
(cherry picked from commit 1d1fa31)
Copy file name to clipboardExpand all lines: docs/networking.md
+88-17Lines changed: 88 additions & 17 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -81,35 +81,106 @@ There are [known](https://bugzilla.netfilter.org/show_bug.cgi?id=1632) version i
81
81
82
82
## Firewalld & k0s
83
83
84
-
If you are using [`firewalld`](https://firewalld.org/) on your hosts you need to ensure it is configured to use the same `FirewallBackend` as k0s and other Kubernetes components use. Otherwise networking will be broken in various ways.
84
+
If you are using [firewalld] on your hosts, make sure that it runs with the same
85
+
backend (`nftables` or `iptables`) that k0s and the bundled Kubernetes
86
+
components use. Otherwise, kube-proxy, Kube-router, or Calico will program rules
87
+
in the wrong backend, which will result in a networking failure. You can
88
+
configure the active backend via the `FirewallBackend` option in
89
+
`/etc/firewalld/firewalld.conf`.
85
90
86
-
Here's an example configuration for a tested working networking setup:
91
+
Firewalld is known to be enabled by default in Oracle Linux.
87
92
88
-
```sh
89
-
[root@rhel-test ~]# firewall-cmd --list-all
93
+
Instead of adding individual ports, create dedicated firewalld services for k0s.
94
+
The k0s automated test suite uses the following XML snippets, so using them will
95
+
ensure that your configuration is aligned with our automated validation process:
96
+
97
+
Create the service file for controller nodes in
98
+
`/etc/firewalld/services/k0s-controller.xml` as follows:
99
+
100
+
```xml
101
+
{% include "../hack/ostests/modules/os/k0s-controller.firewalld-service.xml" %}
102
+
```
103
+
104
+
Create the service file for worker nodes in
105
+
`/etc/firewalld/services/k0s-worker.xml` as follows:
106
+
107
+
```xml
108
+
{% include "../hack/ostests/modules/os/k0s-worker.firewalld-service.xml" %}
109
+
```
110
+
111
+
With the services in place, enable them on the nodes. For nodes running
0 commit comments