software defined storage with gluster - snia · pdf fileagenda software defined storage (sds)...

51
Software Defined Storage with Gluster Vijay Bellur Lead Gluster Architect Red Hat Twitter: @vbellur

Upload: truongtuyen

Post on 31-Jan-2018

240 views

Category:

Documents


5 download

TRANSCRIPT

Page 1: Software Defined Storage with Gluster - SNIA · PDF fileAgenda Software Defined Storage (SDS) Gluster as SDS - 4Ws and a H Why Gluster? What is Gluster? How does Gluster work? Where

Software Defined Storage with Gluster

Vijay Bellur Lead Gluster Architect Red Hat Twitter: @vbellur

Page 2: Software Defined Storage with Gluster - SNIA · PDF fileAgenda Software Defined Storage (SDS) Gluster as SDS - 4Ws and a H Why Gluster? What is Gluster? How does Gluster work? Where

Agenda

● Software Defined Storage (SDS)

● Gluster as SDS - 4Ws and a H ● Why Gluster?

● What is Gluster?

● How does Gluster work?

● Where is Gluster used?

● What next in Gluster?

● Q & A

Page 3: Software Defined Storage with Gluster - SNIA · PDF fileAgenda Software Defined Storage (SDS) Gluster as SDS - 4Ws and a H Why Gluster? What is Gluster? How does Gluster work? Where

What is Software Defined Storage?

Page 5: Software Defined Storage with Gluster - SNIA · PDF fileAgenda Software Defined Storage (SDS) Gluster as SDS - 4Ws and a H Why Gluster? What is Gluster? How does Gluster work? Where

SDS - Characteristics

● Runs on Commodity Hardware

● Scale-out with resource aggregation

● Elasticity

● Automated Management

● Various data services

● Storage as a Platform & Storage as a Service

Page 6: Software Defined Storage with Gluster - SNIA · PDF fileAgenda Software Defined Storage (SDS) Gluster as SDS - 4Ws and a H Why Gluster? What is Gluster? How does Gluster work? Where

SDS with Gluster

Page 7: Software Defined Storage with Gluster - SNIA · PDF fileAgenda Software Defined Storage (SDS) Gluster as SDS - 4Ws and a H Why Gluster? What is Gluster? How does Gluster work? Where

Why Gluster?

Page 8: Software Defined Storage with Gluster - SNIA · PDF fileAgenda Software Defined Storage (SDS) Gluster as SDS - 4Ws and a H Why Gluster? What is Gluster? How does Gluster work? Where

Why Gluster?

● 2.5+ exabytes of data produced every day!

● 90% of data in last two years

● Data needs to be stored somewhere

● Often data needs to outlive us!

source: http://www-01.ibm.com/software/data/bigdata/what-is-big-data.html

Page 9: Software Defined Storage with Gluster - SNIA · PDF fileAgenda Software Defined Storage (SDS) Gluster as SDS - 4Ws and a H Why Gluster? What is Gluster? How does Gluster work? Where

What is Gluster?

Page 10: Software Defined Storage with Gluster - SNIA · PDF fileAgenda Software Defined Storage (SDS) Gluster as SDS - 4Ws and a H Why Gluster? What is Gluster? How does Gluster work? Where

What is Gluster?

● Open Scale-out distributed storage system.

● Aggregates storage exports over network interconnects to provide an unified namespace.

● Layered on disk file systems that support extended attributes.

● Provides file, object and block interfaces for data access.

Page 11: Software Defined Storage with Gluster - SNIA · PDF fileAgenda Software Defined Storage (SDS) Gluster as SDS - 4Ws and a H Why Gluster? What is Gluster? How does Gluster work? Where

How does Gluster work?

Page 12: Software Defined Storage with Gluster - SNIA · PDF fileAgenda Software Defined Storage (SDS) Gluster as SDS - 4Ws and a H Why Gluster? What is Gluster? How does Gluster work? Where

Typical Gluster Deployment

Page 13: Software Defined Storage with Gluster - SNIA · PDF fileAgenda Software Defined Storage (SDS) Gluster as SDS - 4Ws and a H Why Gluster? What is Gluster? How does Gluster work? Where

Gluster Architecture – Foundations

● Software only, runs on commodity hardware ● Scale-out with Elasticity ● Extensible and modular ● Deployment agnostic ● No external metadata servers

Page 14: Software Defined Storage with Gluster - SNIA · PDF fileAgenda Software Defined Storage (SDS) Gluster as SDS - 4Ws and a H Why Gluster? What is Gluster? How does Gluster work? Where

