What is a Software-defined Data Center?
Virtualization has come a long way in terms of evolution and dates back to 1960, where mainframes first supported virtualization.
Decades later, leading into the x86 era, there was a strong need to leverage the virtualization concept on a x86 platform. The need was straight and simple, a transition from an application/operating system per server to running multiple such instances per server. The reasons were obvious as well, server hardware capabilities had increased exponentially and much of the server resources were wasted. There was room for the consolidation and optimization of resources, and needless to say, this also meant significant return on investment.
While there were a few players who threw their hats into the ring, not many made a mark. In the year 1998, however, VMware was established and their first product, Workstation, made it possible to successfully virtualize the x86 platform. They were also the first to successfully boot Microsoft Windows as a virtual machine. They continue to lead the pack and are the undisputed leaders of this domain. To further endorse this, Gartner named VMware the leader in the Magic Quadrant for x86 server virtualization infrastructure for the fifth consecutive year.
Virtualization starts out creating an abstraction layer on hardware, and then carving out resources and pooling these resources to achieve agility in availability and load balancing. Furthermore, to increase efficiency, we automate tasks.
While virtualization made it very easy to deploy workloads from a computing perspective, there were still organizational silos and the inevitable dependencies on storage requirements and network requirements to complete the provisioning. Hence the concepts of abstraction, pooling, and automation, which made compute virtualization simplified, extended to storage and network as well. This paved the way to the concept of the Software-Defined Data Center (SDDC), as shown in the following figure:
To understand SDDC, we must start by clarifying that it is not a data center controlled merely by automation or scripting. As depicted in the previous figure, it is rather the creation of abstraction layers for compute, storage, network, and security that are managed at the software layer on top of which virtual data centers are built and scaled.
Thus, the three key pillars of SDDC are:
- Computing/server virtualization
- Software-Defined Storage
- Software-Defined Networking
The former CTO of VMware, Steve Herrod, describes SDDC as:
"Software-defined means (1) abstract logical from physical (2) distribute functionality (3) manage as single system."
In this book, we will discuss Software-Defined Storage and VMware's flagship product in this area—VMware Virtual SAN.