Upload
yogesh-g
View
742
Download
0
Embed Size (px)
DESCRIPTION
Brief introduction to Openstack Swift
Citation preview
Openstack SwiftAn Introduction
What is Swift?Object StoreAnalogous to S3Blob storeDoes not care about type of dataApache Licensed (Python)Production Quality
FeaturesDistributedScalable to several Peta-BytesEventually consistent (CAP)Highly Available (by design)RobustREST-in peace :)
Features (contd..)S3 API supportCan work on commodity HWQuotas and access controlVarious Storage SystemsKeystone Authentication
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)
ComponentsProxy Account ServerContainer ServerObject ServerRingsAuditors & Expirers...
Proxy ServerGatekeeperAuthenticationHandles req from other serversSingle point of failure?
Object ServerStores the objectsSize restricted to less than 5 GiBStorage, retrieval and deletionUpdates & ReplicationIntegrity auditsExtended attributes
Container ServerKeeps track of objectsNamespace partitioningLists objectsSQLite DBsGlobally unique names not necessary
Account ServerKeeps track of containersLists containers and points to them
The RingsConsistent hash ring / tablePartitions & ReplicasWeightsObject, Container, Account servers have their own rings
http://docs.basho.com/riak/latest/references/appendices/concepts/
Swift Rings by @juldanjou
Thanks to Julien Danjou
Auditors & UpdatorsDetects bit-rots / filesystem corruptionQuarantines
Updators check for list sanityCounters & metadata
ReplicatorsEnsures enough replicasEnsures correct placement of replicasReplication mechanism - Rsync
ExpirersDeletion of an objectTombstones .tsswift-account-reaper
Monitoring & Statsswift-reconswift-informant
Graphite / GangliaStatsD
Questions ?swift.openstack.org