VMware Cloud Community
williamtaylor21
Contributor
Contributor

Is it possible to enforce each Org VDC (customer) to use a certain datastore?

Just installed vcloud 1.5 appliance in a LAB environment. Virtual vCenter 5.0 U1 server, VCD 1.5.0 appliance and physical ESX 4.1 U1 host.

I have one cluster defined in vcenter with my host added. I have 3 NFS datastores available.

Currently in vSphere we separate our customers/tenants in their own datastores, this typically could be NFS or Fibre. Also these could be mirrored or not to another site. With this in mind it is important for us to place customers VM's on the correct datastore.

I have setup a provider Org, this points to my single cluster. I have setup 3 separate Org VDC's to represent different tenants/customers. These have been assigned to the provider VDC which in turn has CPU, Memory and storage assigned (the 3 x NFS stores mentioned above). I thought I would be able to limit the Org VDC's to use certain datastores but this doesn't seem possible, or at least I haven't worked out how to do so.

Can anyone advise how they deal with storage for multi tennant/customers?

Is it possible to limit an Org VDC to a certain datastore or pool of datastores?

Any advise much appreciated.

Billy

0 Kudos
5 Replies
peterdabr
Hot Shot
Hot Shot

Hi,

Datastores are chosen at the Provider vDC only and vCD 1.5 does  not offer storage assignments at the Org vDC level. You'd need to create a separate Provider vDC for each client to be able to accomplish that.

I also recommend this link http://www.chriscolotti.us/vmware/create-vapp-storage-tiers-in-vcloud-director/ as it has a somewhat intresting approach on having an option to place tenants on a different datastores by using combination of tiered Provider/Org vCD and vApps objects.

Peter D

0 Kudos
williamtaylor21
Contributor
Contributor

Thanks Peter. I read this article earlier and found very interesting. This could work to define categories of storage, so mirrored or not in our case but still customers would share datastores.

For that scenario to work and keep all our tenants/customers separate (as they are currently in vsphere) we would have to create clusters for each customer and link to provider VDC's, which could be a lot of admin overhead. I see you can choose to link provider VDC at the resource pool level but the architecture guide advises against it on the basis of scalability and increasing resources in vsphere.

So just to confirm anyone with vcloud director 1.5 must either have a cluster per customer or all customers in shared storage?

Welcome any other feedback people may have on methods they use in production currently.

Cheers

Billy

0 Kudos
peterdabr
Hot Shot
Hot Shot

With regards to linking PvDCs at the Resource Pool level, although seen as one of the ways to create multiple PvDs (hence separate datastores for tenants), it has its disadventages. One disadvantage is an administrative burden with manually modifying Reservation/Shares/Limit settings of  RPs when new hosts are added to the cluster. These do not change dynamically with host additions. Another  is  RPs sizing and calculating allocation ratios between PvDCs in the same cluster.

To reiterate on your question, vCD 1.5 does not offer datastores allocation at Org vDC and unless you're ok with above for datastore separation, a cluster per customer or shared storage for all customers are your options.

Peter D

0 Kudos
williamtaylor21
Contributor
Contributor

Thanks for your reply, response from VMware:

----------------------------------------------------------------------

To answer your question, you would actually need to create separate Provider vDCs for each customer as this is where you separate the physical hardware (such as you NFS datastores).

So in these provider vDCs you would give them whatever hosts you have in your cluster (that you wish them to use) and then limit the datastores.  This way customers will only have the option to place vms on the datastores given to them by their provider vDC.

With this setup, you would not be able to storage vmotion a vm to a datastore that is not in it's provider vDC however as it will go "out of scope" in vCloud Director but everything else should be fine.

For now, the above procedure looks to be the only way to do what you wish to do.

I hope this information is helpful!  I will keep this case open for 24 hours in case you require any further assistance here.

Kind regards,

----------------------------------------------------------------------

Point taken on resource pool vs cluster, excellent article on it located here - http://frankdenneman.nl/2010/09/provider-vdc-cluster-or-resource-pool/#comments

Seems with the current release the only way forward is to create separate clusters for mirrored/non-mirrored storage. Then store all customers shared over datastores.

Message was edited by: amaier650 Removed information currently NDA.

0 Kudos
mreferre
Champion
Champion

One thing to keep in mind is that vCD will really shine in a multi-tenant environment where you have a 1 to many mapping (ie 1 infra, many customers). While I can understand there may be customers willing to "hug" their datastores (and sometimes their physical servers) that is not what vCD was designed for. That means you can force vCD to do that (ie create a Provider vDC with 1 DS and assign it in its entirity to a single customer) but it isn't an optimal design. 

Massimo.

Massimo Re Ferre' VMware vCloud Architect twitter.com/mreferre www.it20.info
0 Kudos