SlideShare a Scribd company logo
1 of 24
Cloud to the rescue?
  Servers, Files, CDNs and Fun
           Questions!




      Alex McFadyen, CTO


     drupal.org : a_c_m || drupal.org/user/195063
          email : alex@demotix.com
         twitter : @a_c_m
Introduction : Demotix.com


                   Demotix.com
  A two minute (or less) introduction

   http://prezi.com/_ugoyxm4qprv/demotixcom-2-minutes/




           Drupal Developer Days – Barcelona           June 16th 2012
                  ALEX McFADYEN | alex@demotix.com | @a_c_m
Introduction : Demotix.com
               Some Demotix numbers
 ●
     1.5million+ page views a month
 ●
     Very very long tale of content
 ●
     Spikes where we get 100k's views in a single day
      –    Oh how I love Varnish
 ●
     14GB+ database
 ●
     750,000+ nodes, even more terms
 ●
     3-7k new nodes per day


          All running from 3 “real” servers. 1 Web, 1 DB, 1 Util.
              (Having moved “out” of the cloud 3 years ago)

                   Drupal Developer Days – Barcelona           June 16th 2012
                          ALEX McFADYEN | alex@demotix.com | @a_c_m
Introduction : Why care?

      Why not just pay for it to be someone else’s
                       problem?


●
    Control (you NEED it)
