this is really a tough question... and there is no exact rule how many vms per LUN and LUN size..
generally we can de the below
- dont put multiple DB vms in one LUN
- caculate the total IOPS ..that is during the peak and off peak hours
- calculate the IOPS pattern.. how much read and how much write
- is it sequential or random read/write
- you can put less IOPS consuming vms in a big LUN..
if you using vsphere5 then you can use LUN of size more than 2 TB
- if you have enterprise license and if your array have the VAAI support..then you can put more vms in a LUN
there is storage queue in storage array... in storage ports...in host HBA and esx datastore queue...
so if you put lot of vms in one LUN the datastore queue gets full and you face performance issues....
in short there are lot of considerations we need to think... the esx can have 256 LUNS support, so there is nothing harm in using more LUNS, because if you use few more LUNS that is may be up to 100 in a host..there is nothing wrong. this will give more datastore queue..and good performance..and you can monitor more easily.
so take care is needed for the Database vms..they really kill your entire storage...and effect other vms also....that is for Database that is for oracle redo logs...and sql logs..exchange logs etc..try to use RAID 10,
its all a part of design...if one part went wrong the performance will get effected....so take more time on anlysing the workload pattern and IOPS usage..do a cpacity planning an analysis..then decide the LUN size and number of LUNS and vm placement.
refering to your query - The idea of moving around VMs to free up disk space a valid idea?
if your vm alreay consumed and occupied space from storage...then by moving and deleting the old LUN wont give free space. by moving to new LUN this will reclaim the storage space from the ARRAY perspective... that too if the LUN it self is thin provisioned from the array.