Home > Servers > PowerEdge and VMware > White Papers > Kubernetes containers on Dell PowerEdge made easy with VMware Tanzu > More on Tanzu architecture
VMware vSphere with Tanzu is VMware’s distribution of the open-source Kubernetes container software. It consists of several software layers and groups of virtual resources that run on top of traditional VMware architecture. Figure 1 shows a workload platform architecture in a vSphere with Tanzu software-defined data center (SDDC).
Figure 1: A diagram of a workload platform architecture in a vSphere and Tanzu SDDC.
Source: Principled Technologies (adapted from VMware) 2
vSphere admins can enable a vSphere cluster for managing a Tanzu workload by creating a Supervisor cluster on the vSphere cluster. This Supervisor cluster acts as a high-level control plane that allows admins to manage namespace creation, licensing, and networking integration. The Supervisor cluster runs on top of the VMware SDDC layer that consists of at least three physical servers running VMware ESXi, VMware NSX-T Data Center or vSphere networking, and shared storage.
Moving from the control plane to the workload plane where users’ applications reside, vSphere with Tanzu enables the creation of Tanzu Kubernetes clusters, which are fully functional K8s clusters consisting of VMs. Within the Tanzu Kubernetes cluster are many control VMs and workload VMs. vSphere Pods, which reside in the workload VMs, are the equivalent of K8s Pods and contain groups of containers. The Tanzu Kubernetes Grid Service allows admins to provision, operate, and manage a Tanzu Kubernetes Cluster.
For vSphere Pods, VMs running inside the Supervisor cluster, and VMs running inside a Tanzu Kubernetes cluster, vSphere with Tanzu uses shared storage for persistent volumes.
After an admin creates the Supervisor cluster, they create a vSphere Namespace. By default, the namespace has unlimited resources within the Supervisor cluster. A vSphere administrator can set limits for CPU, memory, and storage that a Tanzu Kubernetes cluster can use within the namespace.
When provisioning a Tanzu Kubernetes cluster, users specify the VM class type for each controller and worker node for their pod. Each class type reserves a set number of resources for the VM, including CPU, memory, and storage. In addition, each class type has guaranteed and best effort options depending on use case.
After an admin creates a namespace and configures resource limits, user permissions, and storage policies, a developer can use the Tanzu Kubernetes Grid Service API to access the namespace, create Tanzu Kubernetes clusters, and run K8s workloads by using the same kubectl and YAML definition they would use with standard Kubernetes clusters.
2 VMware vSphere Blog, “vSphere 7 – Introduction to Tanzu Kubernetes Grid Clusters,” accessed April 21, 2021, https://blogs.vmware.com/vsphere/2020/03/vsphere-7-tanzu-kubernetes-clusters.html.