So we can have 2048 leases - 101 non volume leases -> 1947 volume leases.
This limit can be removed if we support extending the leases volume, but it is
not supported yet, because we don't recommend having more than 1300 volumes per
storage domains. The reason is our volumes on block storage are LVM logical
volumes, and LVM is not designed to manage 1000's of logical volumes.
So the 1947 volume limit is likely to stay in the near future.
Generally, you want to minimize the number of storage domains. Storage domains
are not deigned for unlimited scale. You should create storage domains only if
there is a need to separate storage to different storage domains. For example
having separate storage domain for production or testing, of for different
groups of users.
However you cannot have unlimited disks in one storage domain, so one of the
factors when designing the system is how many disks you need in one storage
domain.
Every disk snapshot is a logical volume, so if you have one disk with 5
snapshot, you are using 5 logical volumes. Additionally, if you include memory
snapshot, you need another logical volume for it. For example if you have vm
with 5 disks and you want to keep memory snapshot, every snapshot will use 6
logical volumes.
So you can calculate the expected number of volume on a storage domain based on
the number of virtual machines, the number of disks per virtual machine, and if
you want to keep memory snapshot or not.
For file based storage domain none of these limits apply. Here a storage domain
is a mountpoint and we have one directory per disk, so the number of disks is
practically unlimited. Since many operations require listing all images and
snapshots in the mountpoint, having 10,000 disks will be slower then 1000
disks.
In summary, oVirt is designed for data center, and not for the cloud, so you
should not expect to manage unlimited number of vms, disks, or storage domains.
For 4.3 we are working on improving Cinder support. With Cinder based storage,
we have one LUN per disk, and snapshots are implemented by storage server.
Also, this LUN will be connected only to one host at a time, or two hosts during
live migration, instead of having all LUNs connected to all hosts all the time. With
this storage there will be no practical limit on oVirt side for number of disks.
Yaniv, do you have some document with general recommendations for sizing?