[ovirt-users] changing vm's product serial

Juan Hernández jhernand at redhat.com
Wed Mar 9 11:35:34 UTC 2016


On 03/08/2016 04:57 PM, Nathanaël Blanchet wrote:
> Hi all,
> 
> We've been using templates for months before we realized that "ocs
> report" used Serial Number given into "demidecode -t system" to identify
> a VM as unique.
> This Serial Number is located into
> /sys/devices/virtual/dmi/id/product_serial,  and we'd really want each
> vm to have its own Serial Number instead of the template's one.
> We tried to generate a new id with uuidgen, but it can't be written into
> the product_serial file.
> Is there a simple way to do such a thing?
> Thank you.
> 

You can change the serial number of the VM via the GUI:

  Vms -> Edit -> System -> Provide custom serial number

There you can specify that the VM should have as serial number the id of
the host, the id of the VM, or a custom serial number.

You can do the same with the API. For example, to set a custom serial
number for a specific VM using the Python SDK you can do something like
this:

---8<---
#!/usr/bin/python

from ovirtsdk.api import API
from ovirtsdk.xml import params

# Connect to the server:
api = API(
    url="https://engine.example.com/ovirt-engine/api",
    username="admin at internal",
    password="...",
    ca_file="/etc/pki/ovirt-engine/ca.pem",
    debug=False,
)

# Find the VM:
vm = api.vms.get(name="myvm")

# Set a custom serial number:
vm.set_serial_number(
    params.SerialNumber(
        policy="custom",
        value="yourserial",
    )
)
vm.update()

# Disconnect:
api.disconnect()
--->8---

-- 
Dirección Comercial: C/Jose Bardasano Baos, 9, Edif. Gorbea 3, planta
3ºD, 28016 Madrid, Spain
Inscrita en el Reg. Mercantil de Madrid – C.I.F. B82657941 - Red Hat S.L.



More information about the Users mailing list