---------- Forwarded message ----------
From: Shmuel Melamud <smelamud(a)redhat.com
Date:
Wed, Jun 22, 2016 at 4:51 PM
Subject: [ovirt-devel] Storage in VDSM questions
To: devel <devel(a)ovirt.org
Hi!
I have a bunch of questions related to storage in VDSM. I would be happy
if anybody familiar with the subject can help me with them.
1. What is HSM? IRS?
IRS = SPM
HSM=non SPM host
2. What is SDM?
SDM= Storage Domain Management
A feature currently under development that provides alternate method to SPM
to manage shared storage.
3. What hsm.spmSchedule() method does?
Schedules a task to be executed as SPM (used to perform operation that alter
the shared storage or data operations currently).
4. What does domainMonitor.getHostId(vol_info.sd_id) method return?
I'd recomment to do some SANLock reading (see below).
Basically, its the id the host uses to acquire locks on the shared storage.
http://linux.die.net/man/8/sanlock
http://old.ovirt.org/SANLock
Storage domain
5. What is StorageDomainManifest? Why there are separate StorageDomain and
StorageDomainManifest classes? (And the same with Volume and
VolumeManifest.)
Those are changes made in order to share "SPM" related code with
"SDM"
related code (as not all of the code is relevant for both).
alitke/nsoffer could share more information on the decisions behind adding
those.
6. What does sd_manifest.domain_lock(host_id) guard? Why do we need
the
host_id parameter?
see answer to question 4.
7. Why in HSM we are using vars.task.getSharedLock(STORAGE, sdUUID)
sometimes instead of domain lock?
The task lock (which uses the resource manager) is used to acquire in
memory logical lock within the current host.
Theoretical example- you wouldn't want to attempt to delete a domain while
you create a volume on it.
8. What does sd_manifest.get_volume_artifacts(img_id, vol_id) return?
Resource manager
9. What is ResourceManager?
Resource manager is basically a in memory lock manager in vdsm.
10. What rmanager.acquireResource(image_res_ns, img_id, lockType)
does?
What types of resources it may be used with?
Well, the best answer would be the simple one - its used to acquire a
resource, you can specify a namespace and id, the lock will be taken on
namespace_ID
so basically you can acquire lock on the same id under different namespaces.
Images and volumes
11. What methods dom.linkBCImage(imgPath, imgUUID) and
dom.unlinkBCImage(imgUUID) do?
Creates/Removes a symlink to a given image.
12. What methods dom.activateVolumes(imgUUID, imgVolumes) and
dom.deactivateImage(imgUUID) do?
Can you be a bit more specific in the question? I don't have much to add
over the method names.
13. What method dom.getVolumeLease(imgUUID, volUUID) does?
see related SANLock question before.
> 14. What methods volume.prepare() and volume.teardown() do?
> Thanks in advance for your answers!
> Shmuel
> _______________________________________________
> Devel mailing list
> Devel(a)ovirt.org
>
http://lists.ovirt.org/mailman/listinfo/devel