Seagate Kinetic Open Storage Platform

12
Seagate Kinetic Open Storage Platform Grant Kimes 0

Transcript of Seagate Kinetic Open Storage Platform

 

 

 

 

 

Seagate Kinetic Open Storage Platform Grant Kimes

  

 

 

 

Table of Contents  

 

Executive Summary …………………………………………………………………….. 2 

Introduction ………………………………………………………………………………. 2 

Object Storage …………………………………………………………. 2 

What is Kinetic …………………………………………………………………………... 3 

HDD ……………………………………………………………………... 3 

API ………………………………………………………………………. 4 

Chassis …………………………………………………………………. 4 

What are the benefits …………………………………………………………………… 5 

Efficiency ….……………………………………………………………. 5 

Simplicity…..……………………………………………………………..6 

Security ………………………………………………………...……….. 6 

Cost ………………………………………………………………………7 

Scalability ………………………………………………………………..7 

How is it used ...…………………………………………………………………………..7 

SwiftStack ………………………………………………………………. 8 

How does it compare …………………………………………………………………… 9 

Ideal Use Cases …………………………………………..…………… 9 

RAID vs. Replication and Erasure Coding ………………………….. 9 

Drawbacks ……………………………………………………………… 10 

Conclusion …………………………………………………………..…………………… 10 

Works Cited ………………………………………………………………….…………... 11 

 

 

 

   

 

Executive Summary The Seagate Kinetic Open Storage Platform is an ideal solution for future scale­out 

needs of enterprise object storage applications. It connects hard drives directly to servers over Ethernet. This greatly simplifies the storage stack by removing hardware and software used in traditional storage setups, resulting in lower cost and easier scalability. Data centers already using an object storage application can integrate Kinetic drives into the existing setup.  

 

 

Introduction The digital universe of data is expanding at a dramatic rate. Data centers and cloud 

providers are experiencing growth in demand due to social media, online video, and user­uploaded content. Unstructured data is becoming increasingly easier for consumers to create and store online.  

In 2013, there were approximately 4.4 zettabytes of data stored in data centers around the world. It is estimated that there will be approximately 44 zettabytes by 2020.[1] Traditional data storage methods will have difficulty scaling­out to meet this level of growth. For data centers to be able to continue expanding and storing this data, more efficient storage methods should be investigated.  

Seagate aims to address this problem with its Kinetic Open Storage Platform. It is a modification of the conventional storage stack to meet modern storage needs. The traditional method was developed many years ago when storage technology was not designed for future globally distributed cloud storage systems. Kinetic improves storage center scalability, as well as decreases overall costs of operation.  

 

Object Storage Traditional object storage software has been successful for massive­scale storage 

management for cloud data centers. Object storage applications are better suited than block storage for managing unstructured big data, which accounts for approximately 80% of data growth.[1] The flat namespace of object storage allows for virtually unlimited capacity, while NAS and SAN cannot scale to petabyte­sized environments due to issues with file system complexity. It is currently used by cloud applications such as Amazon S3 and Rackspace Cloud Files.  

Kinetic aims to improve upon the existing object storage stack to prepare for the future growth of digital data. Object storage with Kinetic allows for simplified drive management, as the device itself takes care of space mapping.  

 

 

   

 

What is Kinetic The Seagate Kinetic Open Storage Platform allows storage applications to 

connect directly to storage devices over Ethernet. It is built upon an important redesign of the lowest level of data storage ­ the hard disc drive, which now has an Ethernet port. The Kinetic API communicates directly with these drives, providing a single level of abstraction between the storage application and HDD. A specially designed chassis connects each drive to the network switch in the system.  

 

Kinetic HDD 

The Seagate 4TB Kinetic HDD, released in October 2014, is the data storage industry’s first Ethernet­connected hard drive. It has the same dimensions and form factor as a standard hard drive, but has some important new features that set it apart from regular drives:[4]  

 

● Dual port 1Gb/s Ethernet  

● Marvell Armada 370 processor  

● 512 MB RAM  

● Object key/value storage interface 

 

