Repository navigation
add sun-k3s nodes and allow FORWARD on hm.sun - #55
Conversation
hm.sun's kvm-host bundle sets bridge-nf-call-iptables=1 and the iptables
bundle defaults FORWARD to DROP, so bridged VM traffic on br0 was dropped.
Enable the same FORWARD accept hm.nuke carries.
The node files are copied from hm.nuke-k3s-prod-{master,worker}-0 with
the 192.168.30.0/24 subnet, gateway 192.168.30.1, k3s network
192.168.30.0/24, and no openvpn-client block.
There was a problem hiding this comment.
The review is complete. Let me consolidate findings.
Changes reviewed:
-
nodes/hm.sun.py— Enables-A FORWARD -j ACCEPTon the sun host, required for KVM bridge networking to function. -
nodes/hm.sun-k3s-master-0.py— New k3s master node at192.168.30.10/24. Follows the established pattern fromhm.nuke-k3s-prod-master-0.py(including thenode-cidr-mask-size=22fix), withopenvpn-clientdeliberately omitted since sun is the gateway itself. -
nodes/hm.sun-k3s-worker-0.py— New k3s worker node at192.168.30.11/24. Same pattern ashm.nuke-k3s-prod-worker-0.pywithagent: True.
The 192.168.30.0/24 subnet matches sun's bridge (br0 at 192.168.30.2/24), so the k3s nodes will be on the same L2 network as their gateway — correct topology.
The plan notes the apt/apt-get update gap is pre-existing debt in the base templates, not introduced by this PR.
{
"verdict": "approve",
"summary": "PR adds two new k3s nodes (master and worker) on the 192.168.30.0/24 subnet behind sun's bridge, and enables FORWARD on sun to allow bridge traffic. The node configurations match established nuke-k3s patterns with the node-cidr-mask-size=22 fix applied to the master. No correctness or security issues found.",
"comments": [],
"concerns_addressed": [
{
"concern": "correctness: apt/apt-get update gap in nodes/hm.sun.py",
"disposition": "not-an-issue",
"detail": "Pre-existing debt in the base templates, not introduced by this PR. The FORWARD rule change is a one-line diff with no apt interaction."
},
{
"concern": "correctness: apt/apt-get update gap in nodes/hm.sun-k3s-master-0.py",
"disposition": "not-an-issue",
"detail": "Known gap from copied base template (hm.nuke-k3s-prod-master-0.py); same issue exists in the source. Not introduced by this PR."
},
{
"concern": "correctness: apt/apt-get update gap in nodes/hm.sun-k3s-worker-0.py",
"disposition": "not-an-issue",
"detail": "Known gap from copied base template (hm.nuke-k3s-prod-worker-0.py); same issue exists in the source. Not introduced by this PR."
}
]
}
What
nodes/hm.sun.py: enable-A FORWARD -j ACCEPT.bundles/kvm-host/files/bridge.confsetsbridge-nf-call-iptables = 1andbundles/iptables/files/rules.v4defaults:FORWARD DROP, so traffic bridged ontobr0was dropped and libvirt VMs on sun were unreachable.hm.nuke.pyalready carries the same rule.nodes/hm.sun-k3s-master-0.py,nodes/hm.sun-k3s-worker-0.py: new nodes for the sun k3s cluster, copied fromhm.nuke-k3s-prod-{master,worker}-0.pywith address192.168.30.10/.11, gateway192.168.30.1,k3s.network192.168.30.0/24, and theopenvpn-clientblock removed.Observed
make precommit(bw test --ignore-missing-faults) passes.bw apply hm.sun -o file:/etc/iptables/rules.v4, theniptables-restoreand the docker reconcile run by hand (-oskips triggers).iptables -S FORWARDnow ends with-A FORWARD -j ACCEPT.bw apply;ssh bborbe@192.168.30.10 hostnamereturnssun-k3s-master-0andssh bborbe@192.168.30.11 hostnamereturnssun-k3s-worker-0.Known gap, not fixed here
On both new nodes
bw verifyreports 24 bad items, all one cause: the apt bundle repoints the sources toftp.uni-stuttgart.debut noapt-get updateruns before installs, so apt finds no candidate (iotop,make,iptables-persistent,monit, ...). As a result the nodes' iptables rules were never written. Re-applying needs coordination with the k3s install now running on them, since the iptables bundle replaces the whole filter table.Test plan
bw verify hm.sunshows the iptables file in sync-A FORWARD -j ACCEPT(netfilter-persistent is installed and enabled there)