Merge pull request #1277 from mslacken/EnhanceNetNaming

better udev net rules
This commit is contained in:
Jonathon Anderson
2024-11-13 21:46:34 -07:00
committed by GitHub
6 changed files with 13 additions and 7 deletions

View File

@@ -23,6 +23,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
- Add support for VLANs to NetworkManager, wicked, ifcfg, debian.network_interfaces overlays. #1257 - Add support for VLANs to NetworkManager, wicked, ifcfg, debian.network_interfaces overlays. #1257
- Add support for static routes to NetworkManager, wicked, ifcfg, debian.network_interfaces overlays. #1257 - Add support for static routes to NetworkManager, wicked, ifcfg, debian.network_interfaces overlays. #1257
- Add `wwctl upgrade <config|nodes>`. #230, #517 - Add `wwctl upgrade <config|nodes>`. #230, #517
- Better handling of InfiniBand udev net naming. #1227
### Changed ### Changed
@@ -59,6 +60,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
- Update default `warewulfd` port to match shipped configuration. #1448 - Update default `warewulfd` port to match shipped configuration. #1448
- Replace `olekukonko/tablewriter` with `cheynewallace/tabby`. #1497, #1498 - Replace `olekukonko/tablewriter` with `cheynewallace/tabby`. #1497, #1498
- replaced deprecated errors.Wrapf with fmr.Errorf. #1534 - replaced deprecated errors.Wrapf with fmr.Errorf. #1534
- Rename udev net naming file to 70-persistent-net.rules. #1227
### Removed ### Removed

View File

@@ -14,7 +14,7 @@ func Test_udev_netnameOverlay(t *testing.T) {
env := testenv.New(t) env := testenv.New(t)
defer env.RemoveAll(t) defer env.RemoveAll(t)
env.ImportFile(t, "etc/warewulf/nodes.conf", "nodes.conf") env.ImportFile(t, "etc/warewulf/nodes.conf", "nodes.conf")
env.ImportFile(t, "var/lib/warewulf/overlays/udev.netname/rootfs/etc/udev/rules.d/70-ww4-netname.rules.ww", "../rootfs/etc/udev/rules.d/70-ww4-netname.rules.ww") env.ImportFile(t, "var/lib/warewulf/overlays/udev.netname/rootfs/etc/udev/rules.d/70-persistent-net.rules.ww", "../rootfs/etc/udev/rules.d/70-persistent-net.rules.ww")
tests := []struct { tests := []struct {
name string name string
@@ -23,7 +23,7 @@ func Test_udev_netnameOverlay(t *testing.T) {
}{ }{
{ {
name: "udev.netname", name: "udev.netname",
args: []string{"--render", "node1", "udev.netname", "etc/udev/rules.d/70-ww4-netname.rules.ww"}, args: []string{"--render", "node1", "udev.netname", "etc/udev/rules.d/70-persistent-net.rules.ww"},
log: udev_netname, log: udev_netname,
}, },
} }
@@ -49,7 +49,7 @@ func Test_udev_netnameOverlay(t *testing.T) {
const udev_netname string = `backupFile: true const udev_netname string = `backupFile: true
writeFile: true writeFile: true
Filename: etc/udev/rules.d/70-ww4-netname.rules Filename: etc/udev/rules.d/70-persistent-net.rules
# This file is autogenerated by warewulf # This file is autogenerated by warewulf
SUBSYSTEM=="net", ACTION=="add", ATTR{address}=="e6:92:39:49:7b:03", NAME="wwnet0" SUBSYSTEM=="net", ACTION=="add", ATTR{address}=="e6:92:39:49:7b:03", NAME="wwnet0"

View File

@@ -1,6 +1,10 @@
# This file is autogenerated by warewulf # This file is autogenerated by warewulf
{{range $devname, $netdev := .NetDevs}} {{range $devname, $netdev := .NetDevs}}
{{- if $netdev.Hwaddr }} {{- if $netdev.Hwaddr }}
{{- if eq $netdev.Type "infiniband" }}
SUBSYSTEM=="net", ACTION=="add", ATTR{address}=="?*{{ $netdev.Hwaddr }}", NAME="{{ $netdev.Device }}"
{{- else }}
SUBSYSTEM=="net", ACTION=="add", ATTR{address}=="{{ $netdev.Hwaddr }}", NAME="{{ $netdev.Device }}" SUBSYSTEM=="net", ACTION=="add", ATTR{address}=="{{ $netdev.Hwaddr }}", NAME="{{ $netdev.Device }}"
{{ end -}} {{ end -}}
{{ end -}} {{ end -}}
{{ end -}}

View File

@@ -110,7 +110,7 @@ Node View
n001 init -- (/sbin/init) n001 init -- (/sbin/init)
n001 asset -- -- n001 asset -- --
n001 kerneloverride -- tw n001 kerneloverride -- tw
n001 kernelargs -- (quiet crashkernel=no vga=791 net.naming-scheme=v238) n001 kernelargs -- (quiet crashkernel=no net.ifnames=1)
n001 ipmiaddr -- -- n001 ipmiaddr -- --
n001 ipminetmask -- -- n001 ipminetmask -- --
n001 ipmiport -- -- n001 ipmiport -- --

View File

@@ -94,7 +94,7 @@ You can also see the node's full attribute list by specifying the
n001 init -- (/sbin/init) n001 init -- (/sbin/init)
n001 asset -- -- n001 asset -- --
n001 kerneloverride -- -- n001 kerneloverride -- --
n001 kernelargs -- (quiet crashkernel=no vga=791 net.naming-scheme=v238) n001 kernelargs -- (quiet crashkernel=no net.ifnames=1)
n001 ipmiaddr -- -- n001 ipmiaddr -- --
n001 ipminetmask -- -- n001 ipminetmask -- --
n001 ipmiport -- -- n001 ipmiport -- --
@@ -200,7 +200,7 @@ container, kernel, and network:
n001 init -- (/sbin/init) n001 init -- (/sbin/init)
n001 asset -- -- n001 asset -- --
n001 kerneloverride -- tw n001 kerneloverride -- tw
n001 kernelargs -- (quiet crashkernel=no vga=791 net.naming-scheme=v238) n001 kernelargs -- (quiet crashkernel=no net.ifnames=1)
n001 ipmiaddr -- -- n001 ipmiaddr -- --
n001 ipminetmask -- -- n001 ipminetmask -- --
n001 ipmiport -- -- n001 ipmiport -- --

View File

@@ -122,7 +122,7 @@ You can check the result with ``wwctl node list``.
deliverynet SystemOverlay -- (wwinit,wwclient,fstab,hostname,ssh.host_keys,issue,resolv,udev.netname,systemd.netname,ifcfg,NetworkManager,debian.interfaces,wicked,ignition) deliverynet SystemOverlay -- (wwinit,wwclient,fstab,hostname,ssh.host_keys,issue,resolv,udev.netname,systemd.netname,ifcfg,NetworkManager,debian.interfaces,wicked,ignition)
deliverynet Root -- (initramfs) deliverynet Root -- (initramfs)
deliverynet Init -- (/sbin/init) deliverynet Init -- (/sbin/init)
deliverynet Kernel.Args -- (quiet crashkernel=no vga=791 net.naming-scheme=v238) deliverynet Kernel.Args -- (quiet crashkernel=no net.ifnames=1)
deliverynet Profiles -- default deliverynet Profiles -- default
deliverynet PrimaryNetDev -- (deliver1) deliverynet PrimaryNetDev -- (deliver1)
deliverynet NetDevs[deliver2].Type -- (ethernet) deliverynet NetDevs[deliver2].Type -- (ethernet)