The SAS connector port has been repurposed for Ethernet connectivity. Drives now connect to the existing data center communication fabric. This means that each drive can interact directly with the internal data network, eliminating the intermediate storage server tier. Any device on the network can connect to a drive at its unique IP address.  

 

 

An internal micro operating system allows for drives to become native key/value stores. Conventional drives require a separate storage server to handle data mapping and management, and need to have calculated block addresses translated to the storage chassis along with the data. Kinetic drives receive data requests over an Ethernet connection, and perform the data management themselves. This allows for data to be presented to the hard drive as objects, so the storage application no longer deals in blocks and sectors, but in object keys and values.   

 

 

 

 

 

Kinetic API The Kinetic Open Storage Software Developer Package is an open source project that 

allows developers to incorporate Kinetic functionality and features into an existing storage application. It provides simple access to all the object storage functions of the drives. There is currently an API library for multiple programming languages including Java, C++, and Python.  

An application can simply request an object with put or get, and the API will communicate with the drives over Ethernet and return the data to the application. The API also includes many other functions to manipulate data and manage drive configuration. Data centers already using a storage setup can integrate Kinetic drives into the same storage pool as the existing drives by adjusting the storage application to use the API.  

 

Chassis There are currently multiple systems 

available that utilize Kinetic drives. Each drive plugs into the backplane that has been repinned to function as 1 Gb/s Ethernet ports, which connects to the two 10 Gb/s Ethernet switches built into the chassis. The two external switches per chassis then connect to the top of rack switch.  

Supermicro Kinetic SuperStorage K1048­RT 

 

● Supermicro ­ (1U) 12 HDD 

● Rausch ­ (4U) 72 HDD 

● Newisys ­ (4U) 60 HDD 

● Hyve ­ (1U) 16 HDD 

● Pactron ­ 4 Drive Developer Kit 

These companies have worked alongside Seagate to develop chassis specifically for Kinetic use. HP, Dell, and Wiwynn intend to have hardware support for Kinetic in the future. [3] 

 

 Newisys EDA­4605 

 

 

 

What are the benefits In traditional storage, an object from an application must be translated through file 

systems, volume managers, and storage servers to be written to a hard drive. Then when an object is requested, it must go through the translation process in reverse. This design requires expensive hardware and is an inefficient use of resources.  

Kinetic redefines the storage server stack by removing multiple layers of hardware and software. Data translations and calculations are done by the API and drive. This results in improvements in efficiency, simplicity, and cost. Additional features of the Kinetic Platform also improve security and scalability.  

   

Conventional Storage Stack  Kinetic Storage Stack 

 

Efficiency Since Kinetic drives are native key/value stores, the space mapping of the device is 

managed by the drive rather than a file system. This eliminates a significant amount of drive I/O that was previously necessary for filesystem overhead and drive metadata. In a benchmark test by Seagate, this overhead accounted for up to 92% of drive activity.[2] Applications can get and put objects without needing to calculate and transmit information about the logical block address layout of drives.  

The drive abstraction improves mapping of device failures and makes fault recovery faster. Kinetic reports the key of a failed sector to the cluster management software, allowing for direct recovery of that file. Restores of corrupted or unrecoverable data are now possible without the calculations and rebuild time typical of conventional drives.  

  

 

By using the existing data center transit fabric of Ethernet, there is no longer a bottleneck at storage server nodes because they are removed. The limiting factor is now the internal Ethernet network. Individual drives communicate at 1Gb/s, and spread I/O operations over many drives to maximize performance. Each drive has two SGMII Ethernet ports, allowing for parallel accesses of separate types, or redundancy for network failure tolerance.  

 

Simplicity The abstraction provided by the drives and API results in a simplified storage 

stack that has less components to configure and manage. It is designed to enable easy and rapid integration of Kinetic into storage software applications. All drive access and management capabilities are exposed through the API functions.  

Applications can share data across drives. One application is able to write data to a drive, and an authorized application can access and read that same data from the drive. When copying is necessary, drives can transfer data to other drives without using expensive server routing or I/O operations. A P2P (peer­to­peer) command copies data over the internal Ethernet network. Replication of objects is done by the drives, so clusters can be rebalanced in the background without impacting network speed of the application.  

