Presentation is loading. Please wait.

Presentation is loading. Please wait.

Open Storage: Intel’s Investments in Object Storage Paul Luse and Tushar Gohad, Storage Division, Intel.

Similar presentations


Presentation on theme: "Open Storage: Intel’s Investments in Object Storage Paul Luse and Tushar Gohad, Storage Division, Intel."— Presentation transcript:

1 Open Storage: Intel’s Investments in Object Storage Paul Luse and Tushar Gohad, Storage Division, Intel

2 Transforming the Datacenter through Open Standards 2 Transforming the Business Transforming the Ecosystem Transforming the Infrastructure Speed-up new application and services deployment on software-defined infrastructure created from widely available IA servers. Strengthen open solutions with Intel code contributions and silicon innovations to speed-up development, while building a foundation of trust. Assure OpenStack based cloud implementations offer highest levels of agility, automation and efficiency using IA platform innovations.

3 3 Legal Disclaimers Copyright © 2014 Intel Corporation. All rights reserved Intel, the Intel logo, Xeon, Atom, and QuickAssist are trademarks of Intel Corporation in the U.S. and/or other countries. *Other names and brands may be claimed as the property of others. All products, computer systems, dates and figures specified are preliminary based on current expectations, and are subject to change without notice. Intel® Advanced Vector Extensions (Intel® AVX)* are designed to achieve higher throughput to certain integer and floating point operations. Due to varying processor power characteristics, utilizing AVX instructions may cause a) some parts to operate at less than the rated frequency and b) some parts with Intel® Turbo Boost Technology 2.0 to not achieve any or maximum turbo frequencies. Performance varies depending on hardware, software, and system configuration and you should consult your system manufacturer for more information. *Intel® Advanced Vector Extensions refers to Intel® AVX, Intel® AVX2 or Intel® AVX-512. For more information on Intel® Turbo Boost Technology 2.0, visit http://www.intel.com/go/turbohttp://www.intel.com/go/turbo No computer system can provide absolute security. Requires an enabled Intel® processor, enabled chipset, firmware and/or software optimized to use the technologies. Consult your system manufacturer and/or software vendor for more information. No computer system can provide absolute security. Requires an Intel® Identity Protection Technology-enabled system, including an enabled Intel® processor, enabled chipset, firmware, software, and Intel integrated graphics (in some cases) and participating website/service. Intel assumes no liability for lost or stolen data and/or systems or any resulting damages. For more information, visit http://ipt.intel.com/. Consult your system manufacturer and/or software vendor for more information.http://ipt.intel.com/ No computer system can provide absolute security. Requires an enabled Intel® processor, enabled chipset, firmware, software and may require a subscription with a capable service provider (may not be available in all countries). Intel assumes no liability for lost or stolen data and/or systems or any other damages resulting thereof. Consult your system or service provider for availability and functionality. No computer system can provide absolute reliability, availability or serviceability. Requires an Intel® Xeon® processor E7-8800/4800/2800 v2 product families or Intel® Itanium® 9500 series-based system (or follow-on generations of either.) Built-in reliability features available on select Intel® processors may require additional software, hardware, services and/or an internet connection. Results may vary depending upon configuration. Consult your system manufacturer for more details. For systems also featuring Resilient System Technologies: No computer system can provide absolute reliability, availability or serviceability. Requires an Intel® Run Sure Technology-enabled system, including an enabled Intel processor and enabled technology(ies). Built-in reliability features available on select Intel® processors may require additional software, hardware, services and/or an Internet connection. Results may vary depending upon configuration. Consult your system manufacturer for more details. For systems also featuring Resilient Memory Technologies: No computer system can provide absolute reliability, availability or serviceability. Requires an Intel® Run Sure Technology-enabled system, including an enabled Intel® processor and enabled technology(ies). built-in reliability features available on select Intel® processors may require additional software, hardware, services and/or an Internet connection. Results may vary depending upon configuration. Consult your system manufacturer for more details. The original equipment manufacturer must provide TPM functionality, which requires a TPM-supported BIOS. TPM functionality must be initialized and may not be available in all countries. Requires a system with Intel® Turbo Boost Technology. Intel Turbo Boost Technology and Intel Turbo Boost Technology 2.0 are only available on select Intel® processors. Consult your system manufacturer. Performance varies depending on hardware, software, and system configuration. For more information, visit http://www.intel.com/go/turbohttp://www.intel.com/go/turbo Intel® Virtualization Technology requires a computer system with an enabled Intel® processor, BIOS, and virtual machine monitor (VMM). Functionality, performance or other benefits will vary depending on hardware and software configurations. Software applications may not be compatible with all operating systems. Consult your PC manufacturer. For more information, visit http://www.intel.com/go/virtualizationhttp://www.intel.com/go/virtualization