Gluster Volumes

● Logical collection of exports (bricks) from various servers

● Default entity for storage policy definition

● Volume or a part of the volume can be accessed by clients

Page 15: Software Defined Storage with Gluster - SNIA · PDF fileAgenda Software Defined Storage (SDS) Gluster as SDS - 4Ws and a H Why Gluster? What is Gluster? How does Gluster work? Where

Volume Types Volume type determines:

➢ Data Placement ➢ Redundancy ➢ More..

Available volume types:

- Distribute - Striped - Replicated - Distributed Replicate - Striped Replicate - Distributed Striped Replicate - Dispersed

Page 16: Software Defined Storage with Gluster - SNIA · PDF fileAgenda Software Defined Storage (SDS) Gluster as SDS - 4Ws and a H Why Gluster? What is Gluster? How does Gluster work? Where

Distributed Volume ➢Distributes files across various bricks of the volume.

➢Directories are present on all bricks of the volume.

➢Removes the need for an external meta data server, provides

O(1) lookup.

Page 17: Software Defined Storage with Gluster - SNIA · PDF fileAgenda Software Defined Storage (SDS) Gluster as SDS - 4Ws and a H Why Gluster? What is Gluster? How does Gluster work? Where

Replicated Volume

● Synchronous replication of all updates.

● Provides HA for data.

● Transaction driven for ensuring consistency.

● Changelogs maintained for re-conciliation.

● Any number of replicas can be configured.

Page 18: Software Defined Storage with Gluster - SNIA · PDF fileAgenda Software Defined Storage (SDS) Gluster as SDS - 4Ws and a H Why Gluster? What is Gluster? How does Gluster work? Where

How does a replicated volume work?

Page 19: Software Defined Storage with Gluster - SNIA · PDF fileAgenda Software Defined Storage (SDS) Gluster as SDS - 4Ws and a H Why Gluster? What is Gluster? How does Gluster work? Where

Distributed Replicated Volume

Page 20: Software Defined Storage with Gluster - SNIA · PDF fileAgenda Software Defined Storage (SDS) Gluster as SDS - 4Ws and a H Why Gluster? What is Gluster? How does Gluster work? Where

Dispersed Volume

● Erasure Coding / RAID 5 over the network

● “Disperses” data on to various bricks

● Algorithm: Reed solomon

● Non–systematic erasure coding

Page 21: Software Defined Storage with Gluster - SNIA · PDF fileAgenda Software Defined Storage (SDS) Gluster as SDS - 4Ws and a H Why Gluster? What is Gluster? How does Gluster work? Where

Access Mechanisms

Page 22: Software Defined Storage with Gluster - SNIA · PDF fileAgenda Software Defined Storage (SDS) Gluster as SDS - 4Ws and a H Why Gluster? What is Gluster? How does Gluster work? Where

Access Mechanisms

Gluster volumes can be accessed via the following mechanisms:

● FUSE based Native protocol

● NFSv3

● SMB

● libgfapi

● ReST/HTTP (object)

● HDFS

● iSCSI (block)

Page 23: Software Defined Storage with Gluster - SNIA · PDF fileAgenda Software Defined Storage (SDS) Gluster as SDS - 4Ws and a H Why Gluster? What is Gluster? How does Gluster work? Where

FUSE based native access

Page 24: Software Defined Storage with Gluster - SNIA · PDF fileAgenda Software Defined Storage (SDS) Gluster as SDS - 4Ws and a H Why Gluster? What is Gluster? How does Gluster work? Where

libgfapi access

Page 25: Software Defined Storage with Gluster - SNIA · PDF fileAgenda Software Defined Storage (SDS) Gluster as SDS - 4Ws and a H Why Gluster? What is Gluster? How does Gluster work? Where

NFSv3 access with Gluster NFS

Page 26: Software Defined Storage with Gluster - SNIA · PDF fileAgenda Software Defined Storage (SDS) Gluster as SDS - 4Ws and a H Why Gluster? What is Gluster? How does Gluster work? Where

Nfs-Ganesha with Gluster

Page 27: Software Defined Storage with Gluster - SNIA · PDF fileAgenda Software Defined Storage (SDS) Gluster as SDS - 4Ws and a H Why Gluster? What is Gluster? How does Gluster work? Where

SMB with Gluster

