Exploring the openATTIC unified storage manager

Clean-Up

Author(s):

openATTIC promises open source, unified storage management for heterogeneous media. The easy web interface even supports network drives accessed through SMB and NFS.

If you ask five people for a definition of unified storage, you will receive seven contradictory answers. More and more providers of pre-configured storage solutions have seized on this problem and presented their products as the true "unified storage." Enter openATTIC [1], and thank goodness for it: the project promises to be a truly unified cross-protocol, storage management system based on open source components (Figure 1).

Figure 1: openATTIC lets you manage local drives, NFS volumes, FTP accounts, and Samba shares from a single web interface.

IT Novum [2] is the driving force behind openATTIC. The company advertises its product as an open source storage management framework. And, openATTIC sets out to generalize and bundle the management of virtually any type of storage under a unified and easy-to-use interface [3].

OpenATTIC is a relatively new solution, but IT Novum has quite definite ideas about how they want to market it. The core is the Community version (the version described in this article), which contains most of the features and is available under a free license. The Enterprise edition, which IT Novum also offers, includes additional support in various models up to 24/7, but at a price: Standard support starts at just under EUR 3,000 per year; the "XX-Large" package can quickly cost EUR 50,000 or more. (See the box titled "Commercial Benefits.")

Commercial Benefits

In addition to support, the commercial version offers features like Snap Apps, which create consistent snapshots of virtual systems and databases (the snapshots in the community edition only allow images on a disk or ZFS basis). In the form of SMI-S, openATTIC Enterprise is looking, in the future, to provide a vendor-independent interface for management tasks, but according to IT Novum, this function is currently still in development. The offer of Enterprise variant support from IT Novum during the openATTIC installation is certainly interesting.

OpenATTIC's web interface, one of its most important components, lets admins manage storage, create shares for various services, and delete resources. It also gives administrators the ability to handle all the other tasks that arise in the context of storage space, such as setting up the network interfaces. External applications can even manage storage directly, courtesy of the openATTIC API.

Installation

Before you can explore the wonders of openATTIC, however, you have to survive the installation, and this is where dark clouds start to gather. One thing soon becomes clear: OpenATTIC is still not a finished product for general use on Linux systems. Developers are currently programming openATTIC for Debian Testing. To make the product compatible with Debian GNU/Linux 6.0 (squeeze), they provide a script named Backport.sh, which back-ports some packages from the Debian Project's Testing distribution to squeeze.

This approach raises concerns: It is hard to explain why the openATTIC developers do not provide prebuilt packages for the required tools in the form of an APT repository, instead of a crude shell script. If you are prepared to take on the work of backporting or installing Debian wheezy, at least you can reap the rewards of prebuilt packages for openATTIC. But these packages do not work quite in the way you would expect of typical Debian packages: After installing the openattic package, a debconf message appears to tell you to run the oaconfig install shell script following the installation.

Admins also need to mark existing logical volumes that belong to the system, and which openATTIC should leave alone, as out of bounds.

What about the unlucky millions who do not use Debian but some other distribution? Installation instructions, other than the Debian instructions already mentioned, do not seem to exist. Using openATTIC on a distribution other than Debian probably requires courage and nerves of steel.

Getting Started

When you log in to the admin web interface, openATTIC presents a veritable cornucopia of functions. The GUI layout is classic: On the left is a list of the various modules; on the right, the contents of the module selected on the left.

Each task type is assigned its own menu in the dashboard: right at the top are the pages that provide an overview of the openATTIC system state. In addition to log messages from the host system and a chart-enhanced overview of the used and available storage, you will come across many useful features. For example, the environment comes with an implementation of Nagios 3, which monitors the vital statistics of the cluster and raises the alarm.

The Nagios monitoring configuration is fully automated; admins do not have to deal with complex Nagios internals. OpenATTIC tops off this view with charts and graphs that clearly reveal the network history and offer clues for finding future bottlenecks.

Storage Hardware

Management of physical storage devices is located below the statistics and overview functions. OpenATTIC supports many types of physical storage devices and allows easy administration using the web interface. Below the Disks heading, you will find a list of disks that are local to the machine, including volume groups created in LVM. Alternatively, you can use this menu to manage SAN storage devices that are connected to the host, say, via iSCSI.