4 Storage Policies in Swift  Swift Primer / Storage Policies Overview  Swift Storage Policy Implementation  Usage Models Erasure Coding Policy in Swift  Erasure Coding (EC) Policy  Swift EC Design Considerations and Proposed Architecture  Python EC Library (PyECLib)  Intel® Intelligent Storage Acceleration Library (ISA-L) COSBench  Cloud Object Storage Benchmark  Status, User adoption, Roadmap Public Swift Test Cluster Agenda OPENSTACK SUMMIT 2014

5 Storage Policies for OpenStack Swift 5

6  OpenStack Object Store  Distributed, Scale-out Object Storage  CAP  Eventually consistent  Highly Available – no single point of failure  Partition Tolerant  Well suited for unstructured data  Uses container model for grouping objects with like characteristics  Objects are identified by their paths and have user-defined metadata associated with them  Accessed via RESTful interface  GET, PUT, DELETE  Built on standard hardware  Cost effective, efficient Swift Primer OPENSTACK SUMMIT 2014 container object

7 Capacity Tier Access Tier The Big Picture Load Balancer Proxy Storage Nodes Proxy Zone 1Zone 2Zone 3Zone 4Zone 5 Clients RESTful API Download Copy 1 Copy 2 Copy 3 Upload Obj A Handle incoming requests Handle failures, ganged responses Scalable shared nothing architecture Consistent hashing ring distribution Scalable for concurrency and/or capacity independently Actual object storage Variable replication count Data integrity services Scale-out capacity Auth Service Obj A Storage Nodes Storage Nodes Storage Nodes Storage Nodes

8 Why Storage Policies? New Opportunities for Swift OPENSTACK SUMMIT 2014 Would you like 2x or 3x? Are all nodes equal? Can I add something like Erasure Codes?

9  Support Grouping of Storage  Expose or make use of differentiated hardware with a single cluster  Performance tiers – a tier with high-speed SSDs can be defined for better performance characteristics  Multiple Durability Schemes  Erasure coded  Mixed-mode replicated (Gold 3x, Silver 2x etc)  Other Usage models  Geo tagging – ensure geographical location of data within a container Why Storage Policies? New Opportunities for Swift OPENSTACK SUMMIT 2014 container object Community effort w/primary contributions from Intel and SwiftStack*

10 n locations, object fragments  Introduction of multiple object rings  Introduction of container tag: X-Storage-Policy 3 Different Policies: 3 Different Rings 3 locations, same object 2 locations, same object Adding Storage Policies to Swift

11 wsgi server account controller middleware (partially, modules like list_endpoints) swift proxy wsgi application container controller object controller helper functions wsgi server replicator middleware swift object wsgi application auditor expirer updater replicator swift account wsgi application auditor reaper helper functions replicator swift container wsgi application auditor sync updater Proxy Nodes Storage Nodes DB schema updates Storage Policy Touch Points

12 Usage Model – Reduced Redundancy OPENSTACK SUMMIT 2014 Container with 3x Policy Container with 2x Policy

