Original URL: http://www.theregister.co.uk/2011/11/17/snia_cloud/
Implementing, serving, and using cloud storage
The SNIA's great introduction to cloud storage
Deep dive Introduction Organizations of all types are trying to control costs and satisfy increasing demands at the same time—demands created by explosive data growth and ever-changing requirements. To address these challenges, storage industry professionals are turning to cloud computing and cloud storage solutions.
It’s important to recognise that cloud computing is not a new technology, but rather, a new business model that encompasses an existing set of technologies—such as server virtualization—that reduce the cost of using information technology (IT) resources. Cloud computing takes advantage of Web-based mechanisms that allow scalable, virtualised IT resources to be provided as a service over a network. The advantages of cloud storage and other cloud services include “pay as you go” (i.e., billing only for services consumed—no fixed costs), the perception of infinite capacity (elasticity), and the simplicity of use/management.
When virtualised storage is available on demand over a network, organisations are not required to buy or provision storage capacity before storing data. As a result, organisations can save a significant amount of money on storage costs because they typically only pay for the storage that they actually use.
The Business Case for Cloud Storage
Cloud storage meets a variety of demands that applications and end-users normally make. These demands have traditionally been met in one of two ways: by investing in private disk storage—directly attached disks or network connected SAN and NAS systems—or by longer-term retention media, like tape for backup and archiving. Cloud storage promises a more efficient and flexible alternative for a variety of storage use cases, from Web-based media, such as video, audio, and electronic books; to archiving, where compliance, retention, and e-discovery are simplified. New requirements are also evolving, such as storage for cloud computing and applications.
To meet these diverse requirements, cloud storage has developed into three major implementations: public, private, and hybrid.
- A public implementation is a secure, multi-tenant environment that is externally available to all users.
- A private implementation is a secure, single-entity environment, either inside or outside an organisation’s firewall.
- A hybrid implementation is a combination of public and private clouds.
The term “multi-tenancy” is not new; both have been used to describe application architectures designed to support multiple users—the “tenants”—for many years. With the advent of cloud computing, this terminology has simply been extended to include any cloud architecture. Security in a multi-tenancy environment is essential, covers all aspects of the internal and external environment, and extends from the application through the server, network, and storage layers.
Equally important to the cloud storage provider is the allocation of costs. All types of clouds will require metering and billing—externally provided clouds that are dedicated to a single organisation, multi-tenancy clouds, and even internally provided cloud storage (or at least, cross charging to internal business units).
The challenge for cloud providers is to show that cloud computing can meet a potential user’s peak demands without expanding existing facilities and at a price that is less than or equal to the non-cloud alternative.
The Requirement for a Cloud Storage Standard
When the SNIA recognised the significant changes in the way that organisations use storage, it developed the Cloud Data Management Interface (CDMI) standard for cloud storage vendors and others to use when implementing their own public, hybrid and private clouds.
Because the variety of use cases rarely share a common interface to cloud storage, SNIA formed a technical working group (TWG) with over 75 members to develop a standard for cloud storage. In June 2009, it published a use cases and reference model, and in July 2010, the TWG published the first draft standard, the Cloud Data Management Interface (CDMI). Now, in late 2011, the first draft specification is ready to be submitted to ISO for certification as an international standard.
A cloud represents a “fuzzy” container for data, and the user doesn’t really care how the cloud provider implements, operates, or manages the cloud. A client, through the medium of a network, makes requests to the cloud storage to securely store and subsequently retrieve data at an agreed level of service.
Regardless of the data type managed, whether it be files, objects or even traditional SAN LUNs, cloud storage is a pool of resources that are provided in small increments with the appearance of infinite capacity. In other words, cloud storage is virtualised storage on demand and is more formally called 'Data Storage as a Service' (DaaS). DaaS is defined as “Delivery over a network of appropriately configured virtual storage and related data services, based on a request for a given service level.”
As vendors and suppliers of cloud services have delivered early implementations to users, they have tended to supply a multitude of interfaces that have been re-purposed for DaaS, such as block-based access via iSCSI; POSIX interfaces (NFS, CIFS, and WebDAV); object-based CRUD (Create, Read, Update, Delete) interfaces over HTTP; and a plethora of other proprietary interfaces for database or table access
CDMI: The Complete Picture
Clients can adapt their existing, proprietary interface, while still allowing access via CDMI or standards-based interfaces, such as POSIX, XAM and so on. They can adapt their interface by:
- Abstracting the data and storage services into data storage cloud containers
- Providing a consistent and uniform interface to gain access through CDMI
The CDMI defines the functional interface that applications can use to create, retrieve, update, and delete data elements from the cloud. As part of this interface, the client can discover the capabilities of the cloud storage offering and use this interface to manage containers and the data that is placed in them. In addition, metadata can be set on containers and their contained data elements through this interface.
SNIA cloud storage schematic
The same interface is also used by administrative and management applications to manage containers, accounts, security access, and monitoring/billing information, even for storage that is accessible by other protocols. The capabilities of the underlying storage and data services are exposed so that clients can understand the full capabilities of the storage being used.
The Design of the Cloud Data Management Interface
Designed to enable interoperable cloud storage and data management, the CDMI specification is aggressively addressing a total cloud storage solution. This solution helps users avoid the chaos of proprietary advances and partial-solution APIs that would erode the integrity of the cloud model.
Easy to implement, CDMI integrates and is interoperable with various types of client applications and is designed to be compatible with current public cloud storage offerings. CDMI offers standard approaches to data portability, compliance, and security. It also offers the ability to connect one cloud provider to another, enabling compatibility among cloud vendors.
Providing both a data path to the cloud service and a management path for the cloud data, CDMI is the functional interface that applications use to create, retrieve, update, and delete data elements in the cloud. As part of this interface, the client will be able to discover the capabilities of the cloud storage offering and use this interface to manage containers and the data that is placed in them. The semantics of CDMI are straightforward; simple containers and data objects are tagged with metadata—some of which are metadata that describe the data requirements of the object or container. The protocol for accessing the data and metadata is RESTful HTTP, first outlined by Roy Fielding.
How CDMI Will Roll Out
Since CDMI can be used as both a data path and a management path, there are several ways to deploy an implementation of CDMI for a private, public, or hybrid cloud. First of all, CDMI can be deployed side by side with existing proprietary interfaces. This deployment allows existing applications to move over to the standard interface when they want to take advantage of the features.
The side-by-side deployment allows the same data to be accessed via either interface, and no movement of data is required. As the cloud provider adds additional data services and capabilities to their service, the application can use the CDMI interface to ensure that the existing data requirements are being met using those new services. If the cloud provider implements the CDMI accounting, users can use that function to administer the security and to programmatically access their bill.
CDMI has many capabilities and not all will be implemented by every cloud offering. CDMI has capability resources that let a client application programmatically find out which capabilities are actually implemented before trying to use them. This feature also allows new cloud offerings to use CDMI as the initial interface for their service, expanding the implementation of CDMI as the offering increases capabilities. CDMI is also extensible to accommodate services and features that are not yet standardised, which means that those functions will not require separate, proprietary interfaces.
There are many advantages to using public, private, and hybrid clouds as part of an organization’s long-term storage strategy. In private/hybrid models, internal IT departments have more control of their data (vs. public clouds) without needing to actively manage it, resulting in significantly lower costs than traditional storage. Public clouds offer the availability of storage capacity on a pay-as-you-go basis, combined with scalability and ease of use and can offer much needed cost savings.
CDMI, by enabling interoperable cloud storage and data management, provides a new paradigm of managing all cloud environments, while maintaining the simplicity that makes the cloud approach attractive. With its total cloud storage solution, CDMI is helping users avoid concerns around proprietary cloud advances and partial-solution APIs, while helping to maintain the integrity of the cloud model.
This article is based on a series of SNIA tutorials on cloud storage technologies. To view all of the tutorials on Data Protection and Management, visit the SNIA Europe website.
It was written by Alex McDonald, SNIA Europe UK Country committee member. He works for NetApp.
About the SNIA
The Storage Networking Industry Association (SNIA) is a not-for-profit global organisation, made up of some 400 member companies spanning virtually the entire storage industry. SNIA's mission is to lead the storage industry worldwide in developing and promoting standards, technologies, and educational services to empower organisations in the management of information. To this end, the SNIA is uniquely committed to delivering standards, education, and services that will propel open storage networking solutions into the broader market.
About SNIA Europe
The Storage Networking Industry Association (SNIA) Europe is dedicated to educating the market on the evolution and application of storage infrastructure solutions for the data centre by providing thought leadership and industry education focussed on storage technologies and business value. For more information visit: www.snia-europe.org.