Seagate has worked alongside companies in the storage industry to integrate the Kinetic Platform into existing products for simple compatibility. Swift, Basho Riak, and Ceph are some object storage softwares that support Kinetic functionality. Seagate has developed plugins that allow the applications to function with the Kinetic API. Scality and HDFS are compatible as well. For block storage distributed file systems, Kinetic can even break blocks of data into objects to allow for use with Kinetic drives.  

 

Security Multiple methods of security are implemented through the API and drive firmware in 

order to minimize the risk of private data being accessed.  

 

● Authentication ­ Cryptographic authentication to determine whether an application is allowed to access a given drive 

● Authorization ­ Set of roles defining which functions an application is allowed to perform (read only, read/write, manage drive, manage security)  

● Integrity ­ Full check of the transmitted data and command to make sure it has been received correctly 

● Self Encryption Drive ­ Internally generated key encrypts all data stored on device, and is only unlocked through correct authorization 

● Transport Layer Security (TLS) ­ Industry­standard TLS suite available for sensitive data 

 

In a regular distributed storage system, internal traffic is unsecured and unauthenticated, allowing for access by anyone on the network. High­cost networking options or complicated VLANs are required in order to secure transmitted data. The Kinetic security architecture is less expensive and more flexible than typical data center networking architectures.  

 

Cost Removing the storage server tier from the data center results in numerous cost 

improvements. Compared to a traditional storage setup, capital expenditures of buying hardware are decreased, and less rack space is used. Overall TCO savings can be up to 50%, depending on capacity and processing needs.[2] Alternatively, for a comparable price, customers can also now have more storage capacity in the same physical space.  

Operational expenditures are reduced in labor and power costs. Less technician upkeep is required because there are no intermediate storage servers to deal with. Each worker can effectively manage greater amounts of storage. Power consumption and cooling costs are lowered because racks are more dense, so less systems are used.  

 

Scalability Kinetic is optimally designed for fast growing, scale­out data centers. Storage is truly 

disaggregated from compute, allowing for individual scaling of each component. Storage capacity can be increased by adding more drives which are dynamically discovered and integrated into the existing setup. Additional compute servers can be added to increase overall processing power. Systems can be distributed in data centers globally with minimal effect on latency.  

Independent innovations in both technologies can be made without sacrificing compatibility. Even when there are updates and changes to either component, applications will access the drives through the API in a consistent manner. Applications do not need to update in order to benefit from drive firmware updates.  

 

 

How is it used Kinetic works as an extension of an existing object storage application. It is not a 

standalone storage method. Since it only provides the communication between drive and application, replication management and cluster balancing remains the responsibility of the storage manager. This allows the application to become streamlined and simplified, while the drives manage their own data mapping, which is exactly what they are designed to do.  

 

 

 

To assign IP addresses to each drive, set up a DHCP server and configure the drives to connect by using IPMI. Each drive has two IP addresses because there are two 1 Gb/s Ethernet ports. The API has example functions that perform basic operations, such as discovering drives or performing put and get. All code is open source (available through Github) and development is encouraged. Specific implementations of Kinetic will differ greatly depending on capacity needs, performance goals, and existing setup configuration.  

 

SwiftStack Built on OpenStack Swift object storage, SwiftStack is an example of an enterprise 

system used to manage clusters of object servers. Kinetic allows these servers to be combined into single PACO nodes (Proxy, Account, Container, Object). The Swift Disk File abstraction defines how Swift communicates with storage volumes. The disk file plugin Swift­Kinetic enables Swift servers to use the Kinetic API.  

 

Comparable setup of 1 PB capacity according to SwiftStack’s Kinetic reference document:[7] 

 

1 PB Total Conventional Kinetic

CAPEX $219,272 $161,926

Annual Power Cost $20,853 $18,028

Annual TCO/TB $80.68 $58.05

 Total estimated annual savings: 32.2%   

     3 Racks = 1 PB 