13 Container with HDD Policy Container with SSD Policy SSDs – previously limited to being Used for account/container DB Note: entire systems can comprise a policy as well… Performance Tier

14 Geo Tagging Geo #1Geo #2

15 Erasure Codes Container with 3x Policy Container with EC Policy EC Fragments Note: EC could also be on dedicated HW…

16 Erasure Coding Policy in OpenStack Swift 16

17 17 Erasure Codes  Object split into k data and m parity chunks and distributed across cluster  Space-optimal Redundancy and High Availability  k = 10, m = 4 translates to 50% space requirement when compared to 3x replication  Higher Compute and Network Requirements  Suitable for Archival workloads (high write %) Object D1D1 D2D2 D3D3 DkDk P1P1 PmPm

18 Swift with Erasure Coding Policy OPENSTACK SUMMIT 2014 Capacity Tier (Storage) Access Tier (Concurrency) Load Balancer Proxy Storage Proxy Zone 1Zone 2Zone 3Zone 4Zone 5 Clients RESTful API, Similar to S3 Download Frag 1 Frag 2 Frag 3 Frag 4 Frag k + m EC Decoder Upload EC Encoder Obj A Applications control policy Inline EC Supports multiple policies EC flexibility via plug-in Auth Service redundancy n = k data fragments + m parity fragments

19 OPENSTACK SUMMIT 2014 EC Policy – Design Considerations  First significant (non-replication) Storage Policy in OpenStack Swift  In-line Proxy-centric Datapath Design  Erasure Code encode/decode during PUT/GET done at the proxy server  Aligned with Swift architecture to focus demanding services in the access tier  Erasure Coding Policy applied at the Container-level  New container metadata will identify whether objects within it are erasure coded  Follows from the generic Swift storage policy design  Keep it simple and leverage current architecture  Multiple new storage node services required to assure Erasure Code chunk integrity as well as Erasure Code stripe integrity; modeled after replica services  Storage nodes participate in Erasure Code encode/decode for reconstruction analogous to replication services synchronizing objects Community effort w/ primary contributions from Intel, Box*, SwiftStack*

20 Erasure Coding Policy Touchpoints OPENSTACK SUMMIT 2014 wsgi server existing modules middleware swift proxy wsgi application wsgi server middleware swift object wsgi application swift account wsgi application swift container wsgi application Proxy Nodes Storage Nodes controller modifications EC Library Interface Plug in 1 Plug in 2 existing modules existing modules existing modules EC Auditor EC Reconstructor EC Library Interface Plug in 1 Plug in 2 metadata changes

21  Python interface wrapper library with pluggable C erasure code backends  Backend support planned in v1.0: Jerasure, Flat-XOR, Intel® ISA-L EC  BSD-licensed, hosted on bitbucket: https://bitbucket.org/kmgreen2/pyeclibhttps://bitbucket.org/kmgreen2/pyeclib  Use by Swift at Proxy server and Storage node level – most of the Erasure Coding details opaque to Swift  Jointly developed by Box*, Intel and the Swift community Python Erasure Code Library (PyECLib) OPENSTACK SUMMIT 2014 existing modules swift proxy server EC modifications to the Object Controller PyECLib (Python) Jerasure (C) ISA-L (C, asm) swift object server existing modules EC Auditor EC Reconstructor PyECLib (Python) Jerasure ISA-L (C, asm)

22 Intel® ISA-L EC library  Part of Intel® Intelligent Storage Acceleration Library  Provides primitives for accelerating storage functions  Encryption, compression, de-duplication, integrity checks  Current Open Source version provides Erasure Code support  Fast Reed Solomon (RS) Block Erasure Codes  Includes optimizations for Intel® architecture  Uses Intel® SIMD instructions for parallelization  Order of magnitude faster than commonly used lookup table methods  Makes other non-RS methods designed for speed irrelevant  Hosted at https://01.org/storage-acceleration-libraryhttps://01.org/storage-acceleration-library  BSD Licensed

