TN-2117-Nutanix-Files-Performance
TN-2117-Nutanix-Files-Performance
Performance
Nutanix Tech Note
Copyright
Copyright 2020 Nutanix, Inc.
Nutanix, Inc.
1740 Technology Drive, Suite 150
San Jose, CA 95110
All rights reserved. This product is protected by U.S. and international copyright and intellectual
property laws.
Nutanix is a trademark of Nutanix, Inc. in the United States and/or other jurisdictions. All other
marks and names mentioned herein may be trademarks of their respective companies.
Copyright | 2
Nutanix Files Performance
Contents
1. Executive Summary.................................................................................5
2. Introduction.............................................................................................. 6
2.1. Audience.........................................................................................................................6
2.2. Purpose.......................................................................................................................... 6
7. Application Workloads.......................................................................... 16
7.1. Share Type: Random and Sequential..........................................................................16
7.2. Random Share Type (Example Workload: VDI).......................................................... 17
7.3. Sequential Share Type (Example Workload: Large File Ingestion)............................. 18
7.4. Single-Client Workloads............................................................................................... 19
7.5. NFS and SMB Workloads: Software Compilations......................................................20
7.6. NFS and SMB Workloads: Electronic Chip Design Simulation....................................21
7.7. NFS and SMB Workloads: Video Data Streams Capture............................................23
3
Nutanix Files Performance
9. Conclusion..............................................................................................29
Appendix..........................................................................................................................30
Best Practices Checklist......................................................................................................30
Additional Test Configuration Notes....................................................................................30
About the Authors............................................................................................................... 32
About Nutanix...................................................................................................................... 32
List of Figures................................................................................................................ 33
List of Tables.................................................................................................................. 34
4
Nutanix Files Performance
1. Executive Summary
Nutanix Files is a software-defined, scale-out file storage solution that provides a repository
for unstructured data. This data can include home directories, user profiles, and departmental
shares. It can also include application data, application logs, backups, and archives. Flexible
and responsive to workload requirements, Files is a fully integrated, core component of the
Nutanix enterprise cloud that supports clients and servers connecting over SMB (formerly
known as CIFS) and NFS protocols. Nutanix Files offers native high availability and uses our
distributed storage fabric for intracluster data resiliency and intercluster asynchronous disaster
recovery. The distributed storage fabric also extends data efficiency techniques to Files, including
erasure coding (EC-X) and compression. Nutanix supports Files with both ESXi and AHV.
You can run Nutanix Files on a dedicated cluster or place it on a cluster running user VMs.
Unlike standalone NAS appliances, Files consolidates VM and file storage, eliminating the need
to create an infrastructure silo. Administrators can manage Files with Nutanix Prism, just like
VM services, which unifies and simplifies management. Integration with Active Directory (AD)
enables support for authentication, access-based enumeration, quotas, and the Self-Service
Restore feature. Nutanix Files also supports file server cloning, which lets you back up Files off-
site, as well as run antivirus scans and machine learning without affecting production.
A key question when comparing Nutanix Files to traditional NAS solutions is whether this solution
can provide the performance your users and applications need. We can break performance down
into workloads—sets of processes that a computer (in this case the file server) must complete in
a certain amount of time. In this paper we describe the performance capabilities of Nutanix Files
based on extensive testing with several well-known workload generator and copy tools. With this
performance data, customers can feel confident that Files provides the performance required for
many common workloads.
1. Executive Summary | 5
Nutanix Files Performance
2. Introduction
2.1. Audience
This tech note is part of the Nutanix Solutions Library. We wrote it for storage and systems
administrators and partners who seek to understand Nutanix Files performance before deploying
the solution. Readers should already be familiar with Nutanix Files and the Nutanix architecture.
For additional documents on Nutanix Files, visit portal.nutanix.com.
2.2. Purpose
There are many different applications and client use cases for file server (NAS) solutions. In fact,
new use cases and workloads are created all the time. Nevertheless, there are some standard
workloads commonly used in customer environments. This paper details the performance
possible with Nutanix Files 3.7 on many common workloads, with results based on weeks of
detailed testing and analysis in the Performance Engineering labs at Nutanix. For our testing,
we assessed several of these common workloads for both Linux (NFS) and Windows (SMB)
environments. We ran the following performance tests:
• NFS and SMB:
⁃ Four Corners Microbenchmark performance test.
⁃ Developer software compilations.
⁃ Electronic chip design simulation.
⁃ Video data streams capture.
• NFS:
⁃ Tar and GNU Compiler Collection (GCC) to extract and compile source code data set.
⁃ rsync performance of a large (1.2 million files) data set.
• SMB:
⁃ Windows copy and paste to and from a Nutanix Files share (reads and writes).
⁃ Windows Robocopy.
⁃ Microsoft File Server Capacity Tool (FSCT).
New software releases can change performance for file server systems. Because Nutanix
Files is a software-defined file server, performance results are likely to change and improve as
new software versions and hardware platforms become available. To see these performance
2. Introduction | 6
Nutanix Files Performance
improvements in your own environment, you do not have to add hardware—simply upgrade or
deploy file servers on the latest releases. Check back for further improvements with the next
release of Files software.
Version
Published Notes
Number
1.0 March 2019 Original publication.
2.0 October 2019 Updated for Nutanix Files version 3.6.
3.0 September 2020 Updated for Nutanix Files version 3.7.
3.1 October 2020 Updated the Four Corners Workload section.
2. Introduction | 7
Nutanix Files Performance
of VMs (called FSVMs). Files requires at least three FSVMs running on three nodes to satisfy a
quorum for high availability.
Figure 2: Nutanix Files Server Instances Run as VMs for Isolation from the Distributed Storage Fabric
For more information on the Nutanix Files architecture, refer to the Nutanix Files tech note.
For a complete list of Nutanix Files prerequisites, refer to the Nutanix Files Guide.
Tip: For high-performance Files workloads, either use dedicated Nutanix Files
clusters or make sure your hardware is sufficient for both Nutanix Files and user
VMs.
5.1. Linear Scalability with One, Four, Eight, and Twelve Nodes
The following results (which we have rounded up to the nearest hundred) demonstrate the
clear linear performance scalability of the Nutanix Files solution. We tested performance with
one, four, eight, and twelve file server nodes in a hybrid system with multiple clients (2, 24, 48,
and 72, respectively). For the single-node test, we used one general share to ensure that the
client would act against only one node. For the rest of the tests, we used a distributed share to
spread the workload across all nodes in the cluster. The results demonstrate that as you need
additional performance and capacity, you can easily expand Nutanix Files.
7. Application Workloads
7. Application Workloads | 16
Nutanix Files Performance
The output in the preceding figure shows a histogram of the count of operation type at each block
size ranging from 512 bytes to 1,048,576 bytes. In thise example above the majority of both read
and write operations on the share dist1 are 512 bytes and 8 KB, so setting the share type to
random should provide increased throughput capability on this share. The random share type
improves performance when overwriting files with small I/O operations (16 KB or smaller). If the
majority of your workload showed 1 MB operation sizes (for example, writing out large files, data
migrations, backups, and so on), then setting the share type to sequential would increase your
performance.
7. Application Workloads | 17
Nutanix Files Performance
The chart in the following figure illustrates performance test results that show the potential
benefits of setting a share to the random share type when most operations are 16 KB or smaller.
7. Application Workloads | 18
Nutanix Files Performance
7. Application Workloads | 19
Nutanix Files Performance
a distributed share with four directories and ran another fio workload with four jobs, each writing
to one of the four directories. The following figure shows the results.
One common use case is a video streaming workload, primarily made up of sequential write
I/O, with multiple I/O streams from many sources (cameras). When the files are contained in
different directories, a single server can theoretically write up to 2,420 MBps. Assuming 6.8 Mbps
per camera (1080P HD MJPEG at 5 frames per second, using the StarDot Technologies video
bandwidth calculator), the distributed share can support approximately 2,800 cameras. As this
data shows, the distributed share adds a lot of versatility and can enable Files to scale to your
requirements.
7. Application Workloads | 20
Nutanix Files Performance
Operation Percentage
read file 6
write file 7
access 6
chmod 5
create 1
stat 70
mkdir 1
readdir 2
unlink 2
We separately tested this workload with one group of 16 Linux NFS clients and one group of 36
Windows SMB clients connected to a data set located on a single Nutanix file server cluster. To
be considered successful, the average storage latency of the compilation workload had to stay
below 10 ms. The following table details the peak workloads achieved.
Average
Client Type Compilations Achieved IOPS
Latency (ms)
NFS 110 54,124 6.5
SMB 101 49,185 6.5
7. Application Workloads | 21
Nutanix Files Performance
Operation Percentage
read file 7
write file 10
access 15
chmod 1
create 2
stat 39
mkdir 1
unlink 1 1
unlink 2 1
rand read 8
rand write 15
Operation Percentage
read 50
write 50
In this case, one group of 24 Linux NFS clients and one group of 32 Windows SMB clients
connected to a data set contained on a single Nutanix file server cluster. To be considered
successful, the average storage latency of the compilation workload had to stay below 10 ms.
The software compilation workload performing mostly statistics and other metadata operations is
metadata heavy. We tested both NFS and SMB, shown in the following table with the number of
compilations each achieved.
7. Application Workloads | 22
Nutanix Files Performance
Operation Percentage
write 100
Operation Percentage
read 5
rmw 2
readdir 3
rand read 84
create 1
stat 2
unlink 1 1
access 2
7. Application Workloads | 23
Nutanix Files Performance
In this case, one group of 8 NFS clients and one group of 32 SMB clients connected to a data set
contained on a single Nutanix file server cluster. To be considered successful, the system had to
achieve the target write throughput level. We tested both NFS and SMB, shown in the following
table with the number of streams each achieved.
7. Application Workloads | 24
Nutanix Files Performance
Figure 7: Peak Copy and Paste Speed from Single Windows Client to Nutanix Files Share
We also tested Robocopy with large files, achieving speeds similar to the results for copy and
paste. However, sets of small files tend to be slower, as larger data sets require thousands to
millions of metadata operations. These operations include find, create or open, close, and so
on. Combined with reads and writes of the actual data, a large number of metadata operations
can require significant time.
Besides limiting speed factors in the dataset, Robocopy offers several specific options that can
impact performance. Even using the default Robocopy settings that output the console log of all
files and folders copied to the destination can reduce throughput.
The best Robocopy options for your environment depend on your particular business
requirements. For testing, we used some Robocopy flags to optimize performance. We achieved
around 80 MB/sec for a data set of 50 GB of text and images (181,250 files, 57,493 folders). The
following command provides an example of the Robocopy flags we used:
robocopy $sourceDir $targetDir /COPY:DATSO /S /E /DCOPY:T /mt:64 /NFL /NDL /NP /LOG:"C:\log
\small-robocopy-$shortdate.log"
Note: Robocopy settings are independent of file server options. Decisions regarding
these settings or flags are not related to the file server solution you are using.
It’s important to research and understand the Robocopy flags you’re using to ensure
data validity for data migrations or backups.
With Files 3.7, we can support 13,800 simultaneous FSCT users with a single four-node Files
cluster.
Based on memory analysis and capacity testing, we have defined the following configuration
limits in software tied to FSVM hardware. We have stress-tested these limits with Windows VDI
clients to ensure that they work well for general single user to single share connections. Note that
the following table presents user count numbers per node; we expect these numbers to scale
with Files cluster node count.
It is important to note that the connection count system limits listed in the preceding table do
not apply for terminal servers. A terminal server is a server that enables multiple client systems
to connect to a LAN network without using a modem or a network interface. Two common
terminal server solutions are Windows Terminal Servers and VMware Horizon View. Each of
these solutions allows multiple users to access Nutanix Files through one connection through one
server. Given the density of users on one connection, this use case has higher CPU processing
and memory requirements. We suggest configuring no more than 20 users per Windows Terminal
Server or VMware Horizon View server connecting to a Nutanix Files share. There are no Files
system hardware or software limits that enforce this recommendation; it is up to the architects
to design with this guidance in mind to achieve balanced density and consistent performance.
Terminal servers work well with Nutanix Files when properly designed.
9. Conclusion
Nutanix Files is a robust, software-defined file sharing solution that deploys like an app on top
of the Nutanix enterprise cloud. The workload testing detailed here shows that the solution can
perform well for a wide range of deployments and applications. Contact Nutanix to find out how
you can replace aging NAS appliance silos with a modern Files solution. For any questions or
updates, please contact the Nutanix Files team or use the Nutanix NEXT Community forums.
9. Conclusion | 29
Nutanix Files Performance
Appendix
Appendix | 30
Nutanix Files Performance
Appendix | 31
Nutanix Files Performance
you can improve your results for Nutanix Files in any situation by following some of the practices
discussed in this paper.
Note: We performed all tests with standard Nutanix space-saving and data
protection features enabled, including Files share-level compression and fault
tolerance 1 (FT 1).
About Nutanix
Nutanix makes infrastructure invisible, elevating IT to focus on the applications and services that
power their business. The Nutanix enterprise cloud software leverages web-scale engineering
and consumer-grade design to natively converge compute, virtualization, and storage into
a resilient, software-defined solution with rich machine intelligence. The result is predictable
performance, cloud-like infrastructure consumption, robust security, and seamless application
mobility for a broad range of enterprise applications. Learn more at www.nutanix.com or follow us
on Twitter @nutanix.
Appendix | 32
Nutanix Files Performance
List of Figures
Figure 1: Nutanix Enterprise Cloud OS Stack................................................................... 9
Figure 2: Nutanix Files Server Instances Run as VMs for Isolation from the Distributed
Storage Fabric..............................................................................................................10
Figure 7: Peak Copy and Paste Speed from Single Windows Client to Nutanix Files
Share............................................................................................................................ 25
33
Nutanix Files Performance
List of Tables
Table 1: Document Version History................................................................................... 7
Table 11: Video Data Streams Capture Operation Types: Workload 1............................ 23
Table 12: Video Data Streams Capture Operation Types: Workload 2............................23
34