Bug 824595

Summary: /etc/udev/rules.d/70-persistent-net.rules not persistant by default
Product: [Retired] oVirt Reporter: Jacob Wyatt <jwyatt>
Component: ovirt-nodeAssignee: Fabian Deutsch <fdeutsch>
Status: CLOSED CURRENTRELEASE QA Contact:
Severity: high Docs Contact:
Priority: unspecified    
Version: unspecifiedCC: acathrow, dyasny, jboggs, maverick.pt, mburns, mgoldboi, ovirt-bugs, ovirt-maint
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Unspecified   
Whiteboard:
Fixed In Version: 2.5.0 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2012-08-09 11:47:55 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 831658    

Description Jacob Wyatt 2012-05-23 19:48:28 UTC
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:

Comment 1 Mike Burns 2012-05-23 22:28:51 UTC
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.

Comment 2 Jacob Wyatt 2012-05-29 16:51:03 UTC
(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.

Comment 3 Mike Burns 2012-06-04 09:18:19 UTC
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

Comment 4 Fabian Deutsch 2012-06-22 14:24:24 UTC
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

Comment 5 Fabian Deutsch 2012-06-28 09:49:33 UTC
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