Page 28: Software Defined Storage with Gluster - SNIA · PDF fileAgenda Software Defined Storage (SDS) Gluster as SDS - 4Ws and a H Why Gluster? What is Gluster? How does Gluster work? Where

Object/ReST - SwiftonFile

Client Proxy Account

Container

Object

HTTP Request ( Swift REST API)

Directory

Volume

File Client NFS or

GlusterFS Mount

● Unified File and object view ● Entity mapping between file and object building blocks

Page 29: Software Defined Storage with Gluster - SNIA · PDF fileAgenda Software Defined Storage (SDS) Gluster as SDS - 4Ws and a H Why Gluster? What is Gluster? How does Gluster work? Where

HDFS access

Page 30: Software Defined Storage with Gluster - SNIA · PDF fileAgenda Software Defined Storage (SDS) Gluster as SDS - 4Ws and a H Why Gluster? What is Gluster? How does Gluster work? Where

Block/iSCSi access

Page 31: Software Defined Storage with Gluster - SNIA · PDF fileAgenda Software Defined Storage (SDS) Gluster as SDS - 4Ws and a H Why Gluster? What is Gluster? How does Gluster work? Where

Gluster Features

● Scale-out NAS

● Elasticity

● Directory, Volume & Inode quotas

● Data Protection and Recovery

● Volume and File Snapshots

● User Serviceable Snapshots

● Geographic/Asynchronous replication

● Archival

● Read-only

● WORM

Page 32: Software Defined Storage with Gluster - SNIA · PDF fileAgenda Software Defined Storage (SDS) Gluster as SDS - 4Ws and a H Why Gluster? What is Gluster? How does Gluster work? Where

Gluster Features

● Isolation for multi-tenancy

● SSL based data transfer

● Encryption at rest

● Performance

● Client side in memory caching for performance

● Data, metadata and readdir caching

● Monitoring

● Built in io statistics

● /proc like interface for introspection

● Provisioning

● puppet-gluster

● gluster-deploy

● More..

Page 33: Software Defined Storage with Gluster - SNIA · PDF fileAgenda Software Defined Storage (SDS) Gluster as SDS - 4Ws and a H Why Gluster? What is Gluster? How does Gluster work? Where

Web based Management - oVirt

Page 34: Software Defined Storage with Gluster - SNIA · PDF fileAgenda Software Defined Storage (SDS) Gluster as SDS - 4Ws and a H Why Gluster? What is Gluster? How does Gluster work? Where

Gluster Monitoring with Nagios

http://www.ovirt.org/Features/Nagios_Integration

Page 35: Software Defined Storage with Gluster - SNIA · PDF fileAgenda Software Defined Storage (SDS) Gluster as SDS - 4Ws and a H Why Gluster? What is Gluster? How does Gluster work? Where

How is it implemented?

Page 36: Software Defined Storage with Gluster - SNIA · PDF fileAgenda Software Defined Storage (SDS) Gluster as SDS - 4Ws and a H Why Gluster? What is Gluster? How does Gluster work? Where

Translators in Gluster

● Building blocks for a Gluster process.

● Based on Translators in GNU HURD.

● Each translator is a functional unit.

● Translators can be stacked together for achieving desired functionality.

● Translators are deployment agnostic – can be loaded in either the client or server stacks.

Page 37: Software Defined Storage with Gluster - SNIA · PDF fileAgenda Software Defined Storage (SDS) Gluster as SDS - 4Ws and a H Why Gluster? What is Gluster? How does Gluster work? Where

Customizable Translator Stack

Page 38: Software Defined Storage with Gluster - SNIA · PDF fileAgenda Software Defined Storage (SDS) Gluster as SDS - 4Ws and a H Why Gluster? What is Gluster? How does Gluster work? Where

Where is Gluster used?

Page 39: Software Defined Storage with Gluster - SNIA · PDF fileAgenda Software Defined Storage (SDS) Gluster as SDS - 4Ws and a H Why Gluster? What is Gluster? How does Gluster work? Where

Gluster Use Cases

Source: 2014 GlusterFS user survey

Page 40: Software Defined Storage with Gluster - SNIA · PDF fileAgenda Software Defined Storage (SDS) Gluster as SDS - 4Ws and a H Why Gluster? What is Gluster? How does Gluster work? Where

Ecosystem Integration

● Currently used with various ecosystem projects

● Virtualization ● OpenStack

● oVirt

● Qemu

● CloudStack

● Big Data Analytics ● Hadoop

● Tachyon

