I’ve been thinking about the term Software Defined Data Center for a while now. It is a great term “software defined” but it seems that many agree that things have been defined by software for a long time now. When talking about SDDC with customers it is typically referred to as the ability to abstract, pool and automate all aspects of an infrastructure. To me these are very important factors, but not the most important, well at least not for me as they don’t necessarily speak to the agility and flexibility a solution like this should bring. But what is an even more important aspect?
I’ve had some time to think about this lately and to me what is truly important is the ability to define requirements for a service and have the infrastructure cater to those needs. I know this sounds really fluffy, but ultimately the service doesn’t care what is running underneath, and typically the business owner and the application owners also don’t when all requirements can be met. Key is delivering a service with consistency and predictability. Even more important consistency and repeatability increase availability and predictability, and nothing is more important for the user experience.
When it comes to user experience and providing a positive one of course it is key to figure out first what you want and what you need first. Typically this information comes from your business partner and/or application owner. When you know what those requirements are then they can be translated to technical specifications and ultimately drive where the workloads end up. A good example of how this works or would look like is VMware Virtual Volumes. VVols is essentially requirements driven placement of workloads. Not just placement, but of course also all other aspects when it comes to satisfying requirements that determine user experience like QoS, availability, recoverability and whatever more is desired for your workload.
With Virtual Volumes placement of a VM (or VMDK) is based on how the policy is constructed and what is defined in it. The Storage Policy Based Management engine gives you the flexibility to define policies anyway you like, of course it is limited to what your storage system is capable of delivering but from the vSphere platform point of view you can do what you like and make many different variations. If you specify that the object needs to thin provisioned, or has a specific IO profile, or needs to be deduplicated or… then those requirements are passed down to the storage system and the system makes its placement decisions based on that and will ensure that the demands can be met. Of course as stated earlier also requirements like QoS and availability are passed down. This could be things like latency, IOPS and how many copies of an object are needed (number of 9s resiliency). On top of that, when requirements change or when for whatever reason SLA is breached then in a requirements driven environment the infrastructure will assess and remediate to ensure requirements are met.
That is what a requirements driven solution should provide: agility, availability, consistency and predictability. Ultimately your full data center should be controlled through policies and defined by requirements. If you look at what VMware offers today, then it is fair to say that we are closing in on reaching this ideal fast.
Jon says
Excellent article! VMware continues to nip at the heals of such lofty ideals. Delivering an abstracted dimensional approach to storage, SysAdmins yearn for. Having a home Lab HyperC Cluster on a 300/20mbps residential low cost wan, has introduced a new class of datacenter into my world. Just briefly mentioning the advantages on the SMB is an exhausting task. For decades I have watched as capacity is wasted, or foolishly prioritized. SDDC looks to be a solution to decades of waste and over commitment. Thanks again Mr. Epping!
Mark Burgess says
Hi Duncan,
For me VSAN is software-defined storage (SDS) and VVOLs is software-defined policy-based storage management – VVOLs is not SDS.
I just wish the industry could agree on what the term SDS actually means as every storage vendor claims their product is SDS when I think most people would clearly disagree with them.
I have tried to do it at http://blog.snsltd.co.uk/are-vmware-vsan-vvols-and-evorail-software-defined-storage-and-does-it-really-matter/
I would be interested in your thoughts.
Many thanks
Mark
duncan@yellow-bricks says
But I wasn’t talking about SDS, but about what forms an SDDC and why for instance VVols can be considered one of the building block for a Requirements Driven Data Center. I wouldn’t classify VVols as SDS indeed, not sure why folks do, it is not a storage solution… it is the enabler though for building an SDS solution.
Mark Burgess says
Thanks Duncan – makes sense.