The amount of unstructured data is and will continue to increase exponentially due to astronomical data generated from videos, audios, graphics and web applications. Network Attach Storages (NAS) are one of the most popular storage systems in the enterprise world.
In most NAS systems, performance and scalability improvements are gained simply by leveraging newer generation processors and I/O technologies. However, one of the most striking limitations of traditional network attached storage is that at a given point in time, NAS environments can only scale up to certain limited level. It is perhaps this limitation that is paving the way for the next generation of storage technology: scale-out storage. A scale-out storage structure employs an architecture which instead of growing vertically, grows horizontally. It means that one needs to add more disks across multiple systems, instead of adding more disks in the same system for higher storage capacity. The scale out storage provides mechanism to scale in two different dimensions, storage capacity as well as performance power. Scale out storages also provides ease of management and low cost of ownership in a way that it requires low entry cost and provides the ability to scale capacity without increasing the management efforts and further allows just in time scalability reducing the initial investment.
Scale-out architecture influences the future of data storage management in a significant way by encouraging greater use of virtualization as a technology in storage. The scale-out storages provides the perfect back-end required for cloud computing. With the advent of cloud computing, the amount of data generated keeps increasing, and the scale out storages caters to these ever growing needs by scaling the throughput to the user and scaling the disk capacity to store enormous user data when needed. In this article, we first discuss the IBM SONAS offering, its components, and then see how IBM SONAS can be used by AIX clients to cater to their ever-growing storage needs.
IBM Scale Out Network Attached Storage (IBM SONAS) is a disruptive scale-out network attached storage system. It derives its high performance and scalability characteristics by interconnecting the high speed interface nodes with superior storage subsystem and IBM General Parallel File System (GPFS). Its advanced scale out capability coupled with automated data placement and unified management enables customers to rapidly expand storage infrastructure to multiple petabytes with minimal efforts. One of the distinguishing feature of IBM SONAS is that it uses a single global namespace to provide fast access to their data irrespective of the physical location of the files.
IBM SONAS is architected to have a dedicated management node and two or more interface nodes. The interface nodes provides file serving capabilities by connecting to the organization's ethernet IP network via NFS, CIFS and FTP protocols. To foster performance, the interface nodes are connected to redundant storage nodes using InfiniBand network. To enable availability, the storage nodes are integrated with RAID controllers which interface with the underlying disks storage. Figure 1 shows at a high level the different system components of IBM SONAS as described in IBM SONAS Information Center.(see Resources)
Figure 1. IBM SONAS high level system components
The scale-out model of IBM SONAS highly suits growing business needs with consideration to key elements like cost, performance, manageability and standard protocol support. Hence, it makes it suitable for small to medium businesses to vendors planning for storage cloud services to even large organizations working on having a consolidated private storage cloud.
The two noteworthy degrees of scalability provided by IBM SONAS which makes it a preferred filer are:
- Storage capacity with performance: Achieved by dynamically adding Storage Pods on need basis.
- File serving capability: Protocol handling power by dynamically plugging in Interface Nodes to support more client connections.
Some of the key features of IBM SONAS are:
- Scalable storage capacity, from 100's of terabytes to multiple petabytes
- Independent storage capacity and file serving capability scaling
- High parallel access to data
- Policy based Data placement and movement for enhanced tiering and ILM (Information Life-cycle Management)
- Easy management of large NAS installation
- Access standard Network File Services like NFS v2/v3, FTP and CIFS
- Completely centralized management and administration
- Support for up to 256 Snapshots per file system to provide Data Protection
For comprehensive understanding please refer to IBM SONAS Information Center.(see Resources)
IBM SONAS can seamlessly be incorporated into your existing infrastructure to help manage your storage needs. The NAS clients can choose different protocols to access the shared files and data. Your existing domain name server (DNS) can be used for load balancing the client request across multiple IP address supported by the IBM SONAS system. It integrates with your existing Microsoft Active Directory (AD) Server for authenticating existing users and using their groups. In addition, it can also supports LDAP server, as well as Samba PDC (Primary Domain Controller). IBM SONAS uses Network Time Protocol (NTP), which is a commonly used protocol for clock synchronization. It uses SNMP protocol to communicate its state and supports the popular Tivoli Storage Manager (TSM) for backup and archive needs.
IBM SONAS system can be administered via the command line interface (CLI) using the secure shell or via highly consumable web-based user interface using a standard web browser. Figure 2 gives a high level snapshot of the commonly deployed infrastructure services which IBM SONAS makes use of, thus enabling its adoption.
Figure 2. IBM SONAS integration with the existing Infrastructure
In this section, we discuss the basic IBM SONAS configuration and see how we can use IBM SONAS as a back-end store for UNIX systems in general and AIX in particular.
Typically, most of the IBM SONAS basic configuration and setup is executed by IBM. However, you are provided with a set of commands to verify the configuration using IBM SONAS command line interface (CLI). You are required to login to the IBM SONAS management node using SSH and the special CLI user provided by IBM. The session has explicitly chroot jail configured to avoid malicious activity or tampering with the system. Following are few handy IBM SONAS CLI commands:
- get_version prints the version of the IBM SONAS Product.
- lscluster lists all the clusters created and their details. Execution of this command helps verify the configuration and creation of the cluster.
- lsnode helps lists all the nodes in the cluster and their details.
- cfgldap, cfgad, cfgnt4, cfgsfu helps configure the authentication schemes with external LDAP server, AD server, Samba PDC or Services For UNIX user mappings respectively
- lsauth helps to verify the details of the authentication configuration.
- mknw is used to configure the network settings, like the IP addresses used to access the IBM SONAS system.
- lsnw is used to list all the public IP addresses served by the IBM SONAS system.
- lsfs is used to list all the created filesystems and their details.
- mkexport is used to create the exports (shares)which can be accessed by the NAS clients.
- lsexport is used to view all the existing exports (shares), their name, path and protocol.
Please note that in IBM SONAS 22.214.171.124 the NFS authentication is only done by host name/IP address. Authorization is based on uids/gids and the NFS client sends the uid/gids of the current user to the IBM SONAS (NFS Server). Thus you must ensure that the client have the same id mapping as that on IBM SONAS.
The following sample output of these IBM SONAS commands help us configure a basic IBM SONAS system.
Code 1: IBM SONAS Commands.
sonasisvaix4> hostname sonasisvaix4.storage.tucson.ibm.com sonasisvaix4> ssh email@example.com firstname.lastname@example.org's password: [sonasisv.storage.tucson.ibm.com]$ get_version SONAS Version: 126.96.36.199-7 [sonasisv.storage.tucson.ibm.com]$ lscluster ClusterId Name PrimaryServer SecondaryServer 12402779238924710539 sonasisv.storage.tucson.ibm.com strg001st001 strg002st001 [sonasisv.storage.tucson.ibm.com]$ lsnode Hostname IP Description Role Product Version Connection status GPFS status CTDB status Last updated int001st001 172.31.132.1 interface 188.8.131.52-6 OK active active 4/24/10 4:01 PM int002st001 172.31.132.2 interface 184.108.40.206-6 OK active active 4/24/10 4:01 PM int003st001 172.31.132.3 interface 220.127.116.11-6 OK active active 4/24/10 4:01 PM mgmt001st001 172.31.136.2 management 18.104.22.168-6 OK active active 4/24/10 4:01 PM strg001st001 172.31.134.1 storage 22.214.171.124-6 OK active 4/24/10 4:01 PM strg002st001 172.31.134.2 storage 126.96.36.199-6 OK active 4/24/10 4:01 PM [sonasisv.storage.tucson.ibm.com]$ lsauth userName = Administrator domain = sonasDM AUTH_TYPE = ad realm = sonasDM.STORAGE.TUCSON.IBM.COM passwordServer = sonaspb11.sonasdm.storage.tucson.ibm.com clusterName = sonasisv [sonasisv.storage.tucson.ibm.com]$ lsnw Network VLAN ID Network Groups IP-Addresses Routes 188.8.131.52/26 int 184.108.40.206,220.127.116.11,18.104.22.168,22.214.171.124, 126.96.36.199,188.8.131.52,184.108.40.206,220.127.116.11,18.104.22.168,22.214.171.124,126.96.36.199 0.0.0.0/0:188.8.131.52 [sonasisv.storage.tucson.ibm.com]$ lsfs Cluster Devicename Mountpoint Type Remote device Quota Def. quota Blocksize Locking type ACL type Inodes Data replicas Metadata replicas Replication policy Dmapi Block allocation type Version Last update sonasisv.storage.tucson.ibm.com av /ibm/av local local user;group;fileset 256K nfs4 nfs4 100.000M 1 1 whenpossible T scatter 11.05 4/5/10 9:21 AM sonasisv.storage.tucson.ibm.com gpfs0 /ibm/gpfs0 local local user;group;fileset 256K nfs4 nfs4 100.000M 1 1 whenpossible F scatter 11.05 4/5/10 9:21 AM [sonasisv.storage.tucson.ibm.com]$ mkexport remote_storage /ibm/gpfs0/remote_storage --nfs "*(rw,no_root_squash)" EFSSG0019I The export remote_storage has been successfully created. [sonasisv.storage.tucson.ibm.com]$ lsexport Name Path Protocol Active Timestamp remote_storage /ibm/gpfs0/remote_storage NFS true 4/5/10 9:26 AM [sonasisv.storage.tucson.ibm.com]$ exit logout Connection to sonasisvc1.storage.tucson.ibm.com closed.
IBM SONAS provides a single global namespace and mechanisms to share the data with multiple AIX clients. Since IBM SONAS supports NFS and FTP protocols, which are inherent to AIX and other Linux machines, it fits best into UNIX infrastructure. You can use standard NFS protocol to access data on IBM SONAS systems eradicating the need to install any special clients or code on each client. You can now use IBM SONAS NFS shares for your critical applications like databases, technical applications and services running on your AIX and Linux systems. The GPFS enabled IBM SONAS filer further helps leverage high data storage performance to your AIX and Linux systems aiding in a uniform, consolidated and cohesive storage management. The IBM SONAS snapshots facility provides reliable data protection of your AIX or Linux data, making sure that you can go back to a point in time copy of it. Thus, IBM SONAS easily integrates in the AIX and Linux environment to provide the extra consolidated storage space along with various other features.
In the previous section, we configured the basic IBM SONAS system with a NFS export. Now let's configure an AIX system to access this share so that it allows the AIX users to use the NAS space. You can use any of the public IP address configured for the IBM SONAS system to mount the NFS export. In our scenario, we create a local directory "/mnt/storage". Then we mount the NFS shared path "/ibm/gpfs0/remote_storage" on this directory. We then create a file named test.txt in the NFS mounted directory. Further, to demonstrate the high availability and parallel accessibility of data using various IP addresses configured with IBM SONAS, we mount the same NFS share using a different IP address on a different path "/mnt/duplicate_storage". We then access the same file and verify that the contents are indeed the same.
Code 2: Using IBM SONAS from AIX or Linux.
sonasisvaix4> hostname sonasisvaix4.storage.tucson.ibm.com sonasisvaix4> uname -a AIX sonasisvaix4 1 6 0028D6AC4C00 sonasisvaix4> oslevel 184.108.40.206 sonasisvaix4> mkdir /mnt/storage sonasisvaix4> mount 220.127.116.11:/ibm/gpfs0/remote_storage /mnt/storage sonasisvaix4> sonasisvaix4> mount node mounted mounted over vfs date options -------- --------------- --------------- ------ ------------ --------------- /dev/hd4 / jfs2 Mar 21 14:52 rw,log=/dev/hd8 /dev/hd2 /usr jfs2 Mar 21 14:52 rw,log=/dev/hd8 /dev/hd9var /var jfs2 Mar 21 14:52 rw,log=/dev/hd8 /dev/hd3 /tmp jfs2 Mar 21 14:52 rw,log=/dev/hd8 /dev/hd1 /home jfs2 Mar 21 14:53 rw,log=/dev/hd8 /dev/hd11admin /admin jfs2 Mar 21 14:53 rw,log=/dev/hd8 /proc /proc procfs Mar 21 14:53 rw /dev/hd10opt /opt jfs2 Mar 21 14:53 rw,log=/dev/hd8 /dev/livedump /var/adm/ras/livedump jfs2 Mar 21 14:53 rw,log=/dev/hd8 18.104.22.168 /ibm/gpfs0/remote_storage /mnt/storage nfs3 Apr 05 09:42 sonasisvaix4> echo "Hi, This is a test" > /mnt/storage/test.txt sonasisvaix4> cat /mnt/storage/test.txt Hi, This is a test sonasisvaix4> mkdir /mnt/duplicate_storage sonasisvaix4> mount 22.214.171.124:/ibm/gpfs0/remote_storage /mnt/duplicate_storage sonasisvaix4> mount node mounted mounted over vfs date options -------- --------------- --------------- ------ ------------ --------------- /dev/hd4 / jfs2 Mar 21 14:52 rw,log=/dev/hd8 /dev/hd2 /usr jfs2 Mar 21 14:52 rw,log=/dev/hd8 /dev/hd9var /var jfs2 Mar 21 14:52 rw,log=/dev/hd8 /dev/hd3 /tmp jfs2 Mar 21 14:52 rw,log=/dev/hd8 /dev/hd1 /home jfs2 Mar 21 14:53 rw,log=/dev/hd8 /dev/hd11admin /admin jfs2 Mar 21 14:53 rw,log=/dev/hd8 /proc /proc procfs Mar 21 14:53 rw /dev/hd10opt /opt jfs2 Mar 21 14:53 rw,log=/dev/hd8 /dev/livedump /var/adm/ras/livedump jfs2 Mar 21 14:53 rw,log=/dev/hd8 126.96.36.199 /ibm/gpfs0/remote_storage /mnt/storage nfs3 Apr 05 09:42 188.8.131.52 /ibm/gpfs0/remote_storage /mnt/duplicate_storage nfs3 Apr 05 09:46 sonasisvaix4> cat /mnt/duplicate_storage/test.txt Hi, This is a test
With the scale-out architecture, IBM SONAS is a lucrative storage filer to satiate growing storage needs. IBM SONAS support for standard access protocols helps its integration in UNIX environment to store AIX and Linux data to ensure optimum cost of ownership. The other features of IBM SONAS further aids to centrally manage the UNIX data and provide high data access performance to applications and services.
Information Center provides detail documentation for planning, administering and using IBM SONAS.
- Learn more about
"IBM General Parallel File System"
AIX and UNIX: Want more? The developerWorks AIX and UNIX zone hosts hundreds of informative articles and introductory, intermediate, and advanced tutorials.
developerWorks technical events and webcasts: Stay current with developerWorks technical events and webcasts.
Get products and technologies
pack and web download pack: Start downloading now.
AIX Toolbox for Linux Applications.
- Follow developerWorks on Twitter.
- Get involved in the My developerWorks community.
Participate in the AIX and UNIX® forums:
- AIX Forum
- AIX Forum for developers
- Cluster Systems Management
- Performance Tools Forum
- Virtualization Forum
- More AIX and UNIX Forums
Sandeep Ramesh Patil is an advisory software engineer for the IBM India Software Labs. He has worked for IBM for the past nine years, focusing on distributed technology including DCE, SARPC, and security products such as the IBM Network Authentication Services (IBM Kerberos). He is an IBM developerWorks professional author. Sandeep holds a BE degree in computer science and engineering from the University of Pune, India. You can contact him at email@example.com.
Bhushan Pradip Jain is an associate software engineer working for the IBM India Software Labs. He has published a technology named as "Policy-Driven File Encryption Explorer Based on OpenPGP" under alphaWorks and is currently working on IBM Scaled out Network Attached Storage. He has also worked for developing Intrusion Detection System and implementation of part of the operating system for a multi-antenna telescope. Bhushan has completed his B.Tech. in computer engineering from College of Engineering, Pune (COEP). You can contact him at firstname.lastname@example.org.