Kinetic Write Performance: 

Object Size Write Requests per Second Throughput from Client (MB/s)

1 KB 3,721 3.6

1 MB 1,671 1,671

10 MB 156 1,563

 

 

 

 

Kinetic Read Performance: 

Object Size Read Requests per Second Throughput to Client (MB/s)

1 KB 18,623 18.2

1 MB 3,598 3,598

10 MB 354 3,542

 

 

 

How does it compare The performance of Kinetic systems is greatly impacted by the type of data transactions 

that it is used for. Static, unstructured object data will be stored more effectively in the long­term using Kinetic and object storage. However, Kinetic does not aim to replace conventional storage methods completely. Frequently accessed and modified data will continue to be more efficient through file systems and block storage.  

 

Ideal Use Cases The Kinetic Platform is designed for large, scale out storage centers using object 

storage applications that prioritize data capacity over speed. Companies can integrate Kinetic systems into their existing data centers for flexible scalability and low cost. Some examples of are: 

 

● Cloud backup and archive providers  ● Public and private cloud services  ● Geographically distributed storage applications  ● Unstructured object data (videos, images, etc.)  

 

Block storage remains more effective for cases when speed is a priority, such as transactional, structured data and real time file sharing.  

 

RAID vs. Replication and Erasure Coding RAID has been shown to have issues with scaling to petabyte sized capacity. Drives will 

fail often and require a rebuild, which greatly diminishes performance during the process. Since the technology of drive capacity has increased faster than I/O speed, RAID rebuild of a multiple­terabyte drive can take days to complete. [1] 

 

 

Erasure coding used by object storage allows for data recovery after a greater number of drive failures than RAID. It is much more effective when data centers continue to scale out and increase drive capacity. Replication across locations is managed by the application, and increases reliability and minimizes data loss.  

 

Drawbacks One of the problems with the Kinetic system is that there is not enough technical 

documentation available online. The wiki and other articles give an overview of the features and theoretical possibilities of Kinetic, but little about the specific details of how to use the drives. It is still a relatively new technology and has not yet been widely adopted and tested.  

 

 

Conclusion As data centers and cloud providers look to the future of data growth, the Seagate 

Kinetic Open Storage Platform proves to be an efficient and cost reduced method of unstructured data storage. The Kinetic API and Ethernet­attached drives provide a level of abstraction that simplifies the overall management of the storage stack. Object storage applications can implement the Kinetic platform for improved scale­out capabilities.  

MBX can offer customers support for Kinetic systems to manage large scale storage needs. Systems can be built to custom specifications, depending on capacity and processing needs. Assistance can be offered to help data centers integrate Kinetic into existing setups. 

 

 

    

10 

 

Works Cited  

1. A Beginner’s Guide to Next Generation Object Storage

<http://www.ddn.com/pdfs/BeginnersGuideToObjectStorage_whitepaper.pdf> 2. Kinetic Open Storage Documentation Wiki

<https://developers.seagate.com>

3. Seagate Kinetic: Connect Drives to Ethernet for Low Cost Storage | CRN

<http://www.crn.com/news/storage/300074756/seagate-kinetic-connects-drives-to-ethernet-for-low-cost-storage.htm?itc=refresh>

4. Seagate Kinetic HDD Product Manual

<http://www.seagate.com/files/www-content/product-content/hdd-fam/kinetic-hdd/_shared/docs/kinetic-product-manual.pdf>

5. Seagate Cloud Storage Platforms

<http://seagate.com/kinetic>

6. The Seagate Kinetic Open Storage Vision

<http://www.seagate.com/tech-insights/kinetic-vision-how-seagate-new-developer-tools-meets-the-needs-of-cloud-storage-platforms-master-ti/>

7. Reference Design: Scalable Object Storage with Seagate Kinetic, Supermicro, and Swiftstack

<https://swiftstack.com/wp-content/uploads/2015/05/KineticReferenceDesign-SwiftStackSupermicroSeagate.pdf>

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 MBX Systems, August 2015  |  www.mbx.com  

11