19
Openstack Swift An Introduction

Openstack SWIFT

Embed Size (px)

DESCRIPTION

Brief introduction to Openstack Swift

Citation preview

Page 1: Openstack SWIFT

Openstack SwiftAn Introduction

Page 2: Openstack SWIFT

What is Swift?Object StoreAnalogous to S3Blob storeDoes not care about type of dataApache Licensed (Python)Production Quality

Page 3: Openstack SWIFT

FeaturesDistributedScalable to several Peta-BytesEventually consistent (CAP)Highly Available (by design)RobustREST-in peace :)

Page 4: Openstack SWIFT

Features (contd..)S3 API supportCan work on commodity HWQuotas and access controlVarious Storage SystemsKeystone Authentication

Page 5: Openstack SWIFT

But...You can't:

mount ithave file hierarchies (?)store live databasesformat to a file systemdo anything the API does not let you do !Store objects sized > 5GiB (WIP)

Page 6: Openstack SWIFT

ComponentsProxy Account ServerContainer ServerObject ServerRingsAuditors & Expirers...

Page 7: Openstack SWIFT

Proxy ServerGatekeeperAuthenticationHandles req from other serversSingle point of failure?

Page 8: Openstack SWIFT

Object ServerStores the objectsSize restricted to less than 5 GiBStorage, retrieval and deletionUpdates & ReplicationIntegrity auditsExtended attributes

Page 9: Openstack SWIFT

Container ServerKeeps track of objectsNamespace partitioningLists objectsSQLite DBsGlobally unique names not necessary

Page 10: Openstack SWIFT

Account ServerKeeps track of containersLists containers and points to them

Page 11: Openstack SWIFT

The RingsConsistent hash ring / tablePartitions & ReplicasWeightsObject, Container, Account servers have their own rings

Page 12: Openstack SWIFT

http://docs.basho.com/riak/latest/references/appendices/concepts/

Page 13: Openstack SWIFT

Swift Rings by @juldanjou

Page 14: Openstack SWIFT

Thanks to Julien Danjou

Page 15: Openstack SWIFT

Auditors & UpdatorsDetects bit-rots / filesystem corruptionQuarantines

Updators check for list sanityCounters & metadata

Page 16: Openstack SWIFT

ReplicatorsEnsures enough replicasEnsures correct placement of replicasReplication mechanism - Rsync

Page 17: Openstack SWIFT

ExpirersDeletion of an objectTombstones .tsswift-account-reaper

Page 18: Openstack SWIFT

Monitoring & Statsswift-reconswift-informant

Graphite / GangliaStatsD

Page 19: Openstack SWIFT

Questions ?swift.openstack.org