2013年5月24日 星期五
Cinder NFS Driver on OpenStack
在grizzly版本當中,cinder.volume.drivers.nfs.NfsDriver所製作出來的volumes就如同其他driver所製作出的一樣可以執行attach/detach的operation,但目前無法執行snapshot的運作。
2013年5月19日 星期日
Cinder: volume-type
What's Volume Type?
In the context of Cinder, Volume Type is an abstraction of various properties of a volume. It is _NOT_ type of back-end storage although one can create one volume type that only certain back-end is able to serve.
In current Cinder's implementation, volume type is just a string/name: 0
mysql> desc volume_types;
+------------+--------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+------------+--------------+------+-----+---------+-------------
| created_at | datetime | YES | | NULL | |
| updated_at | datetime | YES | | NULL | |
| deleted_at | datetime | YES | | NULL | |
| deleted | tinyint(1) | YES | | NULL | |
| id | int(11) | NO | PRI | NULL | auto_increment |
| name | varchar(255) | YES | | NULL | |
+------------+--------------+------+-----+---------+----------------+
https://etherpad.openstack.org/grizzly-cinder-volumetypes
2013年5月18日 星期六
2013年5月6日 星期一
2013年5月5日 星期日
OpenStack Storage Design Mode
| Ephemeral storage | Block storage | Object storage | |
|---|---|---|---|
Used to…
|
Run operating system and scratch space
|
Add additional persistent storage to a virtual machine (VM)
|
Store data, including VM images
|
Accessed through…
|
A file system
|
A block device that can be partitioned, formatted and mounted (such as, /dev/vdc)
|
REST API
|
Accessible from…
|
Within a VM
|
Within a VM
|
Anywhere
|
Managed by…
|
OpenStack Compute (Nova)
|
OpenStack Block Storage (Cinder)
|
OpenStack Object Storage (Swift)
|
Persists until…
|
VM is terminated
|
Deleted by user
|
Deleted by user
|
Sizing determined by…
|
Administrator configures size settings, known as flavors
|
Specified by user in initial request
|
Amount of available physical storage
|
Example of typical usage…
|
10 GB first disk, 30GB second disk
|
1 TB disk
|
10s of TBs of dataset storage
|
If you only deploy the OpenStack Compute Service (nova), your users do not have access to any form of persistent storage by default. The disks associated with VMs are "ephemeral", meaning that (from the user's point of view) they effectively disappear when a virtual machine is terminated. You must identify what type of persistent storage you want to support for your users.
Today, OpenStack clouds explicitly support two types of persistent storage: object storage and block storage.
With object storage, users access binary objects through a REST API. You may be familiar with Amazon S3, which is a well-known example of an object storage system. If your intended users need to archive or manage large datasets, you want to provide them with object storage. In addition, OpenStack can store your virtual machine (VM) images inside of an object storage system, as an alternative to storing the images on a file system.
2013年4月24日 星期三
2013年4月20日 星期六
cinder-manage
Usage:
cinder-manage sm flavor_create <label> <description>
cinder-manage sm flavor_delete<label>
cinder-manage sm backend_add <flavor label> <SR type> [config connection parameters]
Note: SR type and config connection parameters are in keeping with the Xen Command Line Interface.http://support.citrix.com/article/CTX124887
cinder-manage sm backend_delete <backend-id>
XCP / Citrix Xenserver Volume Drivers on OpenStack
PS: Cinder是由Folsom版本開始從原本的nova-volume這部分去進行抽離的子專案
XenAPINFS is a Block Storage (Cinder) driver which is using an NFS share through XenAPI's Storage Manager to store virtual disk images and exposing those virtual disks as volumes.
XenAPINFS不能直接存取NFS,只能透過XenAPI Storage Manager來存取NFS。
( This driver is not accessing the NFS share directly, it is only accessing the share through XenAPI Storage Manager. )
This driver should be considered as a reference implementation for using XenAPI's storage manager in OpenStack ( present in XenServer and XCP).
Source Code:
nova,
https://github.com/openstack/nova/blob/stable/folsom/nova/volume/xensm.py
cinder,
https://github.com/openstack/cinder/blob/stable/folsom/cinder/volume/xensm.py
XenAPINFS
XenAPINFS is a Block Storage (Cinder) driver which is using an NFS share through XenAPI's Storage Manager to store virtual disk images and exposing those virtual disks as volumes.XenAPINFS不能直接存取NFS,只能透過XenAPI Storage Manager來存取NFS。
( This driver is not accessing the NFS share directly, it is only accessing the share through XenAPI Storage Manager. )
This driver should be considered as a reference implementation for using XenAPI's storage manager in OpenStack ( present in XenServer and XCP).
配置方式
- Local:
推薦的做法,這樣的話可以使用qemu-img,但必須在當作Storage Controller上的XCP/Xenserver host上開啟一台PV guest VM安裝 cinder + XenAPINFS driver - Remote:
不需要使用PV guest VM,直接拿XCP/Xenserver當作Storage Controller。但這樣的話只能用VDI格式的VHD。
Source Code:
1. Grizzly cinder, https://github.com/openstack/cinder/blob/stable/grizzly/cinder/volume/drivers/xenapi/sm.pyXenAPI Storage Manager Volume Driver ( only in Folsom version, 在grizzly版中似乎已經移除 )
The Xen Storage Manager Volume driver (xensm) is a XenAPI hypervisor specific volume driver
Source Code:
nova,
https://github.com/openstack/nova/blob/stable/folsom/nova/volume/xensm.py
cinder,
https://github.com/openstack/cinder/blob/stable/folsom/cinder/volume/xensm.py
功用:
- provide basic storage functionality, including volume creation and destruction, on a number of different storage back-ends.
- It also enables the capability of using more sophisticated storage back-ends for operations like cloning/snapshots, etc.
The list below shows some of the storage plugins already supported in Citrix XenServer and Xen Cloud Platform (XCP):
- NFS VHD:Storage repository (SR) plugin which stores disks as Virtual Hard Disk (VHD) files on a remote Network File System (NFS).
- Local VHD on LVM:SR plugin which represents disks as VHD disks on Logical Volumes (LVM) within a locally-attached Volume Group.
- HBA LUN-per-VDI driver:SR plugin which represents Logical Units (LUs) as Virtual Disk Images (VDIs) sourced by host bus adapters (HBAs). E.g. hardware-based iSCSI or FC support.
- NetApp:SR driver for mapping of LUNs to VDIs on a NETAPP server, providing use of fast snapshot and clone features on the filer.
- LVHD over FC:SR plugin which represents disks as VHDs on Logical Volumes within a Volume Group created on an HBA LUN. E.g. hardware-based iSCSI or FC support.
- iSCSI:Base ISCSI SR driver, provides a LUN-per-VDI. Does not support creation of VDIs but accesses existing LUNs on a target.
- LVHD over iSCSI:SR plugin which represents disks as Logical Volumes within a Volume Group created on an iSCSI LUN.
- EqualLogic:SR driver for mapping of LUNs to VDIs on a EQUALLOGIC array group, providing use of fast snapshot and clone features on the array.
2013年4月5日 星期五
Object Storage Device
An Object-based Storage Device (OSD) is a computer storage device, similar to disk storage but working at a higher level. Instead of providing a block-oriented interface that reads and writes fixed sized blocks of data, an OSD organizes data into flexible-sized data containers, called objects. Each object has both data (an uninterpreted sequence of bytes) and metadata (an extensible set of attributes describing the object).
Reference:
[1] http://en.wikipedia.org/wiki/Object_storage_device
[2] http://lab.howie.tw/2013/04/
[3] https://researchweb.watson.ibm.com/haifa/projects/storage/objectstore/papers/PositionOSD.pdf
[4] http://www.ascc.sinica.edu.tw/sysinfo/storage/conference/object-sun.pdf
訂閱:
文章 (Atom)