3. Storage as a Service
CAPEX to OPEX based business model.
Manage storage by well-defined set of remotely Accessible APIs
Abstracts the actual storage implementation
This service offers specialized functions: DR, backup, document
sharing, etc.
Using Storage as a Service
Object
Block
File
Ephemeral
3
4. What Is OpenStack?
Global collaboration
Developers
Cloud computing technologists
Open source cloud computing platform
- Public clouds
- Private clouds
Solutions for all types of clouds
Simple to implement
Massively scalable
Feature rich
4
5. Quick OpenStack Overview
An Open Source Cloud Computing Platform
Provides for all types of clouds
– Simple
– Scalable
– Feature rich
Total cloud infrastructure solution
– Combination of interrelated projects
Open source software around 3 years old
OpenStack Foundation established 2012
Over 700+ organizations contributing to development
Established and growing number of production deployments
5
9. Type of storage available on OpenStack
Ephemeral(On-instance) :
-Used for running Operating System and scratch space
-Persists until VM is terminated
-Access associated with a VM
-Implemented as a filesystem underlying OpenStack Compute
-Administrator configures size setting, based on flavors
-Example: 10GB first disk, 30GB/core second disk
For desktop user PC's internal disk drives are ephemeral;
persistent storage can be considered similar to an external
USB drive.
9
10. OpenStack Object Storage (Swift)
What Is It?
Object Storage is ideal for cost effective, scale-out storage. It
provides a fully distributed, API-accessible storage platform that
can be integrated directly into applications or used for backup,
archiving and data retention.
Highly available & distributed object / blob store(known as a
binary large object, collection of binary data stored as a single
entity in a database management system. Blobs are typically
images, audio or other multimedia objects)
– Ring architecture
In production today
– Rackspace’s Cloud Files, Internap, Wikimedia Foundation
Architectural overview:
– http://swift.openstack.org/overview_architecture.html
11. OpenStack Block Storage (Cinder)
What Is It?
Block Storage allows block devices to be exposed and
connected to compute instances for expanded storage, better
performance and integration with enterprise storage platforms.
This persistent block level storage devices can be exposed to
applications as well.
The block storage system manages the creation, attaching and
detaching of the block devices to servers.
Block storage volumes are fully integrated into OpenStack
Compute and the Dashboard allowing for cloud users to manage
their own storage needs.
12. Contd..
This is block storage (or volumes) and currently there are
blueprints for filesystems like NFS or CIFS share
Persists until deleted
Mounted via OpenStack Block-Storage controlled protocol (for
example, iSCSI, LVM)
Sizings based on need
Example: 1TB "extra hard drive"
14. Cinder (Contd.)
cinder-api accepts API requests and routes them to cinder-volume for action.
cinder-volume acts upon the requests by reading or writing to the Cinder database to
maintain state, interacting with other processes (like cinder-scheduler) through a message
queue and directly upon block storage providing hardware or software. It can interact with a
variety of storage providers through a driver architecture. Currently, there are drivers for IBM,
SolidFire, NetApp, Nexenta, Zadara, linux iSCSI and other storage providers.
Much like nova-scheduler, the cinder-scheduler daemon picks the optimal block storage
provider node to create the volume on.
Cinder deployments will also make use of a messaging queue to route information between
the cinder processes as well as a database to store volume state.
15. Minimum Driver Features
In order to be accepted for a given milestone release, Cinder
driver must implement the following features
Grizzly Release:
– Volume Create/Delete
– Volume Attach/Detach
– Snapshot Create/Delete
– Create Volume from Snapshot
– Get Volume Stats (driver_version/ free_capacity_gb
/reserved_percentage /storage_protocol /total_capacity_gb
/vendor_name /volume_backend_name )
17. Filesystem as a service – basic idea
NAS shares to share data across VM
instances
– Brings the benefits of shared storage to
OpenStack
Simple and widely accepted protocols
– NFS and CIFS
17
18. Filesystem as a service
Storage Controller
S1 S2
VM1 VM2
Hypervisor
18
19. Why filesystems?
NAS – built to share storage
– CIFS/NFS
– In-built locking, sharing and permissions
– Metadata stored with data
Cheap!
Legacy applications
Applications in scalable compute
19
20. Use case
Simple: sharing data across VMs
– Can use as isolated disk too!
Migration
– VM crashes doesn’t affect stored data
Scalable compute with shared storage
– Parallel compilation of large C/C++ projects
– Rendering pipelines for animation studios and
electronic chip design workloads
20
25. How to start contributing ?
• Become a member and create profile : https://www.openstack.org/join
• Sign User license
• Create launchpad account and review the projects
.
• Openstack Wiki : http://wiki.openstack.org/
• Join IRC channel and register to OpenStack mailing list.
25