Description of problem: With multiple NICs installed udev would sometimes change order in which they were named. This lead to inconsistant network between reboots. The fix was to have udev regenerate the /etc/udev/rules.d/70-persistent-net.rules and run the persist script against it. This file should be persistant by default. Version-Release number of selected component (if applicable): oVirt Node Hypervisor release 2.3.0 (1.0.fc16) How reproducible: 100% Steps to Reproduce: 1. Run /lib/udev/write_net_rules 2. verify /etc/udev/rules.d/70-persistent-net.rules exists 3. reboot 4. /etc/udev/rules.d/70-persistent-net.rules has been removed Actual results: /etc/udev/rules.d/70-persistent-net.rules is removed between reboots Expected results: /etc/udev/rules.d/70-persistent-net.rules should be persistant Additional info:
The problem with this is that persisted files are loaded after udev rules get run (at least I'm pretty sure they are). We can try other things to try to mitigate this problem though.
(In reply to comment #1) > The problem with this is that persisted files are loaded after udev rules > get run (at least I'm pretty sure they are). > > We can try other things to try to mitigate this problem though. It would appear you are correct. Setting the udev rules to be persistant doesn't work because they don't exist when udev is run. I'm going to have to do some hacking on the oVirt Node installation to get this to work. We're running this on some pretty expensive enterprise class hardware with 10Gb NICs. Its not some oddball setup. Standard Linux installations work just fine because they use the udev rules. I understand the need to maintain consistancy accross nodes but this method of mounting the files systems is useless if I have to purposefully break it just to get the system to run. This isn't something that can handled by the engine. If the network doesn't come up it's toast.
Not making 2.5.0, we may be able to handle this by manually editing the image, but not something that's doable in 2.4.0
Notes by mburns for the udev nic mappings: 1. run it during installation and persist the result 2. on boot, bind mount as usual, then run udevadm trigger, then restart network
Implement the behvaior from comment #4 http://gerrit.ovirt.org/5767 Tested: 1. Apply path (by hand) 2. Change rules (change names) in persisted file 3. reboot = New names are used