Difference between revisions of "QuantaStor Internal Architecture"

From OSNEXUS Online Documentation Site
Jump to: navigation, search
m (Filesystem Support)
m (Hardware RAID Support)
Line 9: Line 9:
  
 
== Hardware RAID Support ==
 
== Hardware RAID Support ==
 +
 +
[[File:qs_hwarch.png]]
  
 
Hardware RAID controllers generally far outperform software RAID for write performance when combined with a battery backup unit because the RAID controller can safely complete a write once it has been stored in the battery backed write cache.  Most modern RAID controllers have at least 1GB of DDR3 protected cache so for most workloads it provides a major performance boost.  QuantaStor has deep integration with all major RAID controllers (LSI, Adaptec, HP, etc) so that it can configure and monitor the health of your system from top to bottom without having to resort to BIOS configuration or command line configuration utilities.  To configure the hardware RAID layer of your system simply choose the 'Hardware Controllers & Enclosures' section of the web management interface.  Internally QuantaStor integrates with the hardware controllers by calling APIs or communicating with the hardware via CLI utilities to monitor and manage the hardware.
 
Hardware RAID controllers generally far outperform software RAID for write performance when combined with a battery backup unit because the RAID controller can safely complete a write once it has been stored in the battery backed write cache.  Most modern RAID controllers have at least 1GB of DDR3 protected cache so for most workloads it provides a major performance boost.  QuantaStor has deep integration with all major RAID controllers (LSI, Adaptec, HP, etc) so that it can configure and monitor the health of your system from top to bottom without having to resort to BIOS configuration or command line configuration utilities.  To configure the hardware RAID layer of your system simply choose the 'Hardware Controllers & Enclosures' section of the web management interface.  Internally QuantaStor integrates with the hardware controllers by calling APIs or communicating with the hardware via CLI utilities to monitor and manage the hardware.

Revision as of 16:45, 21 May 2013

The QuantaStor Software Defined Storage platform implements a layered architecture for IO which leverages many storage components you would typically find in an enterprise Linux server deployment. The following diagram illustrates the key layers in some detail to give you a better understanding of how the system is designed.

Qs ioarch.png

Filesystem Support

QuantaStor storage pools can be created on top of three different filesystem types, XFS, BTRFS, and ZFS. Almost all production deployments as of mid-2013 are using XFS which is a fast mature filesystem that is used broadly in the enterprise. BTRFS was introduced into QuantaStor in 2010 but as only matured recently but it's adoption is increasing due to it's advanced feature set which includes snapshots and compression. ZFS in QuantaStor is based on the ZFS on Linux (ZoL) port of the filesystem and will be introduced into QuantaStor v3.6 in June/2013. ZFS is similar to BTRFS but is more mature than BTRFS and has some advanced features (like deduplication) which BTRFS currently lacks.

Hardware RAID Support

Qs hwarch.png

Hardware RAID controllers generally far outperform software RAID for write performance when combined with a battery backup unit because the RAID controller can safely complete a write once it has been stored in the battery backed write cache. Most modern RAID controllers have at least 1GB of DDR3 protected cache so for most workloads it provides a major performance boost. QuantaStor has deep integration with all major RAID controllers (LSI, Adaptec, HP, etc) so that it can configure and monitor the health of your system from top to bottom without having to resort to BIOS configuration or command line configuration utilities. To configure the hardware RAID layer of your system simply choose the 'Hardware Controllers & Enclosures' section of the web management interface. Internally QuantaStor integrates with the hardware controllers by calling APIs or communicating with the hardware via CLI utilities to monitor and manage the hardware.

Storage Pool Replication

QuantaStor utilizes the DRBD driver to provide storage pool level replication between hosts. This makes it so that you can failover to another remote system in the event of a site or hardware outage at your primary site. When replicating a storage pool from one system to another you must first create a 'grid' and add the remote storage appliance to the grid to which you want to replicate. There must also be a target storage pool that is at least as big as the source storage pool in order for the pool replication to work. Creating a storage pool replication link is a straight forward process, you simply right-click on the primary Storage Pool to be replicated in the web management interface and choose 'Create Pool Replication Link..'. All the internal configuration details and considerations for proper DRBD setup are all handled internally to the system. For the curious, the DRBD resource configuration files are all stored in the standard location within the appliance at /etc/drbd.d/.

Performance Tuning

QuantaStor allocates and configures the various layers of a storage pool to optimize for performance. In some cases tuning for one type of application may not be as ideal for another so our default configuration is tuned to deliver good performance for a broad set of workloads. In some cases though it may be beneficial to select one of our preset IO profiles for your storage pool to match your application type. IO profiles determine factors such as read-ahead and stripe size and can be changed via the 'Modify Storage Pool..' dialog in the web management interface. Custom IO profiles can also be developed by adding new entries to /etc/qs_io_profiles.conf and restarting the QuantaStor core service (service quantastor restart).