1 / 21

Multi-directonal Scaling

Multi-directonal Scaling. Emile Heitor – NBS System 04 / 06 / 2011. You're not alone. E-commerce paradigm Whatever you sale, traffic is never flat However, it is predictible Sales, holidays, newsletters, TV shows. Newsletter and Sales. Facebook effect. How to handle traffic burst.

jatin
Download Presentation

Multi-directonal Scaling

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Multi-directonal Scaling Emile Heitor – NBS System 04 / 06 / 2011

  2. You're not alone E-commerce paradigm Whatever you sale, traffic is never flat However, it is predictible Sales, holidays, newsletters, TV shows

  3. Newsletter and Sales

  4. Facebook effect

  5. How to handle traffic burst What are your choices ? The rich: Enough servers to handle bursts anytime The poor: Traffic limit The pessimistic: accept performance drop, server crash The smart: Find a way to extend your hosting space for a defined period

  6. Virtualization ? It's 2011, nowadays : Paravirtualization's overhead is only 2 to 7% CPU usage can be distributed over cores or pinned to it Scheduling mechanisms are now very reliable We're talking about 24 cores by machine Next generation processors will provide 48 real cores by machine ! More cores make hypervisors happy

  7. It's all about infrastructure Xen's perfect hardware setup Virtualization's a pretty lady, she likes shiny jewels. Don't be cheap. Lots-of-core Lots-of-memory External storage (SAN or NAS) High capacity switches

  8. Vertical scaling Power growth through Xen Increase CPU: very complex task xm vcpu-set Increase memory: very very complex task xm mem-set Migrate virtual machine to new hardware xm migrate

  9. Scalability Technologies Zend Session Cluster Manager Memcached MySQL 5.5 / Percona Split read/write accesses Xtradb backend Nginx media servers

  10. Don't believe the hype What REALLY is Cloud Computing Companies providing : Tons of available CPU cores Tons of available memory Terabytes of bandwidth Highly performant virtualization systems being able to use parts of the latters A proper API in order to manipulate all this

  11. Latency kills Think infrastructure: how do I grow my platform Who's the memory hog ? Who's CPU hungry ? Who's easily scalable ? Our friends Apache/PHP ! “Easy” win: grow your frontends, integrate them to your infrastructure Find a cloud provider near you

  12. Early 2010 network

  13. Late 2010 network

  14. Virtualization made real Typical setup A medium-sized virtual machine 8 Intel cores @ 2.5GHz 16GB RAM The process of creating a fully functionnal machine takes about 5 minutes fab -f fab-nbs-kloug.py -H kloug create_machine:"standalone","vm2","clone"

  15. Interlude What is that “fab” thing anyway ? Fabric: http://docs.fabfile.org/0.9.2/, a python-based system designed to help automating tasks How does it bond with a CC environment As a matter of fact, NiftyName's API is actually available as a python class, easily expandable as fabric files

  16. Virtual machines management Uniform platforms 3 nodes templates Small (media server, small burst) 4 cores, 8GB Medium 8 cores, 16 GB Large 16 cores, 32GB

  17. Architecture tricks Usecase 1: Media server The heavy medias problem (flv, avi, mov...) Short time media server Easy setup Usecase 2: Magento frontend Harder setup, think about: DocumentRoot sharing Database Access Customer-only network

  18. Documentroot Sharing Best by far: SAN / NAS Shared data between real servers and CC nodes Easy to maintain, easy to setup, no tricks Oldschool solutions Rsync (asynchronous, tricky to deploy) NFS (weak failover) Distributed filesystems GlusterFS, drbd, Lustre

  19. Load Balancing Pop'ing a virtual machine is easy, integrate it is not Expanding a private infrastructure means joining a private VLAN Tunneling to the rescue Ability to connect to the databases with a minimal latency As of now, the node can be integrated to the loadbalancing pool like a “real” machine

  20. Next As of today, and since mid-2010, we're able to spawn nodes quicky and prepare them as real servers Late 2011, a convenient system, being developped at this very moment, will permit to spawn and prepare nodes when needed

  21. Thank You Q&A

More Related