23  Target: Summer ’14  PyECLib upstream on bitbucket and PyPi  Storage Policies in plan for OpenStack Juno  EC Expected to coincide with OpenStack Juno  Ongoing Development Activities  The community uses a Trello discussion board:  https://trello.com/b/LlvIFIQs/swift-erasure-codes https://trello.com/b/LlvIFIQs/swift-erasure-codes  Launchpad blueprints:  https://blueprints.launchpad.net/swift https://blueprints.launchpad.net/swift  Additional Information  Attend the Swift track in the design summit (B302, Thu 5:00pm)  Talk to us on #openstack-swift or on the Trello discussion board  To give PyECLib a test run, install it from https://pypi.python.org/pypi/PyECLibhttps://pypi.python.org/pypi/PyECLib  For information on ISA-L, check out http://www.intel.com/storagehttp://www.intel.com/storage Project Status

24 COSBench: Cloud Object Storage Benchmark 24

25 What is COSBench? 25  Open Source Cloud Object Storage Benchmarking Tool  Announced at the Portland design summit 2013  Open Source (Apache License)  Cross Platform (Java + Apache OSGI)  Distributed load testing framework  Pluggable adaptors for multiple object storage backends  Flexible workload definition  Web-based real-time performance monitoring  Rich performance metric reporting (Performance timeline, Response time histogram) Storage backendAuth tempauth swauth keystone direct none basic/digest librados rados GW (swift) rados GW (s3) Amazon* S3integrated Scalitysproxyd CDMI CDMI-basebasic/digest CDMI-swiftswauth/keystone Nonenone Mockmock Amplidata* Amplistor OpenStack* Swift Ceph Iometer (block) COSBench (object)

26 Workload Configuration Workflow for complex stages Read/Write Operations object size distribution Flexible load control Flexible configuration for complex workloads

27 Web Console

28 Performance Reporting Rich performance data help characterization

29 Progress since Havana 29 New Features New Object Store Backends  Amazon S3 adapter  Ceph adapter (Librados based, and Radosgw based)  CDMI adapter (swift through cdmi middleware, scality) Authentication Support  HTTP basic and digest Core Functionality  New selectors / new operator  Object integrity checking  Response time breakdown Job management User Interface Improvements Batch Workload Configuration UI  Adds Batch Test Configuration to COSBench  Makes COSBench workload configuration more like IOmeter Bug Fixes  85 issues resolved Roadmap 0.6.x (*15Q2) Profiling tool Google/MS Storage 0.5.x (*14Q4) Workload suite Multi-part 0.4.x (14Q2) Usability CDMI adapter 0.3.x (13Q4) S3 adapter Ceph adapter 0.3.0 (13 Q2) Open source baseline

30 User Adoption github activity (2 weeks)

31 31 Contributing to COSbench Active code repository and community Repository: https://github.com/intel-cloud/cosbenchhttps://github.com/intel-cloud/cosbench License: Apache v2.0 Mailing-List: http://cosbench.1094679.n5.nabble.comhttp://cosbench.1094679.n5.nabble.com

32 Public Swift Test Cluster 32

33 Public Swift Test Cluster Joint effort by SwiftStack*, Intel and HGST* 6 Swift PACO Nodes 8-core Intel(R) Atom(TM) CPU C2750 @ 2.40GHz 16GB main memory, 2x Intel X540 10GbE, 4x 1GbE Storage 12x HGST* 6TB Ultrastar(R) He6 Helium-filled HDDs Operating Environment: Ubuntu/Red Hat Linux, OpenStack Swift 1.13 Load Balancing / Management / Control / Monitoring Using SwiftStack* Controller

34


Download ppt "Open Storage: Intel’s Investments in Object Storage Paul Luse and Tushar Gohad, Storage Division, Intel."

Similar presentations


Ads by Google