Change in ovirt-engine[master]: bootstrap: remove MAC address from vds unique id

yzaslavs at redhat.com yzaslavs at redhat.com
Thu Oct 4 05:31:52 UTC 2012


Yair Zaslavsky has submitted this change and it was merged.

Change subject: bootstrap: remove MAC address from vds unique id
......................................................................


bootstrap: remove MAC address from vds unique id

CURRENT IMPLEMENTATION

vds unique id is at format: @BIOS UUID at _@Low(MAC)@

If BIOS UUID was not available either empty or "Not" were used.

PROBLEMS IN CURRENT IMPLEMENTATION

BIOS UUID may be missing or duplicate.

MAC may change either because of bonding (resolved) or
because of physical adapter change.

ASSUMPTION

Hosts with no BIOS UUID or with duplicate UUID are less than 0.05% of
the hosts we manage.

CONCLUSION

No need to add great complexity malformed UUID hosts 0.05%.
But remove the MAC issues from the solution.

METHOD

Remove the MAC address from vds unique id.
Allow to bypass BIOS UUID with configuration.

DETAILS

If /etc/vdsm/vdsm.id exists at host, content is the vds unique id.
If dmidecode -s system-uuid is not '.*Not.*' this is the vds unique id.
Else uuidgen > /var/lib/vdsm/host.id and use this as vds unique id.

engine will strip '_.*' from vdsm unique id reported by vdsm, to allow
communication with older vdsm, and to allow vdsm to continue to
communicate with older engines.

SIDE EFFECTS

If RHEV-H is reinstalled on malformed host (one with no BIOS UUID)
it will be treated as a new host.

RHEV-H without the complimentary vdsm fix will not be able to
register if installed on BIOS that does not support UUID, as it will
not generate logical UUID before registration.

If BIOS contains duplicate UUID, manual intervention should apply,
creating /etc/vdsm/vdsm.id manually.

UPGRADE

During engine-upgrade all vds unique ids will be stripped out from MAC
address.

If there are duplicate vds unique ids or empty ids, warn user and list
IP addresses of these problematic hosts, suggest host reinstall.
Do not allow upgrade to be performed if malformed hosts are not in
maintenance mode.

Change-Id: I4f3e3fa01b4baa4120ffd765ded31c83ba40e299
Signed-off-by: Alon Bar-Lev <alonbl at redhat.com>
---
M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RegisterVdsQuery.java
M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/VdsInstallHelper.java
M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/VdsInstaller.java
M backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/AuditLogType.java
M backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/config/ConfigValues.java
M backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dal/dbbroker/auditloghandling/AuditLogDirector.java
M backend/manager/modules/dal/src/main/resources/bundles/AuditLogMessages.properties
M frontend/wars/rmw-war/src/main/java/org/ovirt/engine/core/register/RegisterServlet.java
M packaging/fedora/setup/engine-upgrade.py
9 files changed, 170 insertions(+), 35 deletions(-)

Approvals:
  Alon Bar-Lev: Verified
  Yair Zaslavsky: Verified; Looks good to me, approved


--
To view, visit http://gerrit.ovirt.org/8125
To unsubscribe, visit http://gerrit.ovirt.org/settings

Gerrit-MessageType: merged
Gerrit-Change-Id: I4f3e3fa01b4baa4120ffd765ded31c83ba40e299
Gerrit-PatchSet: 13
Gerrit-Project: ovirt-engine
Gerrit-Branch: master
Gerrit-Owner: Alon Bar-Lev <alonbl at redhat.com>
Gerrit-Reviewer: Alex Lourie <alourie at redhat.com>
Gerrit-Reviewer: Alon Bar-Lev <alonbl at redhat.com>
Gerrit-Reviewer: Barak Azulay <bazulay at redhat.com>
Gerrit-Reviewer: Dan Kenigsberg <danken at redhat.com>
Gerrit-Reviewer: Doron Fediuck <dfediuck at redhat.com>
Gerrit-Reviewer: Douglas Schilling Landgraf <dougsland at redhat.com>
Gerrit-Reviewer: Eli Mesika <emesika at redhat.com>
Gerrit-Reviewer: Juan Hernandez <juan.hernandez at redhat.com>
Gerrit-Reviewer: Yair Zaslavsky <yzaslavs at redhat.com>



More information about the Engine-commits mailing list