Download as odt, pdf, or txt
Download as odt, pdf, or txt
You are on page 1of 7

Cinder is the code name for the open source project to develop OpenStack Block

Storage, the block-based storage component of the OpenStack platform for cloud
computing.
OpenStack Block Storage provides the software to create and centrally manage a
service that provisions storage in the form of block devices known as
Cinder volumes. Under the most common scenario, the Cinder volumes provide
persistent storage to guest virtual machines (known as instances) that are
managed by OpenStack Compute software. Cinder can also be used
independently of other OpenStack services.
Cinder permits organizations that deploy it to make available a catalog of blockbased storage devices with differing characteristics. For instance, one potential
storage volume type might be a high-performance option for database storage.
Cinder also features basic storage capabilities such as snapshot management and
volume clones, which are often enhanced through vendor-specific drivers.
The physical storage media, whether disks or solid-state drives, can be located
within or directly attached to the Cinder server nodes, or they can be located in
external storage systems from third-party vendors. Third-party storage vendors
use Cinder's plug-in architecture to do the necessary integration work. The backend path from the external storage systems to the compute nodes where the
hypervisors are located can be iSCSI, Network File System (NFS) or Fibre Channel.
Cinder was originally a component of the Nova project, which is the code name for
the OpenStack Compute service. It was known as "nova-volume" until the project
broke off into the independent Cinder project. The first release of Cinder emerged
in the fall of 2012.

OpenStack Block Storage (Cinder)

SAN/NAS vendors hire Calsoft to build 'Cinder plug-ins' to integrate storage arrays in an OpenStack environment.

Customer Benefits :
1. Array Integration

Readiness for Cloud Storage

Reduced complexity and cost

Ease of storage-array management


2. Data Storage

Data accessibility in cloud

Object 1

Calsoft's Expertise:

Storage driver integration with OpenStack


Plug-in testing using OpenStack standard (tempest)
OpenStack APIs implementation - Design use cases as mentioned below:
1. Volume operations (create, delete, clone, attach/detach to VM, stats)
2. Snapshot operations (create, delete & create volume from)
3. Image operations (clone, copy to & from volume)
4. Backup & volume restoration operations and export creation and removal operations

Cinder Plug-in Implementation

OpenStack Cloud Storage Services: First Look at


Folsoms Cinder project
by Sergey Kashaba
August 29, 2012

Introduction

After the April Essex release, theres big change in planned for OpenStacks volume
management; it is now called Cinder.
Cinder is a new service for OpenStack, one that separates storage management logic.
Until now, in the Essex release, this logic was a part of Nova, and was called the novavolume component. But, as often happen in software, logical interdependencies
between components within Nova became more and more complex, so the project
developers decided to make storage management logic separate from Nova and create
Cinder.
In fact, this is one of the first instances of OpenStacks recent development policy of
breaking all Nova components into smaller building blocks. Nova had become a bulky
piece of software; development in one area was too often contingent on knowledge of
others. By decoupling Nova into smaller chunks and interfacing them, developers can
focus on developing these chunks as long as they provide the proper API for other
services to plug in. This allows a better focus on different areas of OpenStack.

OpenStack Cinder: feature list


For Cinder, the separation from Nova is mainly organizational in naturethe project is
now literally a copy-paste version of old nova-volume code with a separate database.
The main goal for Cinder in the Folsom release is to provide the same API and features
as in the current nova-volume, plus prepare for further focused work on the topic in
future releases.
The bottom line is: in Folsom we are just getting our old buddy nova-volume; at the
same time, the developers managed to put some cool new features in this release and
also lay some groundwork for the future:

volumes from images this feature is addressed in the following two blueprints
accepted for Folsom: creating volumes from images and efficient volumes from images.
This feature allows for the creation of bootable volumes directly from glance images and
is further used by the boot from volume feature of Nova.
Still TBD: multi volume backend, which will allow users to take advantage of different
storage providers with a single installation of Cinder. It is addressed in this blueprint and
is still undergoing code review.

One of the Cinder projects main roles is serving as the abstraction layer for different
storage devices. Currently the following list of storage backends is supported, directly
through their respective native APIs:
IBM Storwize V7000 unified storage system
IBM XIV Storage System series

NetApp onTap devices. Both the volume as a block device and the volume as a file on
NFS are supported.
SheepDog storage system
SolidFire high performance SSD storages
NexentaStor Appliance

Cinder structure
Cinder consists of three basic servicesCinder API, Cinder scheduler, and Cinder
volume, plus the underlying dedicated database.

Cinder API is a web service (providing a RESTful interface) responsible for handling user
requests. In an OpenStack cluster, there can be many hosts that run the Cinder volume
component. In order to load-balance volume creation between Cinder volumes, there is
a Cinder scheduler component that implements this logic. The Cinder volume service is
basically an abstraction layer to the different storage backends listed above.

Connection with the old nova-volume API

Despite migrating volume functionality to the separate project, Nova still supports
volume management as originally implemented in the nova-volume component. Which
approach to use is up to you when you install, but keep in mind that the plan is to
completely remove volume management from Nova. By default Nova will use novavolume, but it can be easily switched to Cinder by setting a flag:
1

volume_api_class=nova.volume.cinder.A
PI

