FOSDEM’14 [email protected] UNIFIED CLOUD STORAGE WITH SSYYNNNNEEFFOO ++ GGAANNEETTII ++ AARRCCHHIIPPEELLAAGGOO ++ CCEEPPHH VANGELIS KOUKIS, TECHNICAL LEAD, SYNNEFO 1 Runningg a ppublic cloud: ~okeanos FOSDEM’14 [email protected] History - Design started late 2010 - Production since July 2011 Numbers - UUsseerrss:: > 55000000 - VMs: > 7000 currently active - MMoorree tthhaann 225500kk VVMMss ssppaawwnneedd ssoo ffaarr, mmoorree tthhaann 7700kk nneettwwoorrkkss 2 Runningg a ppublic cloud: ~okeanos FOSDEM’14 [email protected] Our choices - Build own AWS-like service (Compute, Network, Storage) - Persistent VMs - Everyythingg oppen source - Production-quality IaaS - SSuuppeerr-ssiimmppllee UUII HHooww?? 3 Runningg a ppublic cloud: ~okeanos FOSDEM’14 [email protected] The tough stuff - Stability - Persistent VMs: VMs are not cattle, they are pets - Commodityy hardware - Scalability - MMaannaaggeeaabbiilliittyy:: GGrraadduuaall rroolllloouutt ooff uuppggrraaddeess aanndd nneeww ffeeaattuurreess 4 Runningg a ppublic cloud: ~okeanos FOSDEM’14 [email protected] Our approach - Synnefo - Google Ganeti - DRBD - Archipelago - CCeepphh - OpenStack APIs 5 Architecture FOSDEM’14 [email protected] 6 End-to-end workflow with unified storagge FOSDEM’14 [email protected] 7 Live demo! FOSDEM’14 [email protected] Login, view/upload files Unified image store: Images as files VViieeww//ccrreeaattee//ddeessttrrooyy sseerrvveerrss ffrroomm IImmaaggeess …on multiple storage backends …on Archippelaggo,, for thin,, supper-fast creation …with per-server customization, e.g., file injection View/create/destroy virtual networks Interconnect VMs, with NIC hotplugging Take a point-in-time snapshot of a VM’s disk, in seconds SShhaarree iitt wwiitthh ccoollllaabboorraattoorrss, wwiitthh ffiinnee-ggrraaiinneedd AAcccceessss CCoonnttrrooll Create a virtual cluster from this Image ……ffrroomm tthhee ccoommmmaanndd-lliinnee,, aanndd iinn PPyytthhoonn ssccrriippttss 8 Googgle Ganeti FOSDEM’14 [email protected] Mature, production-ready VM cluster management - used for Google’s corporate infrastructure Multiple storage backends out of the box - LVM, DRBD - Files on local or shared directory - RBD (Ceph/RADOS) External Storage Interface for SAN/NAS support Ganeti cluster = masterd on master, noded on nodes Easy to integrate into existing infrastructure - Remote API over HTTP, pre/post hooks for every action! 9 Architecture FOSDEM’14 [email protected] 10
Description: