Nutanix Scalability – Part 5 – Scaling Storage Performance for Physical Machines

Part 3 and Part 4 has taught us that Nutanix provides excellent scalability for Virtual Machines and provides ABS and Volume Group Load Balancer (VG LB) for niche workloads which may require more performance than a single node can provide.

Now that we’ve learned how to scale a Virtual machines performance, let’s see how the same rules apply to physical servers.

So you’ve got your physical server and a Nutanix cluster, now what?

As Part 3 and Part 4 explained, more virtual disks increase the storage performance for virtual machine, the same is true for physical servers using ABS.

Virtual disks will be presented to the physical server via iSCSI (ABS), for optimal performance you should have at least one virtual disk per node in your cluster. The reason for this is each vDisk is managed by a stargate (Nutanix IO engine) instance which runs in every Controller VM (CVM).

If you have a four node cluster, you need to use at least four virtual disks to utilise the four node cluster optimally. For an eight node cluster, eight or more virtual disks is required to ensure all CVMs (stargate instances) can actively provide a boost in performance.

The following tweet shows how the pathing increased from four on the four node cluster and when an additional fours node were added the pathing dynamically changed to use all eight nodes.

Therefore when using ABS for physical workloads, especially those high end database servers, I recommend using a minimum of 8 vDisks however if your cluster size is greater than 8, match the number of vDisks with the cluster size as your starting point.

If you have an 8 node cluster, you could for example use 32 vDisks and these will spread evenly across the nodes, resulting in four per stargate instance which is perfectly fine.

Using more vDisks than your current cluster size also means when additional nodes are added, ABS can dynamically load balance the vDisks across the new and existing nodes to automatically scale your performance.

Let’s cover the same MS Exchange and MS SQL examples covered for Virtual Machines in Parts 3 and 4 but now specifically for physical servers using ABS.

Let’s say we have an MS Exchange server with 20 databases, the performance requirements for each database is typically in the range of hundred of IOPS, in which case I would recommend one virtual disk (e.g.: VMDK) per database and another for the logs.

In the case of a large MS SQL server which may require tens or hundreds of thousands of IOPS to a single database, I recommend using multiple vDisks per database which involves Splitting SQL datafiles across multiple VMDKs to optimise VM physical server performance.

Sound familiar? The above two paragraphs are literally a copy/paste from Part 3 because the exact same rules apply to physical servers and virtual machines. Simple right!

Still need more performance?

Again, the exact same rules apply to physical servers with ABS as they do to virtual machines. In no particular order, as we’ve learned from Part 3 & 4:

  • Increase the vCPU of the Nutanix Controller VM (CVM)
  • Increase the vRAM of the Nutanix Controller VM (CVM)
  • Add storage only nodes

Can’t get much easier than that!

Summary:

From Parts 3, 4 and 5 we have learned that Nutanix provides the ability to scale the performance of individual servers, be it physical or virtual using the same simple strategies of adding virtual disks, storage only nodes or Controller VM (CVM) resources and how doing so increases performance to meet virtually (pun intended) any performance requirements.

Is there any reason you couldn’t confidently say Nutanix is doing 3 tier better than the SAN vendors? I’d love to hear if you have any corner cases.

Back to the Scalability, Resiliency and Performance Index.

What’s .NEXT? – Scale Storage separately to Compute on Nutanix!

Since I joined Nutanix, I have heard from customers that they want to scale storage (capacity) separate to compute as they have done in traditional SAN/NAS environments.

I wrote an article a while ago about Scaling problems with traditional shared storage which discusses why scaling storage capacity separately can be problematic. As such I still believe scaling capacity separately is more of a perceived advantage than a real one in most cases, especially with traditional SAN/NAS.

However here at Nutanix we have locked ourselves away and brainstormed how we can scale capacity without degrading performance and without loosing the benefits of a Nutanix Hyper-Converged platform such as Data Locality and linear scalability.

At the same time, we wanted to ensure doing so didn’t add any unnecessary cost.

Introducing the NX-6035c , a new “Storage only” node!

What is it?

The NX-6035c is a 2 node per 2 RU block, which has 2 single socket servers with 1 SSD and 5 x 3.5″ SATA HDDs and 2 x 10GB NICs for network connectivity.

How does it work?

As with all Nutanix nodes, the NX-6035c runs the Nutanix Controller VM (CVM) which presents the local storage to the Nutanix Distributed File System (NDFS).

The main difference between the NX-6035c and other Nutanix nodes is that it is not a member of the hypervisor cluster and as a result does not run virtual machines, but it is a fully functional member of the NDFS cluster.

The below diagram shows a 3 node vSphere or Hyper-V cluster with storage presented by a 5 node NDFS cluster using 3 x NX-8150s as Compute+Storage and 2 x NX-6035C nodes as Storage only.

6035cinndfscluster

Because the NX-6035c does not run VMs, it only receives data via Write I/O replication from Resliency Factor 2 or 3 and Disk Balancing.

This means for every NX-6035c in an NDFS cluster, the Write performance for the cluster increases because of the additional CVM. This is how Nutanix ensures we avoid the traditional capacity scaling issues of SAN/NAS.

Rule of thumb: Don’t scale capacity without scaling storage controllers!

The CVM running on the NX-6035c also provides data reduction capabilities just like other Nutanix nodes, so data reduction can occur with even lower impact on Virtual Machine I/O.

What about Hypervisor licensing?

The NX-6035c runs the CVM on a Nutanix optimized version of KVM which does not require any hypervisor licensing.

For customers using vSphere or Hyper-V, the NX-6035c provides storage performance and capacity to the NDFS cluster which serves the hypervisor.

This results is more storage capacity and performance with no additional hypervisor costs.

Want more? Check out how Nutanix is increasing usable capacity with Erasure Coding!