by Gaby Grau, Advisory Solution Architect EUC, Nutanix
Have you ever wondered why certain applications load slowly while others respond quickly in
end-user computing environments? The answer might be that the data is stored and obtained in relation to the VM.
Storing data in a remote fashion – away from the local hypervisor – introduces a requirement to
obtain that data across the network infrastructure. Any delay in that network and problems start to arise.
These challenges are especially noticeable for Virtual Desktop Infrastructure (VDI) scenarios.
Applications are sensitive to latency, delays and response times. And this can have a negative
impact on the user experience. Storing data as close to the workload as possible, such as local
disks on a hypervisor running the VM, can result in a vastly improved experience.
This blog explains how Nutanix is able to provide features that are common in shared enterprise storage solutions while delivering local storage experience.
Data Locality
Throughout my professional journey, many customers I’ve worked with had to decide between
using local SSD/NVME storage to ensure optimal performance for their applications and the
benefits of shared storage, including VM mobility, backup, replication, and storage efficiency
capabilities.
With Nutanix, customers don’t have to make that decision. They can enjoy both right out of the
box. Nutanix delivers this capability by using the concept of data locality. It ensures that a VM
running on a hypervisor accesses data as close as possible to the node running the hypervisor.
Consequently, the data is presented as local.
To get an understanding of how data locality works, we can review the following diagram.
Because Nutanix is a converged (compute + storage) platform, data locality and I/O are essential to cluster and VM performance. The local controller VM (CVM) on each hypervisor next to regular VMs serves all read/write IOs. Data for a VM is controlled by the CVM and served locally from disks inside the node.
If the VM is writing data, it is written to the node where the VM resides, and a copy of that data is stored to another node in the cluster. This prevents data loss if a disk or node failure occurs. You can also store three copies on three different nodes, depending on the size of the cluster and the requirements.
One thing to add here is that Nutanix distributes the VM data all over the cluster. One piece of the data could be stored on Node 1 and something else on Node 2. It is only certain that the node hosting the VM will have a full copy of the VM’s data. If a VM is migrated from one node to another, data is served from the new local CVM.
Not all the data is immediately available on the new node and some reads must be redirected to remote nodes. The CVM will detect this as remote read and will automatically migrate the VM data. All new writes occur locally. Eventually, the VM will have fully local data access again.
In essence, Nutanix data locality and I/O mechanisms contribute to efficient cluster and VM performance by minimizing data transfer distances, ensuring data redundancy and facilitating seamless VM migrations.
Shadow Clones
Today’s most common provisioning methods, like MCS and instant clones, work with a so-called master or parent VM. A clone of this is then created and all EUC VMs that use this master image boot from this clone.
You can imagine what impact this has on the storage if several hundred VMs access this single virtual disk. Even if you can divide the boot process into several sections or use cache mechanisms, the impact on end users is still noticeable. Users will notice this when they log on to their workstations at the start of work or after a lunch break.
Another way to distribute the load more evenly is to use local storage. But again, this comes with limitations and the distribution of a new master image can take a long time. Nonetheless, this isn’t a problem in most cases because the process can be planned. There are exceptions, such as if the master image has to be updated immediately due to a security patch.
With Nutanix you have the advantages of both worlds: The performance of local storage and the advantages of centralized storage.
With shadow clones, the Nutanix AOS software monitors vDisk access trends in a similar way to data locality. However, if there are requests from more than two remote CVMs and all requests are read I/O, the vDisk will be marked as immutable.
Once the disk is marked as immutable, the vDisk can be locally cached by any CVM making read requests to it, which are known as shadow clones of the base vDisk. This allows VMs on each node to read the base VM’s vDisk locally. In the case of VDI, this means the master disk can be cached by each node, and all read requests for the base will be served locally.
It’s important to note that data is only migrated on read to avoid flooding the network and to allow efficient cache utilization. If the base VM is modified, the shadow clones will be dropped, and the process will start again. Shadow Clones are enabled by default.
You may want to check out our public Performance Analysis of Nutanix Shadow Clones.
Scalability
Features like data locality and shadow clones contribute to unmatched scalability inherent in Nutanix. This makes total sense when you think about it: VMs are distributed all over the cluster and AOS makes sure that storage is always close to the VM.
If you add a new node and VMs start to populate that node, they automatically bring their data. As soon as a new node is added, new secondary data copies are also written. This will occur automatically without manual triggered rebalance. And we continue to prove that linear scalability again and again in our testing.
Summary
Nutanix offers a unique solution that combines the benefits of local and shared storage for EUC environments. By leveraging data locality and shadow clones, Nutanix ensures high performance, consistency, and reliability for EUC workloads.
Key points
- Data locality: Nutanix stores VM data locally on the same node to reduce latency and improve performance.
- Shadow clones: Nutanix creates local copies of base vDisks (shadow clones) for frequently accessed data to enhance performance and reduce network traffic.
- Scalability: The Nutanix architecture delivers effortless scalability by automatically distributing data across the cluster as new nodes are added.
By addressing data locality and application performance, Nutanix provides a comprehensive solution for optimizing EUC environments. This translates into improved user satisfaction, increased productivity and reduced IT support costs.
In conclusion, Nutanix data management capabilities offer a compelling value proposition for organizations seeking to deliver exceptional EUC experiences. By prioritizing application latency and user experience, Nutanix empowers businesses to stay competitive and meet the evolving demands of their workforce.
If you want to dig deeper, take a look at our Nutanix Bible or reach out to your Nutanix representative.
©2024 Nutanix, Inc. All rights reserved. Nutanix, the Nutanix logo and all Nutanix product and service names mentioned herein are registered trademarks or trademarks of Nutanix, Inc. in the United States and other countries. All other brand names mentioned herein are for identification purposes only and may be the trademarks of their respective holder(s).