Internet DRAFT - draft-sds-reference-usecase
draft-sds-reference-usecase
Internet Engineering Task Force Eui-Nam Huh
Internet-Draft Kyung Hee University
DRINKS Ga-Won Lee
Intended status: Informational Kyung Hee University
Expires: Aug 16, 2016 Yunkon Kim
Kyung Hee University
Dongha Oh
Consortium of Cloud Computing Research
Feb 15, 2016
Software-Defined Storage Reference Model and Use-case
draft-sds-reference-usecase-00
Abstract
In IoT, IoE era, the cloud needs to accommodate enormous requests,
and also the cloud has to provide unlimited scalability, real-time
analysis, and workload integration. Thus, inter-cloud storages
integration is required and a standard for complete integration
between cloud and legacy system is compulsory. Physical host and
storage integration from the perspective of bare metal provisioning
are also under the spotlight. The SDS is a proper technique to fulfil
this issue. According to the increasing demand for software defined
storage, it is required to develop software defined storage reference
model.
Status of This Memo
This Internet-Draft is submitted in full conformance with the
provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet-
Drafts is at http://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress."
This Internet-Draft will expire on August 16, 2016.
Copyright Notice
Copyright (c) 2016 IETF Trust and the persons identified as the
document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents
carefully, as they describe your rights and restrictions with
respect to this document. Code Components extracted from this
document must include Simplified BSD License text as described in
Section 4.e of the Trust Legal Provisions and are provided without
warranty as described in the Simplified BSD License.
Table of Contents
1. Introduction ---------------------------------- 2
2. SDS Reference Model and Use-case ------------- 2
2.1 Definition of SDS Related Terms ------ 2
2.2 Reference Model of SDS --------------- 3
2.3 Use-case ----------------------------- 5
3. References ------------------------------------ 9
1. Introduction
SDS is one of the important issues in the storage industry trends.
Through SDS, a storage technology can be easily controlled by
policies and other storage provisioning tasks are able to be
controlled through automation method. Therefore, this draft defines
functionalities for SDS and specifies use-cases of SDS.
2. SDS Reference Model and Use-case
2.1 Definition of SDS Related Terms
2.1.1 Software Defined Storage(SDS)
SDS is a technology model to compose and manage a logical storage
pool with physical storage infrastructure using user-level software.
By composing a virtual storage pool, SDS enhances the convenience of
storage management through allocating storage according to the need
of applications and managing it by providing a single software
control point based on the user's policies.
2.1.2 Storage Pool
A set of specific storage resources for distributed storage. User
can compose a storage pool by grouping physical storages and
virtualize storage by designating a space in the pool. The storage
resources can be provided from different vendors and include all of
heterogeneous storages.
2.1.3 Data Pool
A data set that enables the sharing of data information through
gathering different data information logically. A data pool is
principally composed with metadata in order to avoid data redundancy.
It is possible to collect, combine, and integrate data using the data
pool. The data may be provided from different vendors, and include
all data stored in heterogeneous storages.
2.1.4 Data Integration
Process of collecting data from various data sources, systems,
applications, etc. scattered around a company and refining them into
valuable and reusable information, namely, "intelligent information."
2.1.5 Data Abstraction
A technique to combine and collect operations and expression types
related to a data type. Data abstraction provides programmers with
an effective means to organize and use data structures and
operations to be used in programming. For example, when a queue,
a data type not provided by ordinary programming language, is used
in a program, this technique provides the programmer with a means
to define operations such as 'Add,' 'Delete,' and 'Empty'
and integrate them into a data type to be used. This makes programs
more readable and error-free.
2.2 Reference Model of SDS
---------------------------------------------------------------------
| Software Defined Storage API |
---------------------------------------------------------------------
---------------------------------------------------------------------
| Software Defined Storage |
| -------------------------------------------- ---------------- --- |
|| Control Plane || Policy Plane || ||
|| ------------------------------------------ || -------------- || ||
||| Policy-based Administration Controller |||| Service ||| ||
||| --------------------- ----------------- |||| Policy ||| ||
|||| Resource Monitoring || User Requres ||||| Controller ||| ||
|||| Manager || Manager ||||| ------------ ||| ||
||| --------------------- ----------------- |||||Authrization|||| ||
||| --------------------- ----------------- |||| ------------ ||| ||
|||| Virtual Resource || Data Access ||||| ||| ||
|||| Manager || Manager ||||| ||| ||
||| --------------------- ----------------- |||| ||| ||
|| ------------------------------------------ ||| ------------ ||| ||
| -------------------------------------------- ||| Capability |||| S ||
| || ------------ ||| e ||
| -------------------------------------------- || ||| c ||
|| Virtual Data Plane ||| ||| u ||
|| ------------------------------------------ ||| ||| r ||
||| Data Pool Controller |||| ------------ ||| i ||
||| --------------------- ----------------- |||||Performance |||| t ||
|||| Data Integration || Data Protection ||||| ------------ ||| y ||
|||| Manager || Manager ||||| ||| ||
||| --------------------- ----------------- |||| ||| P ||
|| ------------------------------------------ ||| ||| l ||
|| ------------------------------------------ ||| ------------ ||| a ||
||| Storage Pool Controller ||||| SLA |||| n ||
||| --------------------- ----------------- |||| ------------ ||| e ||
|||| Storage Integration || Storage ||||| ||| ||
|||| Manager || Performance ||||| ||| ||
|||| || Manager ||||| ||| ||
||| --------------------- ----------------- |||| ------------ ||| ||
|| ------------------------------------------ |||| Billing |||| ||
|| ------------------------------------------ ||| ------------ ||| ||
||| Virtual Storage Pool (VSP) |||| ||| ||
||| ------------ ----------- ------------- |||| ||| ||
|||| Block-based|| File-based|| Object-based||||| ||| ||
|||| VSP || VSP || VSP ||||| ------------ ||| ||
||| ------------ ----------- ------------- ||||| QoS |||| ||
|| ------------------------------------------ ||| ------------ ||| ||
| -------------------------------------------- ---------------- --- |
---------------------------------------------------------------------
Figure 1 SDS Functional Reference Model
2.2.1 Control Plane
The Control plane is the part of the SDS components model that is
concerned with centralized management of storage. This component
handles all the storage resources management into one central layer.
This component has the authority, control, and responsibility for the
entire storage administration through of the Policy-based
Administration Controller.
2.2.1.1 Policy-based Administration Controller
The Policy-based Administration Controller has the control of
resource monitoring, virtual resource managing, configuration
service and data access management. The main aim of this component
is to reduce operational complexity, improves security, and lowers
risk through consistent policy application.
* Resource Monitoring Manager
- The Resource Monitoring Manager handles the monitoring all
storage management to have a unified view.
* User Request Manager
- The User Request Manager processes users' various requests which
are related with storage and data. This Manager can provide data
and volume of storage what users want. Negotiation might be
necessary between users and the User Request Manager.
* Virtual Resource Manager
- The Administrators can perform storage management tasks with
higher productivity in order to increasing the business agility.
- The Virtual Resource Manager enables storage tasks load balancing,
storage handling, storage access and scaling in/out making
managing virtual storage of simple way.
* Data Access Manager
- The Data Access Manager allows managing easily the storage access
with simplified access management.
- The Data handling is important to get an efficient and economical
storage, retrieval, and disposal of data to ensure that data is
not altered, erased, lost or accessed by unauthorized users.
2.2.2 Virtual Data Plane
The Virtual Data Plane composes a very large virtual storage pool
and to manage it. This Plane provides different types of storage
which are DAS, NAS, SAN, Cloud Storage, etc. Key components of this
plane are the Data Pool Controller and the Storage Pool Controller
for virtual storage pool.
2.2.2.1 Data Pool Controller
The Storage Pool Controller is in charge of building virtual data
pool and context of data communication in the pool. Storage Pool
Controller can handle date that users allow.
* Data Integration Manager
- The Data Integration Manager has a role to make data pool with
data that user allow Data Integration Manager to use or publish.
* Data Protection Manager
- The Data Protection Manager has a role to preserve data from the
fault of system.
- It has snapshot, replication, data migration, and self-recovery
functions.
2.2.2.2 Storage Pool Controller
The Storage Pool Controller is in charge of building virtual storage
pool. Heterogeneous storages are used to make virtual storage pool.
* Storage Integration Manager
- The Storage Integration Manager has a role to integrate external
heterogeneous storage to build virtual storage pool.
* Storage Performance Manager
- The Storage Performance Manager has a role to make performance of
system better.
- Caching, Thin Provisioning, and Auto-tiering are representative
functions.
2.2.3 Policy Plane
The Policy Plane manages policy of whole system related with for
automated managing the storage and data services. Policy Plane has
the Service Policy Controller, and components of this controller are
Authorization, Capability, Performance, Availability, SLA, Billing,
and QoS.
2.2.4 Security Plane
The Security Plane is charging SDS security in general by managing
authorization, authentication, data security, etc. This plane
provides storage security according to security policy which is
established by storage provider/SDS manager/SDS user and managed by
Policy Plane.
2.3 Use-case
2.3.1 Handling Heterogeneous Storages with Same API in Storage
Allocation and Data Storing Service
The SDS can manage almost all heterogeneous storages in one single
control point via level management. Heterogeneous storage
environment has a Same Function Different Command problem. This
problem can be solved using the SDS.
2.3.2 Distributed Storage Allocation in Different Physical Storage
Heterogeneous storages which are used to compose virtual storage
pool have different characteristics with each other. The SDS can
compose different characteristics storages into one local storage
pool and control it via one single control point. It is useful to
store data dispersedly into appropriate characteristics storage.
Moreover, it can contribute to improve data security.
2.3.3 Auto Scale-out for Storage Service
Auto scale-out can be supported according to the service policy
when storage volume deficit occurs in storage service scenario.
User establishes the auto scale-out policy and requests it to
SDS Control Plane. Based on polish managed by Policy Plane,
Virtual Data Plane assigns user the storage volume and announces
the authentication information to user. If storage state changes
when user requests the data storing using SDS API, storage assigned
to user becomes inability to data storing. In this case, system
provides volume snapshot service for data and storage stability,
and storage scale increase automatically.
Step 1. User requests storage with auto scale-out policy
Step 2. Virtual Resource Manager request storage volume assignment
Step 3. User storage allocation in Virtual Storage Pool which is
composed by Storage Integration Manager
Step 4. Storage access information(authentication) is transmitted to
user
Step 5. User requests data storing by using SDS API and
authentication information
Step 6. Data Access Manager identifies user authorization. If
permission confirms, store data based on user policy
Step 7. During repetition of step 5-6, storage volume shortage might
be occurs. Then, check user policy and prepare auto scale-out
Step 8. To provide stability, Storage Performance Manager snapshots
the storage and Virtual Resource Manager assigns new volume
3. References
[1] DMTF DSP-IS0501, Software Defined Data Center (SDDC) Definition,
2015
[2] SNIA, Software Defined Storage (White Paper), 2015
[3] VMware, The VMware Perspective on Software-Defined Storage
(White Paper), 2014
[4] EMC, Transform Your Storage For The Software Defined Data Center
(White Paper), 2015
Appendix A. Acknowledgements
This draft is supported by Institute for Information & communications
Technology Promotion(IITP) grant funded by the Korea government(MSIP)
(R-20150223-000247, Cloud Storage Brokering Technology for Data
-Centric Computing Standardization)
Authors' Addresses
Eui-Nam Huh
Computer Science and Engineering Department, Kyung Hee University
Yongin, South Korea
Phone: +82 (0)31 201 3778
Email: johnhuh@khu.ac.kr
Ga-Won Lee
Computer Science and Engineering Department, Kyung Hee University
Yongin, South Korea
Phone: +82 (0)31 201 2454
Email: gawon@khu.ac.kr
Yunkon Kim
Computer Science and Engineering Department, Kyung Hee University
Yongin, South Korea
Phone: +82 (0)31 201 2454
Email: ykkim@khu.ac.kr
Dongha Oh
Consortium of Cloud Computing Research, Seoul, South Korea
Phone: +82 (0)2 2052 0158
Email: dongha@cccr.ir.kr