● File Sync and Share ● ownCloud

Page 41: Software Defined Storage with Gluster - SNIA · PDF fileAgenda Software Defined Storage (SDS) Gluster as SDS - 4Ws and a H Why Gluster? What is Gluster? How does Gluster work? Where

Nova Nodes (Gluster as ephemeral

storage)

Swift Objects

Cinder Data Glance Data

Swift Data

Swift API

Storage Server

(GlusterFS)

Storage Server

(GlusterFS)

Storage Server

(GlusterFS)

KVM

KVM

KVM

… Fuse/libgfapi

Manila Data

Storage Server

(GlusterFS)

Block Images Files Objects

Openstack Kilo + Gluster – Current Integration

Page 42: Software Defined Storage with Gluster - SNIA · PDF fileAgenda Software Defined Storage (SDS) Gluster as SDS - 4Ws and a H Why Gluster? What is Gluster? How does Gluster work? Where

What next in Gluster?

Page 43: Software Defined Storage with Gluster - SNIA · PDF fileAgenda Software Defined Storage (SDS) Gluster as SDS - 4Ws and a H Why Gluster? What is Gluster? How does Gluster work? Where

New Features in GlusterFS 3.7

● Data Tiering

● Bitrot detection

● Sharding

● NFSv4, 4.1 and pNFS access using NFS Ganesha

● Netgroups style configuration for NFS

● Performance improvements

Page 44: Software Defined Storage with Gluster - SNIA · PDF fileAgenda Software Defined Storage (SDS) Gluster as SDS - 4Ws and a H Why Gluster? What is Gluster? How does Gluster work? Where

Features beyond GlusterFS 3.7

● HyperConvergence with oVirt

● Compression at rest

● De-duplication

● Multi-protocol support with NFS, FUSE and SMB

● Native ReST APIs for gluster management

● More integration with OpenStack, Containers

Page 45: Software Defined Storage with Gluster - SNIA · PDF fileAgenda Software Defined Storage (SDS) Gluster as SDS - 4Ws and a H Why Gluster? What is Gluster? How does Gluster work? Where

Hyperconverged oVirt – Gluster

● Server nodes are used both for virtualization and serving replicated images from Gluster Volumes

● Support for both scaling up, adding more disks, and scaling out, adding more hosts

VM

s an

d S

tora

ge

Eng

ine

GlusterFS Volume

Bricks Bricks Bricks

Page 46: Software Defined Storage with Gluster - SNIA · PDF fileAgenda Software Defined Storage (SDS) Gluster as SDS - 4Ws and a H Why Gluster? What is Gluster? How does Gluster work? Where

Gluster Native Driver – OpenStack Manila

Page 47: Software Defined Storage with Gluster - SNIA · PDF fileAgenda Software Defined Storage (SDS) Gluster as SDS - 4Ws and a H Why Gluster? What is Gluster? How does Gluster work? Where

Gluster 4.0

● Not Evolutionary anymore

● Intended for massive scalability and manageability improvements, remove known bottlenecks

● Make it easier for devops to provison, manage and monitor

● Enable larger deployments and new use cases

Page 48: Software Defined Storage with Gluster - SNIA · PDF fileAgenda Software Defined Storage (SDS) Gluster as SDS - 4Ws and a H Why Gluster? What is Gluster? How does Gluster work? Where

Gluster 4.0

● New Style Replication

● Improved Distributed hashing Translator

● Composite operations in the GlusterFS RPC protocol

● Support for multiple networks

● Coherent client-side caching

● Advanced data tiering

● ... and much more

Page 49: Software Defined Storage with Gluster - SNIA · PDF fileAgenda Software Defined Storage (SDS) Gluster as SDS - 4Ws and a H Why Gluster? What is Gluster? How does Gluster work? Where

Resources Mailing lists: [email protected] [email protected] IRC: #gluster and #gluster-dev on freenode Web: http://www.gluster.org

Page 50: Software Defined Storage with Gluster - SNIA · PDF fileAgenda Software Defined Storage (SDS) Gluster as SDS - 4Ws and a H Why Gluster? What is Gluster? How does Gluster work? Where

Conclusions

● SDS evolution on the way

● Data explosion unbounded

● Great time to be in Storage!

Page 51: Software Defined Storage with Gluster - SNIA · PDF fileAgenda Software Defined Storage (SDS) Gluster as SDS - 4Ws and a H Why Gluster? What is Gluster? How does Gluster work? Where

Thank you!