Managing Volumes and Grabbing Snapshots

The Volume Management screen (Figure 2) oversees storage volumes and other resources: If you want the openATTIC machine to use a volume for a specific purpose, such as an NFS export (Figure 3) or a Samba share, you first need to create the volume. In the same menu, you will find the snapshot function, which lets you create snapshots of storage devices and volumes. A special treat: OpenATTIC also supports ZFS. If you rely on iSCSI in your network, you can also use the web interface to create iSCSI LUNs, which you can then integrate as local disks on the target servers.

Figure 2: Managing iSCSI devices in openATTIC.
Figure 3: Managing NFS resources in openATTIC.

In a mature IT setup, access to storage is desired not only at block level, but also via the various network file protocols, such as NFS or Samba. Often these network file protocols and services are distributed across various servers on the network and not centrally manageable.

Although openATTIC promises to put an end to this chaos, it succeeds only in part: The environment actually installs all the necessary components, such as NFS, FTP, and Samba server, and you can manage all these tools wonderfully via the Shares web interface menu. A previously created volume, for example, which is available as a local disk, can thus be shared quickly through NFS.

The same applies to Samba shares. If the admin has performed the appropriate steps in the web interface, setting up a Samba share for access by a Windows client is easy.

In view of these features, the quality of openATTIC is very impressive; in the lab, I really were able to create and use all the volumes as promised. On the other hand, openATTIC is deficient in situations where additional complex configuration is required; for example, the web interface still has no way to support Samba talking to LDAP.

System Management and HA

The fact that openATTIC is not only for storage management is clearly evidenced by the additional features available in the web interface. In essence, openATTIC is nearly comprehensive as a tool for system administration. For example, you can edit the system's network interface cards via the web interface. In Online Update, openATTIC provides a graphical update manager that calls Aptitude in the background. OpenATTIC automatically discovers which packages are upgradable on a regular basis; you only need to trigger this action.

The developers have also considered one other essential requirement of storage systems: high availability. In openATTIC, you can implement HA via the Peers function: For a full HA configuration, you initially need to build two openATTIC systems, each with its own API key. In the web interface, below Peers, you can then connect the two entities. If the openattic-module-drbd package is installed, you can proceed to set up replication.

If successful, openATTIC with Distributed Replicated Block Device (DRBD) ensures that the individual openATTIC machines always keep their data in sync. The nasty thing is that the mandatory set of HA programs, comprising Pacemaker and Corosync, cannot be configured via the web interface in openATTIC, but requires the use of additional software such as the Linux Cluster Management Console (LCMC) [4].

Given the fact that the implementation of a comprehensive GUI for Linux HA is extremely complicated, it is forgivable for openATTIC not to offer this feature at this early stage. It would be preferable for openATTIC to automatically integrate DRBD into an existing cluster manager.

Roller Coaster

OpenATTIC is promising, but in its current state, it still runs admins through a roller coaster of emotions. On one hand, the goal of providing a management front end for various storage technologies to put an end to the storage jungle is actually quite successful. After the installation, the environment is a complete management suite for any type of storage; it thus reduces the hassle of working with the many different protocols.

The fact that several openATTIC instances can connect with each other via the free API, and can also be incorporated into a high availability solution, is quite impressive. However, the installation is difficult, and an obscure shell script does not inspire confidence; to make matters worse, openATTIC currently only works reliably on Debian Wheezy.

Most likely, the choice of distribution is largely due to the personal preferences of the openATTIC developers. According to statements by Steffen Rieger, who manages openATTIC development at IT Novum, Wheezy really is the recommended distribution. But therein lies the rub: The market position that openATTIC currently adopts is not very meaningful. SUSE and Red Hat each have their own storage appliances that offer feature sets similar to openATTIC. If the project wants to compete with these solutions, it is inexcusable not to have pre-built packages for all enterprise distributions. But, if openATTIC wants to be an independent storage appliance that can be installed from a CD, the question arises as to why the project does not provide a matching image.

The openATTIC storage solution is fantastic and offers many benefits. But, unless it adds an Enterprise finish, the project will remain hidden to the many decision makers focused on enterprise-readiness.