●
    Complexity (doesn't fit generic solutions)
●
    Policy

●
    If you can. Do.



               Drupal Developer Days – Barcelona           June 16th 2012
                      ALEX McFADYEN | alex@demotix.com | @a_c_m
Introduction : “The Cloud”
                              To the world
“Cloud computing refers to the delivery of computing and storage
   capacity as a service to a heterogeneous community of end-
                             recipients”
                                 - http://en.wikipedia.org/wiki/Cloud_computing



                      To me (a Drupal dev)
 “The cloud is just a buzz word meaning quick to set up VPSs,
perhaps 'unlimited' storage space and even a CDN if your lucky”
                                                                           - Me, just now.




              Drupal Developer Days – Barcelona           June 16th 2012
                     ALEX McFADYEN | alex@demotix.com | @a_c_m
Introduction : “The Cloud”
  3 parts we were interested in


Power         = Virtual Private Servers
Storage       = Disks. Big ones.
Delivery = CDNs and other tricks




          Drupal Developer Days – Barcelona           June 16th 2012
                 ALEX McFADYEN | alex@demotix.com | @a_c_m
Power : Why VPSs rock


@   New servers anytime
@   Scale up and down anytime
@   Short/no contracts
@   Total control                (I Y Drush, root access, etc)
@   Cheap !



      Drupal Developer Days – Barcelona           June 16th 2012
             ALEX McFADYEN | alex@demotix.com | @a_c_m
Power : Why VPSs don't


    @ Total control                 (I Y Drush, root access, etc)

       “With great power comes great responsibility”
                                                                            - Uncle Ben

●
    You always secretly wanted be a sysadmin right?
●
    You want to be woken up at 3am if it goes wrong?
●
    root@server:~# rm -rf /




               Drupal Developer Days – Barcelona           June 16th 2012
                      ALEX McFADYEN | alex@demotix.com | @a_c_m
Power : Why VPSs don't


    @ Location            (Where did I just put that data?)

●
    EU has laws about where you can send and store users
    data.
●
    Your business may not allow for you to store data in the
    cloud.
●
    Cloud may not be where your users are.




                Drupal Developer Days – Barcelona           June 16th 2012
                       ALEX McFADYEN | alex@demotix.com | @a_c_m
Power : Why VPSs don't

    @ Slices        (How big is your share?)

●
    Most (not all) cloud providers slice servers up into equal
    cpu/ram/disk space chunks and sell them off.
●
    Some let you add on resources you need, others don't.

    @ Poor disk IO
●
    Are your disks local or over the network?



                Drupal Developer Days – Barcelona           June 16th 2012
                       ALEX McFADYEN | alex@demotix.com | @a_c_m
Power : Why VPSs don't
    @ More servers, more problems
●
    Once your past dedicated use servers (web, db etc) you
    have to do work on the app to support more servers.
    See last session “How to sleep without the server-crash-fear
    (High Availability and High Performance Hosting for Drupal)”


    @ Support
●
    Do you have any?
●
    How about at 3am?
     ●
         On Christmas day


                  Drupal Developer Days – Barcelona           June 16th 2012
                         ALEX McFADYEN | alex@demotix.com | @a_c_m
Power : Why VPSs don't


    @ Bad neighbours & overselling
●
    Starts out great, then reddit moves in next door.

    @ Cloud A != Cloud B
●
    Disks, CPU/Ram/Disk ratio, network speed, location,
    management systems etc



                Drupal Developer Days – Barcelona           June 16th 2012
                       ALEX McFADYEN | alex@demotix.com | @a_c_m
Power : What to do?
    @ Benchmarks
●
    Drupal benchmark? Omega8.cc Room today at 4pm.
●
    http://cloudharmony.com cpu/ram/disk/web/db




              Drupal Developer Days – Barcelona           June 16th 2012
                     ALEX McFADYEN | alex@demotix.com | @a_c_m
Power : What to do?
    @ Try before you buy
●
    Some companies will give you a free week.
●
    Put as close as you can 1:1 copy of your current site on
    it and...


    @ Test, test and test some more
●
    AB / Siege test your caching system.
●
    Instead replay your log files with HTTPERF or Jmeter.
●
    Monitor the results with Munin/Cacti/Newrelic.


                Drupal Developer Days – Barcelona           June 16th 2012
                       ALEX McFADYEN | alex@demotix.com | @a_c_m
Power : Review
   Why VPS rock                                                    Why they don't
@ New servers anytime
                                                     @   Total control
@ Scale up and down anytime                          @   Location
@ Short/no contracts                                 @   Slices
                                                     @   Poor disk IO
@ Total control                                      @   More servers, more problems
@ Cheap !                                            @   Support
                                                     @   Overselling
                                                     @   Cloud A != Cloud B


What to do
@ Benchmark                                         @ Try before you buy

@ Test, test and test some more



                        Drupal Developer Days – Barcelona           June 16th 2012
                               ALEX McFADYEN | alex@demotix.com | @a_c_m
Storage : The problem
          Storage = /sites/*/files


@ Multi web head environment
@ Web heads need more space than
   their slice allows
@* LOTS of files in a single dir (10k+)



      Drupal Developer Days – Barcelona           June 16th 2012
             ALEX McFADYEN | alex@demotix.com | @a_c_m
Storage : The solutions

https://www.getpantheon.com/news/inside-pantheon-
                valhalla-filesystem


   @ Server with
        big disk(s) / SAN / EBS + NFS
         ●
             Tried, tested, works
         ●
             Not very exciting
         ●
             Single point of failure
         ●
             Depending on your cloud could need a 64GB
             ram server !!

             Drupal Developer Days – Barcelona           June 16th 2012
                    ALEX McFADYEN | alex@demotix.com | @a_c_m
Storage : The solutions

@ API storage + Fuse (Cloudfuse*, s3fs)
   ●
       Theoretically unlimited storage
   ●
       CDN with little or no extra effort
   ●
       A bit bleeding edge / untested


@ Gluster FS / Similar
   ●
       Impressive solution
   ●
       Makes trade-offs drupal doesn't need
   ●
       Complicated

        Drupal Developer Days – Barcelona           June 16th 2012
               ALEX McFADYEN | alex@demotix.com | @a_c_m
Delivery : Do CDNs matter?
Dev server in Paris




       YES




     http://www.dotcom-monitor.com/WebTools/technical-tools-browser-test.aspx


                Drupal Developer Days – Barcelona           June 16th 2012
                       ALEX McFADYEN | alex@demotix.com | @a_c_m
Delivery : Types of CDN
 http://wimleers.com/article/key-properties-of-a-cdn

@ Push (CloudFiles, S3 etc)
     ●
         No redundant traffic
     ●
         Complex set up


@ Pull (lots)
     ●
         Very easy to set up
     ●
         Redundant traffic


@ DNS (Cloudflare/incapsula)
     ●
         Takes over your DNS
     ●
         Does more than “just” CDN
     ●
         We have not tested


           Drupal Developer Days – Barcelona           June 16th 2012
                  ALEX McFADYEN | alex@demotix.com | @a_c_m
Conclusions

@ The Cloud isn't a magic bullet
@ The best benchmark is your own app,
   with replayed traffic.
@  Cloud providers differ a LOT
@ Storage can be complicated
@ CDNs can give you an easy big win

         Drupal Developer Days – Barcelona           June 16th 2012
                ALEX McFADYEN | alex@demotix.com | @a_c_m
What did we do?
@ Power : Cloud, Yes … but still in testing
    ●
        Using Dediserve.com
             https://billing.dediserve.com/?affid=148
    ●
        Still re-tuning web heads PHP-FPM vs mod_php.
    ●
        Hopefully live next week!

@ Storage : NFS
    ●
        Simple, tried and tested.
    ●
        Using a NFS mount used by all web heads.


@ CDN : Yes! CDN pull.
    ●
        Easy win ! Very easy to set up.
    ●
        Dediserve's CDN.
    ●
        Also using CDN module to spread assets over several
        domains (improves front end performance)
               Drupal Developer Days – Barcelona           June 16th 2012
                      ALEX McFADYEN | alex@demotix.com | @a_c_m
* Lots of files / * Cloud fuse
@ Lots of files ...
   Close to 1M files in a single directory
    ●
        Wrote custom drupal 6 module to fix
    ●
        As part of the file save hooks, it moved the file to a folder
        structure based on the filename.
    ●
        /sites/default/files/<new_folder>/images/123.jpg
    ●
        On drupal.org, but alpha

@ Cloudfuse + CDN + Lots of files
    ●
        Working proof of concept
    ●
        Uses Rackspace cloud files for both storage and CDN
    ●
        Requires pre-generation of imagecache
    ●
        Not published … yet.

                Drupal Developer Days – Barcelona           June 16th 2012
                       ALEX McFADYEN | alex@demotix.com | @a_c_m
Thank you
   Questions?


Alex McFadyen, CTO



drupal.org : a_c_m || drupal.org/user/195063
    email : alex@demotix.com
   twitter : @a_c_m

More Related Content

What's hot

DrupalCampLA 2014 - Drupal backend performance and scalability
DrupalCampLA 2014 - Drupal backend performance and scalabilityDrupalCampLA 2014 - Drupal backend performance and scalability
DrupalCampLA 2014 - Drupal backend performance and scalabilitycherryhillco
 
Container Attached Storage with OpenEBS - CNCF Paris Meetup
Container Attached Storage with OpenEBS - CNCF Paris MeetupContainer Attached Storage with OpenEBS - CNCF Paris Meetup
Container Attached Storage with OpenEBS - CNCF Paris MeetupMayaData Inc
 
Solving k8s persistent workloads using k8s DevOps style
Solving k8s persistent workloads using k8s DevOps styleSolving k8s persistent workloads using k8s DevOps style
Solving k8s persistent workloads using k8s DevOps styleMayaData
 
How to Package & Deploy Microservices
How to Package & Deploy MicroservicesHow to Package & Deploy Microservices
How to Package & Deploy Microservicespanagenda
 
Midwest php 2013 deploying php on paas- why & how
Midwest php 2013   deploying php on paas- why & howMidwest php 2013   deploying php on paas- why & how
Midwest php 2013 deploying php on paas- why & howdotCloud
 
QNAP QTS 4.0 Overview
QNAP QTS 4.0 OverviewQNAP QTS 4.0 Overview
QNAP QTS 4.0 Overviewqnapchris
 
I Love Techno - the site
I Love Techno - the siteI Love Techno - the site
I Love Techno - the sitePeter Arato
 
WordPress Development Environments
WordPress Development Environments WordPress Development Environments
WordPress Development Environments Ohad Raz
 
Azure container service docker-ha noi com
Azure container service   docker-ha noi comAzure container service   docker-ha noi com
Azure container service docker-ha noi comVan Phuc
 
Docker- Ha Noi - Year end 2015 party
Docker- Ha Noi - Year end 2015 partyDocker- Ha Noi - Year end 2015 party
Docker- Ha Noi - Year end 2015 partyVan Phuc
 
Drupal 6 JavaScript and jQuery
Drupal 6 JavaScript and jQueryDrupal 6 JavaScript and jQuery
Drupal 6 JavaScript and jQueryMatt Butcher
 
Citrix Synergy 2014 - Syn232 Building a Cloud Architecture and Self- Service ...
Citrix Synergy 2014 - Syn232 Building a Cloud Architecture and Self- Service ...Citrix Synergy 2014 - Syn232 Building a Cloud Architecture and Self- Service ...
Citrix Synergy 2014 - Syn232 Building a Cloud Architecture and Self- Service ...Citrix
 
Adminlicious - A Guide To TCO Features In Domino v10
Adminlicious - A Guide To TCO Features In Domino v10Adminlicious - A Guide To TCO Features In Domino v10
Adminlicious - A Guide To TCO Features In Domino v10Gabriella Davis
 
Introduction to Docker Compose
Introduction to Docker ComposeIntroduction to Docker Compose
Introduction to Docker ComposeAjeet Singh Raina
 
Scalable Plone hosting with Amazon EC2 for Rice University's Rhaptos open lea...
Scalable Plone hosting with Amazon EC2 for Rice University's Rhaptos open lea...Scalable Plone hosting with Amazon EC2 for Rice University's Rhaptos open lea...
Scalable Plone hosting with Amazon EC2 for Rice University's Rhaptos open lea...Jazkarta, Inc.
 
An Introduction to Configuring Domino for Docker
An Introduction to Configuring Domino for DockerAn Introduction to Configuring Domino for Docker
An Introduction to Configuring Domino for DockerGabriella Davis
 

What's hot (20)

Drupal in 5
Drupal in 5Drupal in 5
Drupal in 5
 
DrupalCampLA 2014 - Drupal backend performance and scalability
DrupalCampLA 2014 - Drupal backend performance and scalabilityDrupalCampLA 2014 - Drupal backend performance and scalability
DrupalCampLA 2014 - Drupal backend performance and scalability
 
Container Attached Storage with OpenEBS - CNCF Paris Meetup
Container Attached Storage with OpenEBS - CNCF Paris MeetupContainer Attached Storage with OpenEBS - CNCF Paris Meetup
Container Attached Storage with OpenEBS - CNCF Paris Meetup
 
Solving k8s persistent workloads using k8s DevOps style
Solving k8s persistent workloads using k8s DevOps styleSolving k8s persistent workloads using k8s DevOps style
Solving k8s persistent workloads using k8s DevOps style
 
How to Package & Deploy Microservices
How to Package & Deploy MicroservicesHow to Package & Deploy Microservices
How to Package & Deploy Microservices
 
Midwest php 2013 deploying php on paas- why & how
Midwest php 2013   deploying php on paas- why & howMidwest php 2013   deploying php on paas- why & how
Midwest php 2013 deploying php on paas- why & how
 
QNAP QTS 4.0 Overview
QNAP QTS 4.0 OverviewQNAP QTS 4.0 Overview
QNAP QTS 4.0 Overview
 
I Love Techno - the site
I Love Techno - the siteI Love Techno - the site
I Love Techno - the site
 
WordPress Development Environments
WordPress Development Environments WordPress Development Environments
WordPress Development Environments
 
Docker and stuff
Docker and stuffDocker and stuff
Docker and stuff
 
Alex Fishman - Virtualizing the Cloud
Alex Fishman - Virtualizing the CloudAlex Fishman - Virtualizing the Cloud
Alex Fishman - Virtualizing the Cloud
 
Azure container service docker-ha noi com
Azure container service   docker-ha noi comAzure container service   docker-ha noi com
Azure container service docker-ha noi com
 
Docker- Ha Noi - Year end 2015 party
Docker- Ha Noi - Year end 2015 partyDocker- Ha Noi - Year end 2015 party
Docker- Ha Noi - Year end 2015 party
 
Drupal 6 JavaScript and jQuery
Drupal 6 JavaScript and jQueryDrupal 6 JavaScript and jQuery
Drupal 6 JavaScript and jQuery
 
Citrix Synergy 2014 - Syn232 Building a Cloud Architecture and Self- Service ...
Citrix Synergy 2014 - Syn232 Building a Cloud Architecture and Self- Service ...Citrix Synergy 2014 - Syn232 Building a Cloud Architecture and Self- Service ...
Citrix Synergy 2014 - Syn232 Building a Cloud Architecture and Self- Service ...
 
Adminlicious - A Guide To TCO Features In Domino v10
Adminlicious - A Guide To TCO Features In Domino v10Adminlicious - A Guide To TCO Features In Domino v10
Adminlicious - A Guide To TCO Features In Domino v10
 
Introduction to Docker Compose
Introduction to Docker ComposeIntroduction to Docker Compose
Introduction to Docker Compose
 
Introduction to docker
Introduction to dockerIntroduction to docker
Introduction to docker
 
Scalable Plone hosting with Amazon EC2 for Rice University's Rhaptos open lea...
Scalable Plone hosting with Amazon EC2 for Rice University's Rhaptos open lea...Scalable Plone hosting with Amazon EC2 for Rice University's Rhaptos open lea...
Scalable Plone hosting with Amazon EC2 for Rice University's Rhaptos open lea...
 
An Introduction to Configuring Domino for Docker
An Introduction to Configuring Domino for DockerAn Introduction to Configuring Domino for Docker
An Introduction to Configuring Domino for Docker
 

Viewers also liked

Portable toilet
Portable toiletPortable toilet
Portable toiletJOAN_GT
 
test konvert
test konverttest konvert
test konvertbasener13
 
colgate-palmolive 2004 Annual
colgate-palmolive 2004 Annualcolgate-palmolive 2004 Annual
colgate-palmolive 2004 Annualfinance19
 
Opening the black box: Space, Time and the Geography of the Labor Process
Opening the black box:  Space, Time and the Geography of the Labor ProcessOpening the black box:  Space, Time and the Geography of the Labor Process
Opening the black box: Space, Time and the Geography of the Labor ProcessChris Benner
 

Viewers also liked (6)

Portable toilet
Portable toiletPortable toilet
Portable toilet
 
test konvert
test konverttest konvert
test konvert
 
372 s621
372 s621372 s621
372 s621
 
colgate-palmolive 2004 Annual
colgate-palmolive 2004 Annualcolgate-palmolive 2004 Annual
colgate-palmolive 2004 Annual
 
Opening the black box: Space, Time and the Geography of the Labor Process
Opening the black box:  Space, Time and the Geography of the Labor ProcessOpening the black box:  Space, Time and the Geography of the Labor Process
Opening the black box: Space, Time and the Geography of the Labor Process
 
504 s1122
504 s1122504 s1122
504 s1122
 

Similar to Drupal Cloud to the rescue? Servers, Files, CDNs and Fun!

Dcamp ldn presentation
Dcamp ldn presentationDcamp ldn presentation
Dcamp ldn presentationa_c_m
 
Cloud Camp Chicago Dec 2012 Slides
Cloud Camp Chicago Dec 2012 SlidesCloud Camp Chicago Dec 2012 Slides
Cloud Camp Chicago Dec 2012 SlidesRyan Koop
 
Cloud Camp Chicago Dec 2012 - All presentations
Cloud Camp Chicago Dec 2012 - All presentationsCloud Camp Chicago Dec 2012 - All presentations
Cloud Camp Chicago Dec 2012 - All presentationsCloudCamp Chicago
 
Moving your APEX app to the Oracle Exadata Express Cloud
Moving your APEX app to the Oracle Exadata Express CloudMoving your APEX app to the Oracle Exadata Express Cloud
Moving your APEX app to the Oracle Exadata Express CloudDimitri Gielis
 
Drupal Extreme Scaling
Drupal Extreme ScalingDrupal Extreme Scaling
Drupal Extreme Scalingzekivazquez
 
[Srijan Wednesday Webinars] How to Build a Cloud Native Platform for Enterpri...
[Srijan Wednesday Webinars] How to Build a Cloud Native Platform for Enterpri...[Srijan Wednesday Webinars] How to Build a Cloud Native Platform for Enterpri...
[Srijan Wednesday Webinars] How to Build a Cloud Native Platform for Enterpri...Srijan Technologies
 
Cloud-Native Drupal: a survival guide
Cloud-Native Drupal: a survival guideCloud-Native Drupal: a survival guide
Cloud-Native Drupal: a survival guidesparkfabrik
 
The Time Has Come for Big-Data-as-a-Service
The Time Has Come for Big-Data-as-a-ServiceThe Time Has Come for Big-Data-as-a-Service
The Time Has Come for Big-Data-as-a-ServiceBlueData, Inc.
 
Decoupling Drupal - Drupal Camp Toronto 2014
Decoupling Drupal - Drupal Camp Toronto 2014Decoupling Drupal - Drupal Camp Toronto 2014
Decoupling Drupal - Drupal Camp Toronto 2014Alex De Winne
 
Continuous Integration with Docker on AWS
Continuous Integration with Docker on AWSContinuous Integration with Docker on AWS
Continuous Integration with Docker on AWSAndrew Heifetz
 
ContainerDayVietnam2016: Dockerize a small business
ContainerDayVietnam2016: Dockerize a small businessContainerDayVietnam2016: Dockerize a small business
ContainerDayVietnam2016: Dockerize a small businessDocker-Hanoi
 
Future of Apache CloudStack: modular, distributed, and hackable
Future of Apache CloudStack: modular, distributed, and hackableFuture of Apache CloudStack: modular, distributed, and hackable
Future of Apache CloudStack: modular, distributed, and hackableDarren Shepherd
 
There's More to Docker than the Container: The Docker Platform - Kendrick Col...
There's More to Docker than the Container: The Docker Platform - Kendrick Col...There's More to Docker than the Container: The Docker Platform - Kendrick Col...
There's More to Docker than the Container: The Docker Platform - Kendrick Col...{code} by Dell EMC
 
Docker vs. Kubernetes vs. Serverless
Docker vs. Kubernetes vs. ServerlessDocker vs. Kubernetes vs. Serverless
Docker vs. Kubernetes vs. ServerlessLogicworksNY
 
Platform Engineering for the Modern Oracle World
Platform Engineering for the Modern Oracle WorldPlatform Engineering for the Modern Oracle World
Platform Engineering for the Modern Oracle WorldSimon Haslam
 
DockerPenang Meetup#1
DockerPenang Meetup#1DockerPenang Meetup#1
DockerPenang Meetup#1Sujay Pillai
 
Docker в автоматизации тестирования
Docker в автоматизации тестированияDocker в автоматизации тестирования
Docker в автоматизации тестированияCOMAQA.BY
 

Similar to Drupal Cloud to the rescue? Servers, Files, CDNs and Fun! (20)

Dcamp ldn presentation
Dcamp ldn presentationDcamp ldn presentation
Dcamp ldn presentation
 
Cloud Camp Chicago Dec 2012 Slides
Cloud Camp Chicago Dec 2012 SlidesCloud Camp Chicago Dec 2012 Slides
Cloud Camp Chicago Dec 2012 Slides
 
Cloud Camp Chicago Dec 2012 - All presentations
Cloud Camp Chicago Dec 2012 - All presentationsCloud Camp Chicago Dec 2012 - All presentations
Cloud Camp Chicago Dec 2012 - All presentations
 
Moving your APEX app to the Oracle Exadata Express Cloud
Moving your APEX app to the Oracle Exadata Express CloudMoving your APEX app to the Oracle Exadata Express Cloud
Moving your APEX app to the Oracle Exadata Express Cloud
 
Flying on the cloud
Flying on the cloudFlying on the cloud
Flying on the cloud
 
Drupal Extreme Scaling
Drupal Extreme ScalingDrupal Extreme Scaling
Drupal Extreme Scaling
 
[Srijan Wednesday Webinars] How to Build a Cloud Native Platform for Enterpri...
[Srijan Wednesday Webinars] How to Build a Cloud Native Platform for Enterpri...[Srijan Wednesday Webinars] How to Build a Cloud Native Platform for Enterpri...
[Srijan Wednesday Webinars] How to Build a Cloud Native Platform for Enterpri...
 
Virtualization and Containers
Virtualization and ContainersVirtualization and Containers
Virtualization and Containers
 
Cloud-Native Drupal: a survival guide
Cloud-Native Drupal: a survival guideCloud-Native Drupal: a survival guide
Cloud-Native Drupal: a survival guide
 
The Time Has Come for Big-Data-as-a-Service
The Time Has Come for Big-Data-as-a-ServiceThe Time Has Come for Big-Data-as-a-Service
The Time Has Come for Big-Data-as-a-Service
 
Decoupling Drupal - Drupal Camp Toronto 2014
Decoupling Drupal - Drupal Camp Toronto 2014Decoupling Drupal - Drupal Camp Toronto 2014
Decoupling Drupal - Drupal Camp Toronto 2014
 
Continuous Integration with Docker on AWS
Continuous Integration with Docker on AWSContinuous Integration with Docker on AWS
Continuous Integration with Docker on AWS
 
ContainerDayVietnam2016: Dockerize a small business
ContainerDayVietnam2016: Dockerize a small businessContainerDayVietnam2016: Dockerize a small business
ContainerDayVietnam2016: Dockerize a small business
 
Future of Apache CloudStack: modular, distributed, and hackable
Future of Apache CloudStack: modular, distributed, and hackableFuture of Apache CloudStack: modular, distributed, and hackable
Future of Apache CloudStack: modular, distributed, and hackable
 
The Cloud Talk
The Cloud TalkThe Cloud Talk
The Cloud Talk
 
There's More to Docker than the Container: The Docker Platform - Kendrick Col...
There's More to Docker than the Container: The Docker Platform - Kendrick Col...There's More to Docker than the Container: The Docker Platform - Kendrick Col...
There's More to Docker than the Container: The Docker Platform - Kendrick Col...
 
Docker vs. Kubernetes vs. Serverless
Docker vs. Kubernetes vs. ServerlessDocker vs. Kubernetes vs. Serverless
Docker vs. Kubernetes vs. Serverless
 
Platform Engineering for the Modern Oracle World
Platform Engineering for the Modern Oracle WorldPlatform Engineering for the Modern Oracle World
Platform Engineering for the Modern Oracle World
 
DockerPenang Meetup#1
DockerPenang Meetup#1DockerPenang Meetup#1
DockerPenang Meetup#1
 
Docker в автоматизации тестирования
Docker в автоматизации тестированияDocker в автоматизации тестирования
Docker в автоматизации тестирования
 

Recently uploaded

Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilV3cube
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 

Recently uploaded (20)

Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 

Drupal Cloud to the rescue? Servers, Files, CDNs and Fun!

  • 1. Cloud to the rescue? Servers, Files, CDNs and Fun Questions! Alex McFadyen, CTO drupal.org : a_c_m || drupal.org/user/195063 email : alex@demotix.com twitter : @a_c_m
  • 2. Introduction : Demotix.com Demotix.com A two minute (or less) introduction http://prezi.com/_ugoyxm4qprv/demotixcom-2-minutes/ Drupal Developer Days – Barcelona June 16th 2012 ALEX McFADYEN | alex@demotix.com | @a_c_m
  • 3. Introduction : Demotix.com Some Demotix numbers ● 1.5million+ page views a month ● Very very long tale of content ● Spikes where we get 100k's views in a single day – Oh how I love Varnish ● 14GB+ database ● 750,000+ nodes, even more terms ● 3-7k new nodes per day All running from 3 “real” servers. 1 Web, 1 DB, 1 Util. (Having moved “out” of the cloud 3 years ago) Drupal Developer Days – Barcelona June 16th 2012 ALEX McFADYEN | alex@demotix.com | @a_c_m
  • 4. Introduction : Why care? Why not just pay for it to be someone else’s problem? ● Control (you NEED it) ● Complexity (doesn't fit generic solutions) ● Policy ● If you can. Do. Drupal Developer Days – Barcelona June 16th 2012 ALEX McFADYEN | alex@demotix.com | @a_c_m
  • 5. Introduction : “The Cloud” To the world “Cloud computing refers to the delivery of computing and storage capacity as a service to a heterogeneous community of end- recipients” - http://en.wikipedia.org/wiki/Cloud_computing To me (a Drupal dev) “The cloud is just a buzz word meaning quick to set up VPSs, perhaps 'unlimited' storage space and even a CDN if your lucky” - Me, just now. Drupal Developer Days – Barcelona June 16th 2012 ALEX McFADYEN | alex@demotix.com | @a_c_m
  • 6. Introduction : “The Cloud” 3 parts we were interested in Power = Virtual Private Servers Storage = Disks. Big ones. Delivery = CDNs and other tricks Drupal Developer Days – Barcelona June 16th 2012 ALEX McFADYEN | alex@demotix.com | @a_c_m
  • 7. Power : Why VPSs rock @ New servers anytime @ Scale up and down anytime @ Short/no contracts @ Total control (I Y Drush, root access, etc) @ Cheap ! Drupal Developer Days – Barcelona June 16th 2012 ALEX McFADYEN | alex@demotix.com | @a_c_m
  • 8. Power : Why VPSs don't @ Total control (I Y Drush, root access, etc) “With great power comes great responsibility” - Uncle Ben ● You always secretly wanted be a sysadmin right? ● You want to be woken up at 3am if it goes wrong? ● root@server:~# rm -rf / Drupal Developer Days – Barcelona June 16th 2012 ALEX McFADYEN | alex@demotix.com | @a_c_m
  • 9. Power : Why VPSs don't @ Location (Where did I just put that data?) ● EU has laws about where you can send and store users data. ● Your business may not allow for you to store data in the cloud. ● Cloud may not be where your users are. Drupal Developer Days – Barcelona June 16th 2012 ALEX McFADYEN | alex@demotix.com | @a_c_m
  • 10. Power : Why VPSs don't @ Slices (How big is your share?) ● Most (not all) cloud providers slice servers up into equal cpu/ram/disk space chunks and sell them off. ● Some let you add on resources you need, others don't. @ Poor disk IO ● Are your disks local or over the network? Drupal Developer Days – Barcelona June 16th 2012 ALEX McFADYEN | alex@demotix.com | @a_c_m
  • 11. Power : Why VPSs don't @ More servers, more problems ● Once your past dedicated use servers (web, db etc) you have to do work on the app to support more servers. See last session “How to sleep without the server-crash-fear (High Availability and High Performance Hosting for Drupal)” @ Support ● Do you have any? ● How about at 3am? ● On Christmas day Drupal Developer Days – Barcelona June 16th 2012 ALEX McFADYEN | alex@demotix.com | @a_c_m
  • 12. Power : Why VPSs don't @ Bad neighbours & overselling ● Starts out great, then reddit moves in next door. @ Cloud A != Cloud B ● Disks, CPU/Ram/Disk ratio, network speed, location, management systems etc Drupal Developer Days – Barcelona June 16th 2012 ALEX McFADYEN | alex@demotix.com | @a_c_m
  • 13. Power : What to do? @ Benchmarks ● Drupal benchmark? Omega8.cc Room today at 4pm. ● http://cloudharmony.com cpu/ram/disk/web/db Drupal Developer Days – Barcelona June 16th 2012 ALEX McFADYEN | alex@demotix.com | @a_c_m
  • 14. Power : What to do? @ Try before you buy ● Some companies will give you a free week. ● Put as close as you can 1:1 copy of your current site on it and... @ Test, test and test some more ● AB / Siege test your caching system. ● Instead replay your log files with HTTPERF or Jmeter. ● Monitor the results with Munin/Cacti/Newrelic. Drupal Developer Days – Barcelona June 16th 2012 ALEX McFADYEN | alex@demotix.com | @a_c_m
  • 15. Power : Review Why VPS rock Why they don't @ New servers anytime @ Total control @ Scale up and down anytime @ Location @ Short/no contracts @ Slices @ Poor disk IO @ Total control @ More servers, more problems @ Cheap ! @ Support @ Overselling @ Cloud A != Cloud B What to do @ Benchmark @ Try before you buy @ Test, test and test some more Drupal Developer Days – Barcelona June 16th 2012 ALEX McFADYEN | alex@demotix.com | @a_c_m
  • 16. Storage : The problem Storage = /sites/*/files @ Multi web head environment @ Web heads need more space than their slice allows @* LOTS of files in a single dir (10k+) Drupal Developer Days – Barcelona June 16th 2012 ALEX McFADYEN | alex@demotix.com | @a_c_m
  • 17. Storage : The solutions https://www.getpantheon.com/news/inside-pantheon- valhalla-filesystem @ Server with big disk(s) / SAN / EBS + NFS ● Tried, tested, works ● Not very exciting ● Single point of failure ● Depending on your cloud could need a 64GB ram server !! Drupal Developer Days – Barcelona June 16th 2012 ALEX McFADYEN | alex@demotix.com | @a_c_m
  • 18. Storage : The solutions @ API storage + Fuse (Cloudfuse*, s3fs) ● Theoretically unlimited storage ● CDN with little or no extra effort ● A bit bleeding edge / untested @ Gluster FS / Similar ● Impressive solution ● Makes trade-offs drupal doesn't need ● Complicated Drupal Developer Days – Barcelona June 16th 2012 ALEX McFADYEN | alex@demotix.com | @a_c_m
  • 19. Delivery : Do CDNs matter? Dev server in Paris YES http://www.dotcom-monitor.com/WebTools/technical-tools-browser-test.aspx Drupal Developer Days – Barcelona June 16th 2012 ALEX McFADYEN | alex@demotix.com | @a_c_m
  • 20. Delivery : Types of CDN http://wimleers.com/article/key-properties-of-a-cdn @ Push (CloudFiles, S3 etc) ● No redundant traffic ● Complex set up @ Pull (lots) ● Very easy to set up ● Redundant traffic @ DNS (Cloudflare/incapsula) ● Takes over your DNS ● Does more than “just” CDN ● We have not tested Drupal Developer Days – Barcelona June 16th 2012 ALEX McFADYEN | alex@demotix.com | @a_c_m
  • 21. Conclusions @ The Cloud isn't a magic bullet @ The best benchmark is your own app, with replayed traffic. @ Cloud providers differ a LOT @ Storage can be complicated @ CDNs can give you an easy big win Drupal Developer Days – Barcelona June 16th 2012 ALEX McFADYEN | alex@demotix.com | @a_c_m
  • 22. What did we do? @ Power : Cloud, Yes … but still in testing ● Using Dediserve.com https://billing.dediserve.com/?affid=148 ● Still re-tuning web heads PHP-FPM vs mod_php. ● Hopefully live next week! @ Storage : NFS ● Simple, tried and tested. ● Using a NFS mount used by all web heads. @ CDN : Yes! CDN pull. ● Easy win ! Very easy to set up. ● Dediserve's CDN. ● Also using CDN module to spread assets over several domains (improves front end performance) Drupal Developer Days – Barcelona June 16th 2012 ALEX McFADYEN | alex@demotix.com | @a_c_m
  • 23. * Lots of files / * Cloud fuse @ Lots of files ... Close to 1M files in a single directory ● Wrote custom drupal 6 module to fix ● As part of the file save hooks, it moved the file to a folder structure based on the filename. ● /sites/default/files/<new_folder>/images/123.jpg ● On drupal.org, but alpha @ Cloudfuse + CDN + Lots of files ● Working proof of concept ● Uses Rackspace cloud files for both storage and CDN ● Requires pre-generation of imagecache ● Not published … yet. Drupal Developer Days – Barcelona June 16th 2012 ALEX McFADYEN | alex@demotix.com | @a_c_m
  • 24. Thank you Questions? Alex McFadyen, CTO drupal.org : a_c_m || drupal.org/user/195063 email : alex@demotix.com twitter : @a_c_m