8.4 NAS Array Architecture and its Components

Any commonly used NAS system consists of two components, 
  • Controller: A controller is a compute system that contains components such as network, memory, and CPU resources. A specialized operating system optimized for file serving is installed on the controller. Each controller may connect to all storage in the system. The controllers can be active/active, with all controllers accessing the storage, or active/passive with some controllers performing all the I/O processing while others act as spares. The controller is responsible for configuration of RAID set, creating LUNs, installing file system, and exporting the file share on the network.
  • Storage: Storage is used to persistently store data. The NAS system may have different types of storage devices to support different requirements. The NAS system may support SSD, SAS, and SATA in a single system.

NAS Array Architecture Overview

The extent to which the components, such as CPU, memory, network adaptors, and storage, can be scaled depends upon the type of NAS architecture used. There are two types of NAS architectures; scale-up and scale-out.

Also Read: Introduction to Fibre Channel (FC) SAN Architecture and port virtualization 

Scale-up NAS Arrays
A scale-up NAS architecture provides the capability to scale the capacity and performance of a single NAS system based on requirements. Scaling up a NAS system involves upgrading or adding NAS controllers and storage. These NAS systems have a fixed capacity ceiling, which limits their scalability. The performance of these systems starts degrading when reaching the capacity limit.

Scale-out NAS Arrays
The scale-out NAS implementation pools multiple NAS nodes together in a cluster. A node may consist of either the NAS controller or the storage or both. The cluster performs the NAS operation as a single entity. A scale-out NAS provides the capability to scale its resources by simply adding nodes to a clustered NAS architecture. Scale-out NAS provides the flexibility to use many nodes of moderate performance and the availability characteristics to produce a total system that has better aggregate performance and availability. It also provides ease of use, low cost, and theoretically unlimited scalability. Scale-out NAS uses a distributed clustered file system that runs on all nodes in the cluster. All information is shared among nodes, so the entire file system is accessible by clients connecting to any node in the cluster. 

Scale-out NAS stripes data across all nodes in a cluster along with mirror or parity protection. As data is sent from clients to the cluster, the data is divided and allocated to different nodes in parallel. When a client sends a request to read a file, the scale-out NAS retrieves the appropriate blocks from multiple nodes, recombines the blocks into a file, and presents the file to the client. As nodes are added, the file system grows dynamically and data is evenly distributed to every node. Each node added to the cluster increases the aggregate storage, memory, CPU, and network capacity. Hence, cluster performance is also increased.
Scale-out NAS

Scale-out NAS clusters use separate internal and external networks for back-end and front-end connectivity respectively. An internal network provides connections for intra-cluster communication, and an external network connection enables clients to access and share file data. Each node in the cluster connects to the internal network. The internal network offers high throughput and low latency and uses high-speed networking technology, such as InfiniBand or Gigabit Ethernet. To enable clients to access a node, the node must be connected to the external Ethernet network. Redundant internal or external networks may be used for high availability.

InfiniBand is a networking technology that provides a low-latency, high-bandwidth communication link between hosts and peripherals.

Additional NAS Array Components

NAS Device: 
Unlike a general-purpose server, a NAS device is dedicated to file-serving. It has a specialized operating system dedicated for file serving by using industry standard protocols. A NAS device uses its own operating system and integrated hardware and software components to meet specific file-service needs. Its operating system is optimized for file I/O and, therefore, performs file I/O better than a general-purpose server. As a result, a NAS device can serve more clients than general-purpose servers and provide the benefit of server consolidation.

Also Read: Storage Provisioning and Capacity Optimization Techniques

A NAS device is optimized for file-serving functions such as storing, retrieving, and accessing files for applications and clients.  NAS vendors also support features, such as clustering for high availability, scalability, and performance. The clustering feature enables multiple NAS controllers/heads/nodes to function as a single entity. The workload can be distributed across all the available nodes. Therefore, NAS devices support massive workloads.

NAS Gateway:
A gateway NAS system consists of one or more NAS heads and uses external and independently managed storage. The NAS gateway shares the storage from a block-based storage system. The administrative tasks of the NAS gateway are performed by the NAS management software and the storage system is managed with the management software of the block-based storage system. A gateway solution can use the FC infrastructure, such as switches and directors for accessing SAN-attached storage arrays or direct-attached storage arrays.

What Others are Reading Now...

0 Comment to "8.4 NAS Array Architecture and its Components"

Post a Comment