Guide to OS X SAN Software
Total Page:16
File Type:pdf, Size:1020Kb
A Survey of the Landscape: Technology for Shared Storage A Guide to SAN Management Software for Mac OS X Updated August 2005 Copyright© 2004-2005 by CommandSoft, Inc. Abstract: This paper gathers and discusses known facts regarding different software products. Authored by the CommandSoft® people, who make the FibreJet® product line, it was written in the “work together” spirit and is encouraged background reading for all customers researching technology for shared storage. Customers are encouraged to perform their own due diligence and ask questions. This paper will be updated from time to time to include new relevant information. We would like to hear from you so send your questions, comments or suggestions to [email protected]. Version 1.0 Released January 2004 Version 1.0.1 Released March 2004 Per readers comments, updated FibreJet section to describe more details about its ability to “claim” and also “unclaim” storage. Also updated this section to describe some database failure situations. This should clarify how FibreJet behaves in these situations. Version 1.0.2 Released August 2005 Added Xsan section. Update FibreJet, ImageSAN, SANmp and Charismac sections to reflect latest findings. SAN Background A Storage Area Network (SAN) is a network that allows computers to be connected to storage devices in a fashion that allows many computers to connect to many storage devices. Before SANs, storage was normally connected to only one computer at any given time, with few exceptions. ONE-TO-MANY — STORAGE CONNECTED TO ONE COMPUTER As more general purpose, and longer distance connection technologies such as fiber optics and the Fibre Channel protocol were developed, these SAN options became available to general computer users. Version 1.0.2 August 2005 1 MANY-TO-MANY — A SAN, STORAGE CONNECTED TO MANY COMPUTERS Although there are different hardware and protocols you can use to build a SAN, one popular method uses fiber optic cabling, and the ANSI Fibre Channel (FC) protocol standard. A network is built using FC switches that connect the computers and storage into what is known as a FC fabric. Connection to the computers is often done with a PCI based Host Bus Adapter (HBA) that connects via the fiber optic cabling to the FC fabric switches. Version 1.0.2 August 2005 2 A FIBRE CHANNEL FABRIC WITH CONNECTIONS TO COMPUTERS AND STORAGE The SAN Problem: Operating Systems grab all disks The problem with many computers to many storage networks is that the computers and their Operation Systems (OS) are used to assuming that all the storage the computer can access is fair game for the OS. This creates a multiple-writer situation in which a computer writing data to the storage is not aware of any other computer also writing data to the same storage, at the same time and at the same locations. This quickly results in corrupted data to the file systems. For SANs to work, something is needed to manage the file system traffic so that data is safe and doesn’t get clobbered when everyone tries to write to the storage. That something is SAN management software that controls how the SAN uses shared storage connected computers. How SANs benefit customers For many environments, SANs allow significant gains in efficiency and cost savings as compared to storage directly attached to a single computer. Utilization of resources — Storage and Server Consolidation As computers utilize storage, SAN storage pools are ideal for changing demands for storage capacity by the various applications. It is much easier to allocate a piece of SAN storage to a computer through software verses the old method that would require upgrading the computer with more direct attached storage. POOLS OF STORAGE ALLOW GREATER UTILIZATION A SAN also addresses the problem in which some computers have unused storage that goes wasted as it is not being used. Because all the storage is in the SAN pool, utilization at all times is maximized. By consolidating storage resources into a dynamically reconfigurable, high-speed shared pool, the storage investment is optimized. Version 1.0.2 August 2005 3 SAN Implementation Types Shared Nothing - Storage Islands Some systems approach the SAN problem by implementing a method called “shared-nothing”. In this approach, the physical network connects everything, but access is restricted either by software, or hardware such as “switch” zoning, such that each computer would be allowed to see only that portion of storage it was granted access. The following summarizes disadvantages to this approach and why this approach is not appropriate in some situations: • It defeats the ability to actually share the storage, at the same time, with others. If sharing data at the same time is one of the goals, then the remaining reasons are moot. • Changes are not dynamic, and often require restarting one or more computers. • It can be a management nightmare, requiring trained, full-time administration, to make changes. • The granularity of control typically doesn’t match real world use of storage, at the individual file system level, but is limited to an entire storage device, or storage device logical unit (LU) per access permission. This is not practical in today’s world where a single LUN can easily be 1 tera-byte (TB) or larger. So the main issue with this approach is that it defeats the main benefit of a workgroup SAN, which is the ability to actually share the storage, at the same time, with others. Another equally important issue with this approach is management, and flexibility. With this approach, in almost all circumstances today, changing the configuration, access permissions, or zones actually requires the editing station to do something before the changes will be seen. This inevitably involves restarting the computer to reflect the changes! Even worse, while the changes are being made, some computers involved might need to shutdown and thus stop working! Also, simply making the changes is complex and requires a trained administrator to manage the storage system, its allocations, and its permissions full-time. Lastly, these approaches greatly suffer because the granularity of control is often an entire storage device, and at best a single logical unit (LU) of the storage device, as opposed to an individual file system. Nonetheless, some SANs that are designed for consolidation purposes utilize the storage pool and restrict access to pieces of storage to specific computers. Often done with switch zoning, this method prevents other computers from accessing any other storage that is outside its zone membership. This prevents the multiple-writer data corruption problem. In this environment the storage pool Version 1.0.2 August 2005 4 resources are available for allocation to many computers but nothing is actually shared at any one time. SHARED NOTHING — STORAGE ISLANDS COURTESY OF SWITCHED ZONING As mentioned earlier, most switch based zoning available today is limited in granularity to an entire storage device (see the section later on called “Granularity of control — LUN structure background” for examples). This fact severely limits utilization choices as an entire storage device may be many TB in size, which is not always practical to assign to a single computer. Some expensive higher end switches allow zoning at the sub-device level known as Logical Unit (LU) zoning, but a LU is still a very large chunk for a single computer. The ANSI Small Computer System Interface (SCSI) storage protocol that storage devices utilize, allow for a sub-device addressing unit called Logical Unit Number (LUN). LUN addressing is mostly utilized by expensive storage devices known as RAID (Redundant Array of Independent Disks). A user configures the storage device and creates a number of LUs. This process is similar to partitioning a storage device using the OS, which is required before a file system can be placed on the device. Once a LU is created, it still needs to be partitioned in the OS, and is often broken down into multiple smaller pieces, each of which contain a separate file system. This is because a LU is usually limited to a minimum size, which is usually very large. Shared Everything - Shared Storage Another approach to the SAN problem and the idea behind Shared Storage is to allow a means for everything to be shared. What is needed is a method to transparently and dynamically reconfigure the storage networks at will without restarting any computers. Also the method would prevent multiple writers to a single file system at any given time while still allowing multiple computers to read the same data at the same time. Another desirable attribute would allow unrestricted multiple writers to the same file system at the same time without corrupting any storage. Version 1.0.2 August 2005 5 Storage capacity can be sized to your shared data requirements, not individual computer requirements. The cost of the SAN is paid for many times over in terms of time saved and storage efficiency. Users can work together, share their work with others, and all access the same data at the same time at incredible speeds. SHARED EVERYTHING — PROVIDING THE IMPORTANT OPTION TO WORK TOGETHER Client / Server Architectures — Multiple-writers to file system at a time In a variation on traditional client / server file sharing, some SAN architectures utilize third party transfer which enables the client itself to directly transfer file system data to and from the SAN storage. One must have a basic understanding of traditional Network Attached Storage (NAS) and how it fits into the client / server model before the SAN architecture modifications can be understood. TRADITIONAL CLIENT / SERVER NETWORK FOR FILE SYSTEM SHARING VIA NAS Version 1.0.2 August 2005 6 To understand the overhead involved with this type of network, and thus the SAN optimizations that can be done with it, we give some illustrated examples.