The user is free to use the old, familiar nova volume-* commands, or can switch to
the brand new python-cinderclient. These commands provide exactly the same
behavior:

1
2
3
4
5

#creation of the volume sized 10 GB with pythoncinderclient


cinder create --display_name vol0 10
#creation of the volume sized 10 GB with python-novaclient
nova volume-create --display_name vol0 10

Final observations
In sum, Cinder offers stability with respect to nova-volume features, but simplifies code
maintainability. While that may be a disappointment to some who expect constant
activity in new features, its really an important sign of maturity, as it opens the code
base to broader innovation with greater depth in storage functionality.
Stay tuned for our upcoming post which will deal with high availability of API services in
Openstack.

OpenStack
OpenStack is an open source infrastructure as a service (IaaS) initiative for
creating and managing large groups of virtual private servers in a cloud
computing environment.
The goals of the OpenStack initiative are to
support interoperability between cloud services and allow businesses to
build Amazon-like cloud services in their own data centers. OpenStack,
which is freely available under the Apache 2.0 license, is often referred to
in the media as "the Linux of the Cloud" and is compared to Eucalyptus and the
Apache CloudStack project, two other open source cloud initiatives.
OpenStack has a modular architecture that currently has three components:
compute, storage and image service.
OpenStack Compute - a cloud computing fabric controller for provisioning and
managing large networks of virtual machines (VMs).
OpenStack Object Storage - a scalable storage system that provides support
for bothobject storage and block storage.
Image Service - a delivery service that provides discovery and registration
for virtual disk images.
The National Aeronautics and Space Administration (NASA) worked with
Rackspace, a managed hosting and cloud computing service provider, to develop
OpenStack. RackSpace donated the code that powers its storage and content

delivery service (Cloud Files) and production servers (Cloud Servers). NASA
contributed the technology that powers Nebula, their high performance
computing, networking and data storage cloud service that allows researchers to
work with large scientific data sets.
OpenStack officially became an independent non-profit organization in September
2012. The OpenStack community, which is overseen by a board of directors, is
comprised of many direct and indirect competitors, including IBM, Intel and
Vmware.

Vps ,vds
A virtual private server (VPS), also called a virtual dedicated server (VDS), is
a virtual serverthat appears to the user as a dedicated server but is actually
installed on a computer serving multiple Web sites. A single computer can have
several VPSs, each one with its ownoperating system (OS) that runs the hosting
software for a particular user.
The hosting software for each VPS can include a Web server program, a File
Transfer Protocol (FTP) program, a mail server program and specialized
applications for activities such as e-commerce and blogging.
The VPS alternative is often chosen by small businesses that need a customized
Web site but cannot afford a dedicated server. Another useful aspect of VPS
technology is the ability of a single subscriber to maintain multiple virtual servers.
For example a Web site owner might use one server for the production-level Web
site and the other for a "dummy site" that can be used to test planned updates,
modifications or new programs.
Cloud computing
is a general term for anything that involves delivering hosted services over the
Internet. These services are broadly divided into three categories: Infrastructureas-a-Service (IaaS), Platform-as-a-Service (PaaS) and Software-as-a-Service
(SaaS). The name cloud computing was inspired by the cloud symbol that's often
used to represent the Internet inflowcharts and diagrams.
A cloud service has three distinct characteristics that differentiate it from
traditional hosting. It is sold on demand, typically by the minute or the hour; it is
elastic -- a user can have as much or as little of a service as they want at any
given time; and the service is fully managed by the provider (the consumer needs
nothing but a personal computer and Internet access). Significant innovations in
virtualization and distributed computing, as well as improved access to highspeed Internet and a weak economy, have accelerated interest in cloud
computing.

A cloud can be private or public. A public cloud sells services to anyone on the
Internet. (Currently, Amazon Web Services is the largest public cloud provider.)
A private cloud is a proprietary network or a data center that supplies hosted
services to a limited number of people. When a service provider uses public cloud
resources to create their private cloud, the result is called a virtual private cloud.
Private or public, the goal of cloud computing is to provide easy, scalable access
to computing resources and IT services.
Infrastructure-as-a-Service like Amazon Web Services provides virtual server
instanceAPI) to start, stop, access and configure their virtual servers and storage.
In the enterprise, cloud computing allows a company to pay for only as much
capacity as is needed, and bring more online as soon as required. Because this
pay-for-what-you-use model resembles the way electricity, fuel and water are
consumed, it's sometimes referred to as utility computing.
Platform-as-a-service in the cloud is defined as a set of software and product
development tools hosted on the provider's infrastructure. Developers create
applications on the provider's platform over the Internet. PaaS providers may use
APIs, website portals or gateway software installed on the customer's computer.
Force.com, (an outgrowth of Salesforce.com) and GoogleApps are examples of
PaaS. Developers need to know that currently, there are not standards for
interoperability or data portability in the cloud. Some providers will not allow
software created by their customers to be moved off the provider's platform.
In the software-as-a-service cloud model, the vendor supplies the hardware
infrastructure, the software product and interacts with the user through a frontend portal. SaaS is a very broad market. Services can be anything from Webbased email to inventory control and database processing. Because the service
provider hosts both the application and the data, the end user is free to use the
service from anywhere.

You might also like