Cinderlib RBD ceph template issues
by Sketch
This is on oVirt 4.4.8, engine on CS8, hosts on C8, cluster and DC are
both set to 4.6.
With a newly configured cinderlib/ceph RBD setup. I can create new VM
images, and copy existing VM images, but I can't copy existing template
images to RBD. When I do, I try, I get this error in cinderlib.log (see
below), which sounds like the disk already exists there, but it definitely
does not. This leaves me unable to create new VMs on RBD, only migrate
existing VM disks.
2021-09-01 04:31:05,881 - cinder.volume.driver - INFO - Driver hasn't implemented _init_vendor_properties()
2021-09-01 04:31:05,882 - cinderlib-client - INFO - Creating volume '0e8b9aca-1eb1-4837-ac9e-cb3d8f4c1676', with size '500' GB [5c5d0a6b]
2021-09-01 04:31:05,943 - cinderlib-client - ERROR - Failure occurred when trying to run command 'create_volume': Entity '<class 'cinder.db.sqlalchemy.models.Volume'>' has no property 'glance_metadata' [5c5d0a6b]
2021-09-01 04:31:05,944 - cinder - CRITICAL - Unhandled error
Traceback (most recent call last):
File "/usr/lib/python3.6/site-packages/cinderlib/objects.py", line 455, in create
self._raise_with_resource()
File "/usr/lib/python3.6/site-packages/cinderlib/objects.py", line 222, in _raise_with_resource
six.reraise(*exc_info)
File "/usr/lib/python3.6/site-packages/six.py", line 703, in reraise
raise value
File "/usr/lib/python3.6/site-packages/cinderlib/objects.py", line 448, in create
model_update = self.backend.driver.create_volume(self._ovo)
File "/usr/lib/python3.6/site-packages/cinder/volume/drivers/rbd.py", line 986, in create_volume
features=client.features)
File "/usr/lib/python3.6/site-packages/eventlet/tpool.py", line 190, in doit
result = proxy_call(self._autowrap, f, *args, **kwargs)
File "/usr/lib/python3.6/site-packages/eventlet/tpool.py", line 148, in proxy_call
rv = execute(f, *args, **kwargs)
File "/usr/lib/python3.6/site-packages/eventlet/tpool.py", line 129, in execute
six.reraise(c, e, tb)
File "/usr/lib/python3.6/site-packages/six.py", line 703, in reraise
raise value
File "/usr/lib/python3.6/site-packages/eventlet/tpool.py", line 83, in tworker
rv = meth(*args, **kwargs)
File "rbd.pyx", line 629, in rbd.RBD.create
rbd.ImageExists: [errno 17] RBD image already exists (error creating image)
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/lib64/python3.6/site-packages/sqlalchemy/orm/base.py", line 399, in _entity_descriptor
return getattr(entity, key)
AttributeError: type object 'Volume' has no attribute 'glance_metadata'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "./cinderlib-client.py", line 170, in main
args.command(args)
File "./cinderlib-client.py", line 208, in create_volume
backend.create_volume(int(args.size), id=args.volume_id)
File "/usr/lib/python3.6/site-packages/cinderlib/cinderlib.py", line 175, in create_volume
vol.create()
File "/usr/lib/python3.6/site-packages/cinderlib/objects.py", line 457, in create
self.save()
File "/usr/lib/python3.6/site-packages/cinderlib/objects.py", line 628, in save
self.persistence.set_volume(self)
File "/usr/lib/python3.6/site-packages/cinderlib/persistence/dbms.py", line 254, in set_volume
self.db.volume_update(objects.CONTEXT, volume.id, changed)
File "/usr/lib/python3.6/site-packages/cinder/db/sqlalchemy/api.py", line 236, in wrapper
return f(*args, **kwargs)
File "/usr/lib/python3.6/site-packages/cinder/db/sqlalchemy/api.py", line 184, in wrapper
return f(*args, **kwargs)
File "/usr/lib/python3.6/site-packages/cinder/db/sqlalchemy/api.py", line 2570, in volume_update
result = query.filter_by(id=volume_id).update(values)
File "/usr/lib64/python3.6/site-packages/sqlalchemy/orm/query.py", line 3818, in update
update_op.exec_()
File "/usr/lib64/python3.6/site-packages/sqlalchemy/orm/persistence.py", line 1670, in exec_
self._do_pre_synchronize()
File "/usr/lib64/python3.6/site-packages/sqlalchemy/orm/persistence.py", line 1743, in _do_pre_synchronize
self._additional_evaluators(evaluator_compiler)
File "/usr/lib64/python3.6/site-packages/sqlalchemy/orm/persistence.py", line 1912, in _additional_evaluators
values = self._resolved_values_keys_as_propnames
File "/usr/lib64/python3.6/site-packages/sqlalchemy/orm/persistence.py", line 1831, in _resolved_values_keys_as_propnames
for k, v in self._resolved_values:
File "/usr/lib64/python3.6/site-packages/sqlalchemy/orm/persistence.py", line 1818, in _resolved_values
desc = _entity_descriptor(self.mapper, k)
File "/usr/lib64/python3.6/site-packages/sqlalchemy/orm/base.py", line 402, in _entity_descriptor
"Entity '%s' has no property '%s'" % (description, key)
sqlalchemy.exc.InvalidRequestError: Entity '<class 'cinder.db.sqlalchemy.models.Volume'>' has no property 'glance_metadata'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "./cinderlib-client.py", line 390, in <module>
sys.exit(main(sys.argv[1:]))
File "./cinderlib-client.py", line 176, in main
sys.stderr.write(traceback.format_exc(e))
File "/usr/lib64/python3.6/traceback.py", line 167, in format_exc
return "".join(format_exception(*sys.exc_info(), limit=limit, chain=chain))
File "/usr/lib64/python3.6/traceback.py", line 121, in format_exception
type(value), value, tb, limit=limit).format(chain=chain))
File "/usr/lib64/python3.6/traceback.py", line 498, in __init__
_seen=_seen)
File "/usr/lib64/python3.6/traceback.py", line 498, in __init__
_seen=_seen)
File "/usr/lib64/python3.6/traceback.py", line 509, in __init__
capture_locals=capture_locals)
File "/usr/lib64/python3.6/traceback.py", line 338, in extract
if limit >= 0:
TypeError: '>=' not supported between instances of 'InvalidRequestError' and 'int'
2 years, 2 months
Import an exported VM using Ansible
by paolo@airaldi.it
Hello everybody!
I'm trying to automate a copy of a VM from one Datacenter to another using an Ansible.playbook.
I'm able to:
- Create a snapshot of the source VM
- create a clone from the snapshot
- remove the snapshot
- attach an Export Domain
- export the clone to the Export Domain
- remove the clone
- detach the Export domain from the source Datacenter and attach to the destination.
Unfortunately I cannot find a module to:
- import the VM from the Export Domain
- delete the VM image from the Export Domain.
Any hint on how to do that?
Thanks in advance. Cheers.
Paolo
PS: if someone is interested I can share the playbook.
2 years, 3 months
give cloud-init the VM name
by Luca Contessa
Hi list,
I have an oVirt node 4.4.9 installation with hyperconverged structure, on which i've created a pool of Linux VM (CentOS Stream 8).
I would like set as hostname the name of the VM + a static suffix appended at the end of the name (EXAMPLE: <VM name>.static.suffix ), is there a way to pass to cloud-init the name of the VM and do this via cloud-init?
I've tried to look for something in oVirt and cloud-init documentation and found nothing.
Thanks a lot to everybody for the help and have a nice day.
2 years, 3 months
did 4.3.9 reset bug https://bugzilla.redhat.com/show_bug.cgi?id=1590266
by kelley bryan
I am experiencing the error message in the ovirt-hosted-engine-setup-ansible-create_target_vm log
{2020-05-06 14:15:30,024-0500 ERROR ansible failed {'status': 'FAILED', 'ansible_type': 'task', 'ansible_task': u"Fail if Engine IP is different from engine's he_fqdn resolved IP", 'ansible_result': u'type: <type \'dict\'>\nstr: {\'msg\': u"Engine VM IP address is while the engine\'s he_fqdn ovirt1-engine.kelleykars.org resolves to 192.168.122.2. If you are using DHCP, check your DHCP reservation configuration", \'changed\': False, \'_ansible_no_log\': False}', 'task_duration': 1, 'ansible_host': u'localhost', 'ansible_playbook': u'/usr/share/ovirt-hosted-engine-setup/ansible/trigger_role.yml'}}:Q!
The bug 1590266 says it should report the engine VM IP address xxx.xxx.xxx.xxx while the Engines he_fqdn is xxxxxxxxx
I need to see what it thins is wrong as both dig fqdn engine name and dig -x ip return the correct information.
Now this bug looks like it may play but I don't see the failed rediness check in the this log https://access.redhat.com/solutions/4462431
or is it because the vm fails or dies or ???
2 years, 3 months
Help installing oVirt on single machine, without cockpit
by Cameronsplaze222@gmail.com
I'm trying to install both the oVirt engine (so I have the API), and hypervisor on the same machine. I'm hoping I don't need cockpit, and I can write some custom scripts to manage oVirt through the API. I tried a couple ways, and both were blocked:
# on CentOS 9 stream, installing oVirt engine:
On a fresh CentOS install, tried following the directions [here](https://www.ovirt.org/documentation/installing_ovirt_as_a_standalon.... They failed at step 3.2, when adding the modules (missing groups or modules). Tried skipping it, but step 3.3.2 failed when running `dnf install ovirt-engine`, package couldn't be found. The closest package I see is `ovirt-hosted-engine-setup-2.5.4-1.el9.noarch`. Is that what I want?
# On oVirt node, installing engine:
Couldn't get the networking working, even though I added it during the install process. Also tried wired connection, and no luck. Blocked early on, but read this was SUPER minimal anyway, so maybe this wasn't the right path.
I'm just trying to have a working API, along side the hypervisor to run vm's, both on the same machine. I'm down to go a third way too, if anyone has any ideas. Thanks!
2 years, 3 months
After upgrade to vdsm-4.40.90.4-1.el8 - Internal JSON-RPC error - how to fix?
by John Mortensen
Hi,
After we upgraded to vdsm-4.40.90.4-1.el8 on our two node cluster two things has happned:
1. First node that was upgraded now continuously logs this error:
VDSM <node name> command Get Host Statistics failed: Internal JSON-RPC error: {'reason': "'str' object has no attribute 'decode'"}
2. During import of two virtual machines from VMware (has done multible before upgrade) the import seems to never finish - currently running on day 2-3... any clues how to fix this?
/John
2 years, 3 months
Unrecoverable NMI error on HP Gen8 hosts.
by Diggy Mc
I have oVirt Node v4.4.8.3 running on several HP ProLiant Gen8 servers. I receive the following error under certain circumstances:
"An Unrecoverable System Error (NMI) has occurred (iLO application watchdog timeout NMI, Service Information: 0x0000002B, 0x00000000)"
When a host starts taking a load (but nowhere near a threshold), I encounter the above iLO-logged error and the host locks-up. I have had to grossly under-utilize my hosts to avoid this problem. I'm hoping for a better fix or work-around.
I've had the same problem beginning with my oVirt 4.3.x hosts, so it isn't oVirt version specific.
The little information I could find on the error wasn't helpful. Red Hat acknowledges the issue, but limited to shutdown/reboot operations; not during "normal" operations.
Anyone else experienced this problem? How did you fix it or work around it? I'd like to better utilize my servers if possible.
In advance, thank you to anyone and everyone who offers help.
2 years, 3 months
Lots of storage.MailBox.SpmMailMonitor
by Fabrice Bacchella
My vdsm log files are huge:
-rw-r--r-- 1 vdsm kvm 1.8G Nov 22 11:32 vdsm.log
And this is juste half an hour of logs:
$ head -1 vdsm.log
2018-11-22 11:01:12,132+0100 ERROR (mailbox-spm) [storage.MailBox.SpmMailMonitor] mailbox 2 checksum failed, not clearing mailbox, clearing new mail (data='...lots of data', expected='\xa4\x06\x08\x00') (mailbox:612)
I just upgraded vdsm:
$ rpm -qi vdsm
Name : vdsm
Version : 4.20.43
2 years, 3 months
Using IBM Spectrum Scale as POSIX compliant filesystem under oVirt 4.4 results in oVirt host reboot.
by Andi Nør Christiansen
Hi,
Does anyone know how to mount a spectrum scale filesystem as a storage domain using the POSIX compliant storage option.
I've tried to follow an earlier post about this - https://lists.ovirt.org/archives/list/users@ovirt.org/thread/LLXLSI4ZQFU3...
specifically the options provided by jtorres:
Domain Function: Data
Name: name_of_the_domain
Storage Type: Posix Compliant FS
Path: gpfs_kvm (the name of the "device"/"filesystem" created, not an
absoluthe path)
VFS Type: gpfs
Mount Options: rw,relatime,dev=gpfs_kvm (the dev parameter is the key to mount the
filesystem).
Using those options, the webinterface just tells me it cannot communicate with the storage.
If I change it to:
Domain Function: Data
Name: name_of_the_domain
Storage Type: Posix Compliant FS
Path: /mnt/b4tsz001
VFS Type: gpfs
Mount Options: rw,relatime
The oVirt host reboots immediately.
I have mounted the filesystem locally on the oVirt Host under /mnt/<filesystem name>
Change the owner to: vdsm:kvm
Am I missing something or is this a general bug between spectrum scale and oVirt.
Any ideas will be appreciated! Thanks
Best Regards
Andi Christiansen
2 years, 3 months
Help installing oVirt on single machine, without cockpit
by Cameron Showalter
The reply button is taking me to a "mailto" tab again, but hopefully
making the subject the same, will put this under the right thread? If not,
I'm not sure how to reply on the new system. The original thread is here:
https://lists.ovirt.org/archives/list/users@ovirt.org/thread/3L6EVRT4YBEJ...,
and it continues here for a bit:
https://lists.ovirt.org/archives/list/users@ovirt.org/thread/C4Z65RXLFPOC...
.
@Strahil Nikolov
> Have you thought about deploying HostedEngine and when you need to update
the engine -> put the host in maintenance -> backup & restore
The way I understand the update process, you can't update with a hosted
engine unless you have two hosts. One needs to run the engine VM, so the
other can go into maintenance. Is this wrong? For my use case, I'm looking
for something that'll work/update on a single host.
I'm trying to get the engine running next to the hypervisor, so it can run
when the VM's come down. I can get the engine running on a CentOS Stream
install, but it says it has 0/0 hosts running, so I don't think it can
deploy VM's. I can't find a way to install the node's hypervisor
package-set either. Unless that package exists, the only other idea I have
for this route is doing a "hosted engine" install, but destroy the engine
VM and point it to the local engine. This seems extreme to me lol.
I tried setting up the engine on a node itself, but the error I can't get
past yet is in the second url, top of this message. It can't start the
ovirt-imageio service, because of a missing file.
Happy Holidays all!
Cameron
2 years, 3 months