SlideShare une entreprise Scribd logo
1  sur  199
Télécharger pour lire hors ligne
Enterprise Hosting
                                for Ruby on Rails




                                       Julian Fischer
                                fischer@enterprise-rails.de
                              http://www.enterprise-rails.de
Samstag, 15. Oktober 11
Introduction



Samstag, 15. Oktober 11
Introduction
                            About me



Samstag, 15. Oktober 11
About me
                          Julian Fischer
                          ‣Twitter: http://www.twitter.com/railshoster
                          ‣E-Mail: fischer@enterprise-rails.de




Samstag, 15. Oktober 11
About me
                          Julian Fischer
                          ‣Twitter: http://www.twitter.com/railshoster
                          ‣E-Mail: fischer@enterprise-rails.de

               ‣ CEO of Avarteq GmbH




Samstag, 15. Oktober 11
About me
                          Julian Fischer
                          ‣Twitter: http://www.twitter.com/railshoster
                          ‣E-Mail: fischer@enterprise-rails.de

               ‣ CEO of Avarteq GmbH
               ‣ Lecturer „Ruby on Rails“ @ HTWdS




Samstag, 15. Oktober 11
About me
                          Julian Fischer
                          ‣Twitter: http://www.twitter.com/railshoster
                          ‣E-Mail: fischer@enterprise-rails.de

               ‣ CEO of Avarteq GmbH
               ‣ Lecturer „Ruby on Rails“ @ HTWdS
               ‣ Ruby und Ruby on Rails programmer



Samstag, 15. Oktober 11
About me
                          Julian Fischer
                          ‣Twitter: http://www.twitter.com/railshoster
                          ‣E-Mail: fischer@enterprise-rails.de

               ‣ CEO of Avarteq GmbH
               ‣ Lecturer „Ruby on Rails“ @ HTWdS
               ‣ Ruby und Ruby on Rails programmer
               ‣ Entperise-Rails.de - Head of Hosting

Samstag, 15. Oktober 11
Introduction
                          About Avarteq GmbH



Samstag, 15. Oktober 11
About Avarteq GmbH




                              @railshoster

Samstag, 15. Oktober 11
About Avarteq GmbH


                ‣ Founded in Nov. 2008
                  from two existing companies.




                                      @railshoster

Samstag, 15. Oktober 11
About Avarteq GmbH


                ‣ Founded in Nov. 2008
                  from two existing companies.



                ‣ Involvment of Key-Systems GmbH
                          manages ~2,5 * 10^6 domains for customers of 200+ countries.




                                                     @railshoster

Samstag, 15. Oktober 11
About Avarteq GmbH


                ‣ Founded in Nov. 2008
                  from two existing companies.



                ‣ Involvment of Key-Systems GmbH
                          manages ~2,5 * 10^6 domains for customers of 200+ countries.



                ‣ Team size: ~20 people
                          >16 full-time




                                                     @railshoster

Samstag, 15. Oktober 11
Introduction
                          Assumptions for this talk



Samstag, 15. Oktober 11
Assumptions for this talk




                                @railshoster

Samstag, 15. Oktober 11
Assumptions for this talk


                ‣ Ruby and Ruby on Rails architectures to be hosted.




                                             @railshoster

Samstag, 15. Oktober 11
Assumptions for this talk


                ‣ Ruby and Ruby on Rails architectures to be hosted.
                ‣ Hosting basics you know what a LB is and what it does.




                                             @railshoster

Samstag, 15. Oktober 11
Assumptions for this talk


                ‣ Ruby and Ruby on Rails architectures to be hosted.
                ‣ Hosting basics you know what a LB is and what it does.
                ‣ You aresuitable hosting solution a methodology toto see
                  determine a
                              interested in
                                                   for you. And you don‘t need
                          Ruby code in a presentation to like it :-)




                                                         @railshoster

Samstag, 15. Oktober 11
Assumptions for this talk


                ‣ Ruby and Ruby on Rails architectures to be hosted.
                ‣ Hosting basics you know what a LB is and what it does.
                ‣ You aresuitable hosting solution a methodology toto see
                  determine a
                              interested in
                                                   for you. And you don‘t need
                          Ruby code in a presentation to like it :-)




                                                         @railshoster

Samstag, 15. Oktober 11
Hosting today
                          and in the near future



Samstag, 15. Oktober 11
The future of hosting
                          can be found in the cloud.




Samstag, 15. Oktober 11
But not on EC2.




Samstag, 15. Oktober 11
US Cloud providers do to hosting
       what Starbucks did to coffee.

                          From $1 with free refill to ...


Samstag, 15. Oktober 11
More and more
                          free or achievable cloud
                            technologies emerge.



Samstag, 15. Oktober 11
Hosting today and in the future




                                @railshoster

Samstag, 15. Oktober 11
Hosting today and in the future


                ‣ Eucalyptus




                                @railshoster

Samstag, 15. Oktober 11
Hosting today and in the future


                ‣ Eucalyptus
                ‣ OpenStack




                                @railshoster

Samstag, 15. Oktober 11
Hosting today and in the future


                ‣ Eucalyptus
                ‣ OpenStack
                ‣ vCloud




                                @railshoster

Samstag, 15. Oktober 11
Hosting today and in the future


                ‣ Eucalyptus
                ‣ OpenStack
                ‣ vCloud
                ‣ ...



                                @railshoster

Samstag, 15. Oktober 11
Many „smaller“ clouds
                            will become available
                          within the next few years.



Samstag, 15. Oktober 11
Additional abstraction layers
                    will be established.
                            Helping to stay independent
                          or even mash up existing clouds.


Samstag, 15. Oktober 11
Abstraction via services




Samstag, 15. Oktober 11
„Start an instance on an internal cloud, then with the same code
               start another on EC2 or Rackspace.

     Deltacloud protects your apps from cloud API changes and
    incompatibilities, so you can concentrate on managing cloud
                    instances the way you want.“
                          http://incubator.apache.org/deltacloud/
Samstag, 15. Oktober 11
Client side abstraction




Samstag, 15. Oktober 11
Fog

                     „Collections provide a
           simplified interface, making clouds easier
              to work with and switch between.“




                          https://github.com/geemus/fog
Samstag, 15. Oktober 11
So be prepared for the cloud.
                 Design your app scalable.




Samstag, 15. Oktober 11
BUT




Samstag, 15. Oktober 11
For now
                          Consider your options.
                             Pick carefully.


Samstag, 15. Oktober 11
Making a decision requires
                      options to choose from.




Samstag, 15. Oktober 11
Know your options!




Samstag, 15. Oktober 11
3 Hosting Scenarios
                                Overview



Samstag, 15. Oktober 11
3 Hosting Scenarios




                                @railshoster

Samstag, 15. Oktober 11
3 Hosting Scenarios


                ‣ Cloud Hosting




                                  @railshoster

Samstag, 15. Oktober 11
3 Hosting Scenarios


                ‣ Cloud Hosting
                ‣ Commodity Hardware Cluster




                                  @railshoster

Samstag, 15. Oktober 11
3 Hosting Scenarios


                ‣ Cloud Hosting
                ‣ Commodity Hardware Cluster
                ‣ High End Hardware Cluster




                                  @railshoster

Samstag, 15. Oktober 11
3 Hosting Scenarios
                              Cloud Hosting



Samstag, 15. Oktober 11
Cloud Hosting
                           Urban Legends



Samstag, 15. Oktober 11
Urban Legends




                                 @railshoster

Samstag, 15. Oktober 11
Urban Legends


                ‣ Cloud technologies are wonderful




                                 @railshoster

Samstag, 15. Oktober 11
Urban Legends


                ‣ Cloud technologies are wonderful
                ‣ People become euphoric




                                 @railshoster

Samstag, 15. Oktober 11
Urban Legends


                ‣ Cloud technologies are wonderful
                ‣ People become euphoric
                ‣ Marketing people oversimplify
                          advantages




                                       @railshoster

Samstag, 15. Oktober 11
Urban Legends


                ‣ Cloud technologies are wonderful
                ‣ People become euphoric
                ‣ Marketing people oversimplify
                          advantages

                ‣ People want do believe


                                       @railshoster

Samstag, 15. Oktober 11
#1
                             Go to the cloud
                          and get rid of sys ops.



Samstag, 15. Oktober 11
Urban Legends




                                 @railshoster

Samstag, 15. Oktober 11
Urban Legends


                ‣ The hole decision process should be
                          accompanied by an experienced sys op.
                          You don‘t need plenty of workhours here but you definitely want to have
                          advice here and there.




                                                      @railshoster

Samstag, 15. Oktober 11
Urban Legends


                ‣ The hole decision process should be
                          accompanied by an experienced sys op.
                          You don‘t need plenty of workhours here but you definitely want to have
                          advice here and there.



                ‣ You‘re still running will needservices. Depending
                  on how custom your system is you
                                                   unix
                                                        sys ops helping to configure
                          your services accordingly. Template configs from the community might
                          not fit your scenario. How much memory do you got? You have to adapt
                          cache sizes, number of Passenger processes to be spawned, ...




                                                      @railshoster

Samstag, 15. Oktober 11
Urban Legends




                                 @railshoster

Samstag, 15. Oktober 11
Urban Legends


                ‣ Whoconfigurationyour chef recipies? Who writes your
                  service
                          writes
                                  templates? Who tweaks your database?




                                       @railshoster

Samstag, 15. Oktober 11
Urban Legends


                ‣ Whoconfigurationyour chef recipies? Who writes your
                  service
                          writes
                                  templates? Who tweaks your database?



                ‣ Everyactuallya mistery failure? sporadic networkbe
                  there but
                            got
                                is. Library dependency issues,
                                                               Which shouldn‘t

                          problems, spontenously failing processes, ...




                                                       @railshoster

Samstag, 15. Oktober 11
Urban Legends


                ‣ Whoconfigurationyour chef recipies? Who writes your
                  service
                          writes
                                  templates? Who tweaks your database?



                ‣ Everyactuallya mistery failure? sporadic networkbe
                  there but
                            got
                                is. Library dependency issues,
                                                               Which shouldn‘t

                          problems, spontenously failing processes, ...



                ‣ Who recovers production databases. failures? Taking
                  your backups and refills
                                           from serious




                                                       @railshoster

Samstag, 15. Oktober 11
Who gets up at night?




Samstag, 15. Oktober 11
Not having a sys op means ...




Samstag, 15. Oktober 11
Urban Legends




                                 @railshoster

Samstag, 15. Oktober 11
Urban Legends


                ‣ Makingaa mistakes potentially causing aroles have different
                  so hard to be sys op and programmer at once. These
                                                                     lot of trouble. It‘s

                          perspectives, by nature.




                                                     @railshoster

Samstag, 15. Oktober 11
Urban Legends


                ‣ Makingaa mistakes potentially causing aroles have different
                  so hard to be sys op and programmer at once. These
                                                                     lot of trouble. It‘s

                          perspectives, by nature.



                ‣ Accpeting drawbacks by not focusing on service
                  configurations, ...




                                                     @railshoster

Samstag, 15. Oktober 11
Urban Legends


                ‣ Makingaa mistakes potentially causing aroles have different
                  so hard to be sys op and programmer at once. These
                                                                     lot of trouble. It‘s

                          perspectives, by nature.



                ‣ Accpeting drawbacks by not focusing on service
                  configurations, ...



                ‣ Havingsys op tasks can be considered a sys op. opsifsbd. looks
                  performing
                             people acting like sys
                                                                 Even he/she
                          like a programmer :-)




                                                     @railshoster

Samstag, 15. Oktober 11
#2
                         Go to the cloud and
                      have no outages any more.



Samstag, 15. Oktober 11
Urban Legends




                                 @railshoster

Samstag, 15. Oktober 11
Urban Legends


                ‣ Data center issues can‘t caused by switches, routes,
                  experience, there will be network outages
                                                            be avoided From
                          broken wires, whatever. http://rh.gd/nMNSUK as an example.




                                                    @railshoster

Samstag, 15. Oktober 11
Urban Legends


                ‣ Data center issues can‘t caused by switches, routes,
                  experience, there will be network outages
                                                            be avoided From
                          broken wires, whatever. http://rh.gd/nMNSUK as an example.



                ‣ Self healing can‘t recover it‘s a good issue it does
                  Resetting your computer often helps. Hence
                                                             every
                                                                   guess. But
                          not help all the time. Do you really want to distract your programmers to
                          dig through unix service logs? Ineffective.




                                                       @railshoster

Samstag, 15. Oktober 11
Urban Legends


                ‣ Data center issues can‘t caused by switches, routes,
                  experience, there will be network outages
                                                            be avoided From
                          broken wires, whatever. http://rh.gd/nMNSUK as an example.



                ‣ Self healing can‘t recover it‘s a good issue it does
                  Resetting your computer often helps. Hence
                                                             every
                                                                   guess. But
                          not help all the time. Do you really want to distract your programmers to
                          dig through unix service logs? Ineffective.



                ‣ Autoscaling won‘t keepautoscale settings eitherup
                  unless you set it up correctly AND your
                                                          your service
                                                                       match
                          the situation or be very aggressive (wasting money). Do you really want
                          to scale out on a DDoS attack?




                                                       @railshoster

Samstag, 15. Oktober 11
#3
                          Go to the cloud and
                             save money.



Samstag, 15. Oktober 11
Urban Legends




                                 @railshoster

Samstag, 15. Oktober 11
Urban Legends


                ‣ Not true for every case. You have to do the math.




                                            @railshoster

Samstag, 15. Oktober 11
Urban Legends


                ‣ Not true for every case. You have to do the math.
                ‣ Actually it‘s pretty expensive.




                                            @railshoster

Samstag, 15. Oktober 11
#4
                          Go to the cloud
                             it‘s safe.



Samstag, 15. Oktober 11
Urban Legends




                                 @railshoster

Samstag, 15. Oktober 11
Urban Legends


                ‣ It‘s simply not There are serious legal issues being discussed.




                                            @railshoster

Samstag, 15. Oktober 11
Urban Legends


                ‣ It‘s simply not There are serious legal issues being discussed.
                ‣ Infrastructure non-transparency Dobe sure about
                  understand the infrastructure topology? If not how can you
                                                                             you really

                          your data being kept private?




                                                          @railshoster

Samstag, 15. Oktober 11
Again.
                 Cloud is a future technology.
                     But don‘t be blind.



Samstag, 15. Oktober 11
Cloud Hosting
                               Pro



Samstag, 15. Oktober 11
Cloud Hosting




                                 @railshoster

Samstag, 15. Oktober 11
Cloud Hosting


                ‣ Maximal flexibility with Auto Scaling




                                       @railshoster

Samstag, 15. Oktober 11
Cloud Hosting


                ‣ Maximal flexibility with Auto Scaling
                      ‣ Grow & Shrink start and stop (app/server) instances. Shut
                          down what you don‘t need and pay per use.




                                                  @railshoster

Samstag, 15. Oktober 11
Cloud Hosting


                ‣ Maximal flexibility with Auto Scaling
                      ‣ Grow & Shrink start and stop (app/server) instances. Shut
                          down what you don‘t need and pay per use.



                ‣ Robustness with auto healing.




                                                  @railshoster

Samstag, 15. Oktober 11
Cloud Hosting


                ‣ Maximal flexibility with Auto Scaling
                      ‣ Grow & Shrink start and stop (app/server) instances. Shut
                          down what you don‘t need and pay per use.



                ‣ Robustness with auto healing.
                      ‣ Kill and restart misbehaving components.




                                                  @railshoster

Samstag, 15. Oktober 11
Cloud Hosting
                              Contra



Samstag, 15. Oktober 11
Cloud Hosting




                                 @railshoster

Samstag, 15. Oktober 11
Cloud Hosting


                ‣ Scaletocarefullyresulting into a FDoS - tofinancial denial of
                  requests DDoS attack
                                       or do you really want scale out to serve
                                                            a
                          service by spending all your money? Setup your scaleout rules carefully.




                                                       @railshoster

Samstag, 15. Oktober 11
Cloud Hosting


                ‣ Scaletocarefullyresulting into a FDoS - tofinancial denial of
                  requests DDoS attack
                                       or do you really want scale out to serve
                                                            a
                          service by spending all your money? Setup your scaleout rules carefully.



                ‣ Autohealing withinNothing replaces anoff - switch onsysop!
                  always a suitable repair strategy.
                                                     limits switch
                                                                   experienced
                                                                               it not

                          It‘s just reducing his workload taking away no brainer tasks.




                                                       @railshoster

Samstag, 15. Oktober 11
Cloud Hosting




                                 @railshoster

Samstag, 15. Oktober 11
Cloud Hosting


                ‣ Causes legal issues for EU companies putting data to a US
                  providers. http://rh.gd/p6l26y (german). In certain scenarios
                          virtualizatin is completely forbidden (e.g. certain levels of pci
                          compliance).




                                                         @railshoster

Samstag, 15. Oktober 11
Cloud Hosting


                ‣ Causes legal issues for EU companies putting data to a US
                  providers. http://rh.gd/p6l26y (german). In certain scenarios
                          virtualizatin is completely forbidden (e.g. certain levels of pci
                          compliance).



                ‣ Unreasonable expensive compared Depending on your
                  hardware. 4 - 20 times more for similar performance.
                                                                       to physical

                          cloud provider and instance/resource type.




                                                         @railshoster

Samstag, 15. Oktober 11
Cloud Hosting


                ‣ Causes legal issues for EU companies putting data to a US
                  providers. http://rh.gd/p6l26y (german). In certain scenarios
                          virtualizatin is completely forbidden (e.g. certain levels of pci
                          compliance).



                ‣ Unreasonable expensive compared Depending on your
                  hardware. 4 - 20 times more for similar performance.
                                                                       to physical

                          cloud provider and instance/resource type.


                ‣ You are a number by being one in a million customers. Don‘t
                          expect reasonable help when needed.




                                                         @railshoster

Samstag, 15. Oktober 11
Did you know?



Samstag, 15. Oktober 11
Samstag, 15. Oktober 11
3 Hosting Scenarios
                           Commodity Hardware



Samstag, 15. Oktober 11
Commodity Hardware
                          Pro



Samstag, 15. Oktober 11
Commodity Hardware




                             @railshoster

Samstag, 15. Oktober 11
Commodity Hardware

                ‣ „Cheap“ hardware in huge datacenters.




                                        @railshoster

Samstag, 15. Oktober 11
Commodity Hardware

                ‣ „Cheap“ hardware in huge datacenters.
                ‣ Traffic included.




                                        @railshoster

Samstag, 15. Oktober 11
Commodity Hardware

                ‣ „Cheap“ hardware in huge datacenters.
                ‣ Traffic included.
                ‣ Private GBit backnet available. Physically dedicated




                                         @railshoster

Samstag, 15. Oktober 11
Commodity Hardware

                ‣ „Cheap“ hardware in huge datacenters.
                ‣ Traffic included.
                ‣ Private GBit backnet available. Physically dedicated
                ‣ Maximum performance from your budget. Get a E3 Xenion
                          Quad Core 1245, 16 GB ECC RAM, 2*3TB HDD for 69 € / month.




                                                  @railshoster

Samstag, 15. Oktober 11
Commodity Hardware




                             @railshoster

Samstag, 15. Oktober 11
Commodity Hardware

                ‣ Why would you scale out if you already have
                          plenty of workforce for your money? That‘s a simple
                          thought. A very good option especially if you know your load and grow
                          rate.




                                                      @railshoster

Samstag, 15. Oktober 11
Commodity Hardware

                ‣ Why would you scale out if you already have
                          plenty of workforce for your money? That‘s a simple
                          thought. A very good option especially if you know your load and grow
                          rate.


                ‣ No legal issues for EU companies.




                                                      @railshoster

Samstag, 15. Oktober 11
Commodity Hardware
                          Contra



Samstag, 15. Oktober 11
Commodity Hardware




                             @railshoster

Samstag, 15. Oktober 11
Commodity Hardware

                ‣ You are a number by being one in a couple of thousand
                          customers. Expect response and repair times within 30 min to 24h.




                                                      @railshoster

Samstag, 15. Oktober 11
Commodity Hardware

                ‣ You are a number by being one in a couple of thousand
                          customers. Expect response and repair times within 30 min to 24h.


                ‣ Scaling less flexible. Server relocation might be necessary.
                          Server setup fees make shrink operations expensive.




                                                      @railshoster

Samstag, 15. Oktober 11
Commodity Hardware

                ‣ You are a number by being one in a couple of thousand
                          customers. Expect response and repair times within 30 min to 24h.


                ‣ Scaling less flexible. Server relocation might be necessary.
                          Server setup fees make shrink operations expensive.


                ‣ Hardware is not high end. Smart system design needed to
                          compensate eventual hardware failures.




                                                      @railshoster

Samstag, 15. Oktober 11
3 Hosting Scenarios
                            High End Hardware



Samstag, 15. Oktober 11
High End Hardware
                             Pro



Samstag, 15. Oktober 11
High End Hardware




                              @railshoster

Samstag, 15. Oktober 11
High End Hardware

                ‣ High end hardware in well staffed datacenters. Close contact to
                          data center technicians. Quick responses. Fast failure recovery.




                                                       @railshoster

Samstag, 15. Oktober 11
High End Hardware

                ‣ High end hardware in well staffed datacenters. Close contact to
                          data center technicians. Quick responses. Fast failure recovery.


                ‣ Very realiable hardware. Hardware RAID, hot swappable
                          hdds, redundant power supplies, ...




                                                       @railshoster

Samstag, 15. Oktober 11
High End Hardware

                ‣ High end hardware in well staffed datacenters. Close contact to
                          data center technicians. Quick responses. Fast failure recovery.


                ‣ Very realiable hardware. Hardware RAID, hot swappable
                          hdds, redundant power supplies, ...


                ‣ Private GBit backnet available. Physically dedicated




                                                       @railshoster

Samstag, 15. Oktober 11
High End Hardware

                ‣ High end hardware in well staffed datacenters. Close contact to
                          data center technicians. Quick responses. Fast failure recovery.


                ‣ Very realiable hardware. Hardware RAID, hot swappable
                          hdds, redundant power supplies, ...


                ‣ Private GBit backnet available. Physically dedicated
                ‣ Maximum performance. Get multi cpu servers with 2 x 6
                          XENON Cores, up to 192 GB RAM, SAS and SDD hdds, ...




                                                       @railshoster

Samstag, 15. Oktober 11
High End Hardware




                              @railshoster

Samstag, 15. Oktober 11
High End Hardware

                ‣ Custom equipped servers can be built specific for their
                          individual purposes. A server with fast cpus and SSD disks will boost
                          your DB service, for example.




                                                       @railshoster

Samstag, 15. Oktober 11
High End Hardware

                ‣ Custom equipped servers can be built specific for their
                          individual purposes. A server with fast cpus and SSD disks will boost
                          your DB service, for example.


                ‣ Vertical scale outs Servers can be upgraded by adding more
                          memory, better CPUs, more hdds, ...




                                                       @railshoster

Samstag, 15. Oktober 11
High End Hardware

                ‣ Custom equipped servers can be built specific for their
                          individual purposes. A server with fast cpus and SSD disks will boost
                          your DB service, for example.


                ‣ Vertical scale outs Servers can be upgraded by adding more
                          memory, better CPUs, more hdds, ...


                ‣ Hybdrid solutions with private clouds. If there‘s a
                          private cloud co-located in the datacenter you can have physical
                          machines to encounter ground loads and use a cloud workforce to serve
                          peaks.




                                                       @railshoster

Samstag, 15. Oktober 11
High End Hardware




                              @railshoster

Samstag, 15. Oktober 11
High End Hardware

                ‣ Scale outs New servers can be added. High end data centers usually
                          provide advanced switching technologies with vlan capabilities.




                                                       @railshoster

Samstag, 15. Oktober 11
High End Hardware

                ‣ Scale outs New servers can be added. High end data centers usually
                          provide advanced switching technologies with vlan capabilities.


                ‣ No legal issues for EU companies.




                                                       @railshoster

Samstag, 15. Oktober 11
High End Hardware
                            Contra



Samstag, 15. Oktober 11
High End Hardware




                              @railshoster

Samstag, 15. Oktober 11
High End Hardware

                ‣ More expensive than cheap hw Still much cheaper than
                          cloud resources for a comparable performance.




                                                     @railshoster

Samstag, 15. Oktober 11
High End Hardware

                ‣ More expensive than cheap hw Still much cheaper than
                          cloud resources for a comparable performance.


                ‣ Contract durations Due to financial write offs contract lifetimes
                          are usually longer than for commodity servers or cloud resources.




                                                       @railshoster

Samstag, 15. Oktober 11
Proceed systematically.

                          Think. Evaluate. Think again.


Samstag, 15. Oktober 11
How to build a hosting
                          An exemplary process



Samstag, 15. Oktober 11
An exemplary process
                          Requirements Analysis



Samstag, 15. Oktober 11
Requirements Analysis




                               @railshoster

Samstag, 15. Oktober 11
Requirements Analysis


                ‣ Budget Calculate roughly 2.5 to 5% of your overall project costs.




                                              @railshoster

Samstag, 15. Oktober 11
Requirements Analysis


                ‣ Budget Calculate roughly 2.5 to 5% of your overall project costs.
                ‣ Expected Load




                                              @railshoster

Samstag, 15. Oktober 11
Requirements Analysis


                ‣ Budget Calculate roughly 2.5 to 5% of your overall project costs.
                ‣ Expected Load
                      ‣ Ground load Present on a daily basis.




                                              @railshoster

Samstag, 15. Oktober 11
Requirements Analysis


                ‣ Budget Calculate roughly 2.5 to 5% of your overall project costs.
                ‣ Expected Load
                      ‣ Ground load Present on a daily basis.

                      ‣ Peak load Triggered by (external) events.




                                               @railshoster

Samstag, 15. Oktober 11
Requirements Analysis




                               @railshoster

Samstag, 15. Oktober 11
Requirements Analysis


                ‣ Desired Response Time How many ms to serve.




                                     @railshoster

Samstag, 15. Oktober 11
Requirements Analysis


                ‣ Desired Response Time How many ms to serve.
                ‣ Desired Availability Uptime / Downtime ratio.




                                       @railshoster

Samstag, 15. Oktober 11
Requirements Analysis


                ‣ Desired Response Time How many ms to serve.
                ‣ Desired Availability Uptime / Downtime ratio.
                ‣ Geographic Targeting Where are your users located?




                                       @railshoster

Samstag, 15. Oktober 11
Requirements Analysis


                ‣ Desired Response Time How many ms to serve.
                ‣ Desired Availability Uptime / Downtime ratio.
                ‣ Geographic Targeting Where are your users located?
                ‣ Estimated Growth 1 month, 6 month, 12 months.



                                       @railshoster

Samstag, 15. Oktober 11
Requirements Analysis




                               @railshoster

Samstag, 15. Oktober 11
Requirements Analysis


                ‣ Legal constraints Be aware of privacy law issues.




                                         @railshoster

Samstag, 15. Oktober 11
Requirements Analysis


                ‣ Legal constraints Be aware of privacy law issues.
                ‣ Technical constraints e.g. ugly Windows legacy stuff.




                                         @railshoster

Samstag, 15. Oktober 11
Requirements Analysis


                ‣ Legal constraints Be aware of privacy law issues.
                ‣ Technical constraints e.g. ugly Windows legacy stuff.
                ‣ Competence Know how to run an app in production?




                                         @railshoster

Samstag, 15. Oktober 11
An exemplary process
                Identify System Components



Samstag, 15. Oktober 11
Identify System Components




                               @railshoster

Samstag, 15. Oktober 11
Identify System Components


                ‣ Which components store, replicating rdbms, ... server,
                  background processing, key/value
                                                   are present? search




                                        @railshoster

Samstag, 15. Oktober 11
Identify System Components


                ‣ Which components store, replicating rdbms, ... server,
                  background processing, key/value
                                                   are present? search


                ‣ Eliminate SPOFs Try to have everything crucial twice+.




                                         @railshoster

Samstag, 15. Oktober 11
An exemplary process
                          Choose Platform



Samstag, 15. Oktober 11
Choose Platform




                               @railshoster

Samstag, 15. Oktober 11
Choose Platform


                ‣ Which platform matches your
                          requirements best? Shrink/Scale, cheap workforce or rock
                          solid?




                                                @railshoster

Samstag, 15. Oktober 11
Choose Platform


                ‣ Which platform matches your
                          requirements best? Shrink/Scale, cheap workforce or rock
                          solid?



                ‣ (Really) needIfresources on shrink, cloud providersit
                  just for the case that ... you need to grow and
                                                                  demand? Or is
                          will to the trick.




                                                @railshoster

Samstag, 15. Oktober 11
Choose Platform


                ‣ Which platform matches your
                          requirements best? Shrink/Scale, cheap workforce or rock
                          solid?



                ‣ (Really) needIfresources on shrink, cloud providersit
                  just for the case that ... you need to grow and
                                                                  demand? Or is
                          will to the trick.



                ‣ Want to have the maximum performance
                          from your budget? Then hardware might be your choice.



                                                @railshoster

Samstag, 15. Oktober 11
Choose Platform




                               @railshoster

Samstag, 15. Oktober 11
Choose Platform


                ‣ Geographic location Where are your users.




                                      @railshoster

Samstag, 15. Oktober 11
Choose Platform


                ‣ Geographic location Where are your users.
                ‣ You andyou have access to technical staff? you a number or a
                  customer? Do
                               the supply chain Are




                                            @railshoster

Samstag, 15. Oktober 11
Choose Platform


                ‣ Geographic location Where are your users.
                ‣ You andyou have access to technical staff? you a number or a
                  customer? Do
                               the supply chain Are


                ‣ Quality of Service What are the response times? How fast do
                  they repair?




                                            @railshoster

Samstag, 15. Oktober 11
An exemplary process
                          Initial Dimension



Samstag, 15. Oktober 11
Initial Dimension




                                @railshoster

Samstag, 15. Oktober 11
Initial Dimension


                ‣ Know yourapp‘s resource consumption. Atresponse time you‘ll
                  need to know your
                                    app To match your desired
                                                              least roughly.




                                           @railshoster

Samstag, 15. Oktober 11
Initial Dimension


                ‣ Know yourapp‘s resource consumption. Atresponse time you‘ll
                  need to know your
                                    app To match your desired
                                                              least roughly.



                ‣ Create acomponent. The smaller your building blockswhere to run
                  which system
                               system design draft. Decide
                                                                      are the
                          better.




                                            @railshoster

Samstag, 15. Oktober 11
Initial Dimension


                ‣ Know yourapp‘s resource consumption. Atresponse time you‘ll
                  need to know your
                                    app To match your desired
                                                              least roughly.



                ‣ Create acomponent. The smaller your building blockswhere to run
                  which system
                               system design draft. Decide
                                                                      are the
                          better.



                ‣ Estimatesettings #you‘re on a cloud plattform. And decide
                  about scaleout
                                 the servers you need.
                                    if




                                            @railshoster

Samstag, 15. Oktober 11
Initial Dimension


                ‣ Know yourapp‘s resource consumption. Atresponse time you‘ll
                  need to know your
                                    app To match your desired
                                                              least roughly.



                ‣ Create acomponent. The smaller your building blockswhere to run
                  which system
                               system design draft. Decide
                                                                      are the
                          better.



                ‣ Estimatesettings #you‘re on a cloud plattform. And decide
                  about scaleout
                                 the servers you need.
                                    if



                ‣ Order servers or whatever you rely on.

                                            @railshoster

Samstag, 15. Oktober 11
An exemplary process
                          System Design



Samstag, 15. Oktober 11
System Design




                                 @railshoster

Samstag, 15. Oktober 11
System Design


                ‣ Detailed System Design How what where to runtowhat.
                  How to use what resource when and how.
                                                         Describes
                                                                   to connects what.




                                             @railshoster

Samstag, 15. Oktober 11
System Design


                ‣ Detailed System Design How what where to runtowhat.
                  How to use what resource when and how.
                                                         Describes
                                                                   to connects what.



                ‣ Monitoring plan. Monitor everything need appSo planon.
                  This will give you diagnosis information when you
                                                                    your
                                                                         it.
                                                                             relies
                                                                                    what
                          to monitor how.




                                               @railshoster

Samstag, 15. Oktober 11
System Design


                ‣ Detailed System Design How what where to runtowhat.
                  How to use what resource when and how.
                                                         Describes
                                                                   to connects what.



                ‣ Monitoring plan. Monitor everything need appSo planon.
                  This will give you diagnosis information when you
                                                                    your
                                                                         it.
                                                                             relies
                                                                                    what
                          to monitor how.



                ‣ Backup plan. Data can bedata to beprepared and think about
                  where your app produces valuable
                                                   lost. Be
                                                            backuped.




                                               @railshoster

Samstag, 15. Oktober 11
An exemplary process
                          Installation(automation)



Samstag, 15. Oktober 11
Installation(automation)




                                @railshoster

Samstag, 15. Oktober 11
Installation(automation)


                ‣ Get a bluprint of your hosting Use Chef.




                                    @railshoster

Samstag, 15. Oktober 11
Installation(automation)


                ‣ Get a bluprint of your hosting Use Chef.
                ‣ Describe how to setup every system
                          component. Keep your recipies small and simple.




                                                 @railshoster

Samstag, 15. Oktober 11
Installation(automation)


                ‣ Get a bluprint of your hosting Use Chef.
                ‣ Describe how to setup every system
                          component. Keep your recipies small and simple.

                ‣ Be ready for a deployment.run cap deploy afterwards.
                  automated your installation process if you can
                                                                 You have successfully




                                                 @railshoster

Samstag, 15. Oktober 11
An exemplary process
                          Strengthen your system.



Samstag, 15. Oktober 11
Strengthen your system




                               @railshoster

Samstag, 15. Oktober 11
Strengthen your system


                ‣ Yourmonitor such as kickstart, monit or god to keep them alive. a
                  process
                          app need dependent processes? Use
                          Double check with nagios for a system health status.




                                                       @railshoster

Samstag, 15. Oktober 11
Strengthen your system


                ‣ Yourmonitor such as kickstart, monit or god to keep them alive. a
                  process
                          app need dependent processes? Use
                          Double check with nagios for a system health status.



                ‣ Makeget back toserversa black out automatically.Your system
                  needs to
                           your
                                 normal on
                                           reboot proof.




                                                       @railshoster

Samstag, 15. Oktober 11
Strengthen your system


                ‣ Yourmonitor such as kickstart, monit or god to keep them alive. a
                  process
                          app need dependent processes? Use
                          Double check with nagios for a system health status.



                ‣ Makeget back toserversa black out automatically.Your system
                  needs to
                           your
                                 normal on
                                           reboot proof.


                ‣ Desaster and Recovery planning. What is the
                  most likely error event? What is the impact? How to fix it?




                                                       @railshoster

Samstag, 15. Oktober 11
Strengthen your system


                ‣ Yourmonitor such as kickstart, monit or god to keep them alive. a
                  process
                          app need dependent processes? Use
                          Double check with nagios for a system health status.



                ‣ Makeget back toserversa black out automatically.Your system
                  needs to
                           your
                                 normal on
                                           reboot proof.


                ‣ Desaster and Recovery planning. What is the
                  most likely error event? What is the impact? How to fix it?



                ‣ Simulate disasters. Test your recovery plans.

                                                       @railshoster

Samstag, 15. Oktober 11
An exemplary process
                          Deployment



Samstag, 15. Oktober 11
Installation(automation)




                                @railshoster

Samstag, 15. Oktober 11
Installation(automation)


                ‣ Use a deployment tool. Not really worth mentioning
                  but just to be complete. Do I have to mention capistrano?




                                          @railshoster

Samstag, 15. Oktober 11
Installation(automation)


                ‣ Use a deployment tool. Not really worth mentioning
                  but just to be complete. Do I have to mention capistrano?



                ‣ Setup Capistrano. CapwhateverShouldn‘t Make more than
                  that for the average case. Automate
                                                      deploy.
                                                              you can.
                                                                       need
                                                                            it foolproof.




                                               @railshoster

Samstag, 15. Oktober 11
An exemplary process
                          Test && Launch



Samstag, 15. Oktober 11
Test && Launch




                                  @railshoster

Samstag, 15. Oktober 11
Test && Launch


                ‣ Test your setup. Perform acceptance tests. Partly covered by
                          your desaster simulations. Also test with your customer, your users, ...




                                                        @railshoster

Samstag, 15. Oktober 11
Test && Launch


                ‣ Test your setup. Perform acceptance tests. Partly covered by
                          your desaster simulations. Also test with your customer, your users, ...



                ‣ Go live! Cover your eyes and pray :-)




                                                        @railshoster

Samstag, 15. Oktober 11
Lessons Learned
                Key Statements to remember



Samstag, 15. Oktober 11
Lessons Learned




                               @railshoster

Samstag, 15. Oktober 11
Lessons Learned


                ‣ Creating a hosting. Should be considered to be a project.
                  Process it systematically.




                                          @railshoster

Samstag, 15. Oktober 11
Lessons Learned


                ‣ Creating a hosting. Should be considered to be a project.
                  Process it systematically.



                ‣ Be aware ofhammer everything you see a ahammer.
                  Because if you got a
                                       people holding
                                                       is nail.




                                          @railshoster

Samstag, 15. Oktober 11
Lessons Learned


                ‣ Creating a hosting. Should be considered to be a project.
                  Process it systematically.



                ‣ Be aware ofhammer everything you see a ahammer.
                  Because if you got a
                                       people holding
                                                       is nail.



                ‣ Make decisions. No decision without choices. Know your
                  options.




                                          @railshoster

Samstag, 15. Oktober 11
Lessons Learned


                ‣ Creating a hosting. Should be considered to be a project.
                  Process it systematically.



                ‣ Be aware ofhammer everything you see a ahammer.
                  Because if you got a
                                       people holding
                                                       is nail.



                ‣ Make decisions. No decision without choices. Know your
                  options.



                ‣ Reduce sysop work. But running an app is a pain and
                  burdon for most developers.




                                          @railshoster

Samstag, 15. Oktober 11
Focus on adding value to your
                        business.




Samstag, 15. Oktober 11
Focus on your app.




Samstag, 15. Oktober 11
Samstag, 15. Oktober 11
Thank you
                                       for your
                                      attention!


                 Headquarter:                Rails Enterprise Hosting:
                 http://www.avarteq.de            http://www.enterprise-
                                                               rails.com
                 Blog:
                 http://ww.treibstofff.de               Rails Hosting:
                                              http://www.railshoster.com
Samstag, 15. Oktober 11

Contenu connexe

Similaire à Enterprise rails hosting 3 ways to scale - 2011-10

我为何使用
我为何使用我为何使用
我为何使用Gump Law
 
Enterprise Hosting
Enterprise HostingEnterprise Hosting
Enterprise HostingAvarteq
 
2nd Annual Start-up Launches with Dr. Werner Vogels (SPOT101) | AWS re:Invent...
2nd Annual Start-up Launches with Dr. Werner Vogels (SPOT101) | AWS re:Invent...2nd Annual Start-up Launches with Dr. Werner Vogels (SPOT101) | AWS re:Invent...
2nd Annual Start-up Launches with Dr. Werner Vogels (SPOT101) | AWS re:Invent...Amazon Web Services
 
Ruby + Rails
Ruby + RailsRuby + Rails
Ruby + Railsbetabeers
 
Vinted life embetterment
Vinted life embettermentVinted life embetterment
Vinted life embettermentAgile Lietuva
 
Diving Into the New AWS SDK for Ruby (TLS305) | AWS re:Invent 2013
Diving Into the New AWS SDK for Ruby (TLS305) | AWS re:Invent 2013Diving Into the New AWS SDK for Ruby (TLS305) | AWS re:Invent 2013
Diving Into the New AWS SDK for Ruby (TLS305) | AWS re:Invent 2013Amazon Web Services
 
Fast & Furious: Speed in the Opera browser
Fast & Furious: Speed in the Opera browserFast & Furious: Speed in the Opera browser
Fast & Furious: Speed in the Opera browserAndreas Bovens
 
RubyMotion: Under the Hood
RubyMotion: Under the HoodRubyMotion: Under the Hood
RubyMotion: Under the HoodJoshua Ballanco
 
Goto aarhus: Mobile Browser as a platform
Goto aarhus: Mobile Browser as a platformGoto aarhus: Mobile Browser as a platform
Goto aarhus: Mobile Browser as a platformMaximiliano Firtman
 
Isolated Networks in the Cloud
Isolated Networks in the CloudIsolated Networks in the Cloud
Isolated Networks in the CloudHart Hoover
 

Similaire à Enterprise rails hosting 3 ways to scale - 2011-10 (20)

Cartoset
CartosetCartoset
Cartoset
 
Infrastructure as Code with Chef / Puppet
Infrastructure as Code with Chef / PuppetInfrastructure as Code with Chef / Puppet
Infrastructure as Code with Chef / Puppet
 
Ruby off Rails
Ruby off RailsRuby off Rails
Ruby off Rails
 
我为何使用
我为何使用我为何使用
我为何使用
 
Embedjs
EmbedjsEmbedjs
Embedjs
 
Enterprise Hosting
Enterprise HostingEnterprise Hosting
Enterprise Hosting
 
2nd Annual Start-up Launches with Dr. Werner Vogels (SPOT101) | AWS re:Invent...
2nd Annual Start-up Launches with Dr. Werner Vogels (SPOT101) | AWS re:Invent...2nd Annual Start-up Launches with Dr. Werner Vogels (SPOT101) | AWS re:Invent...
2nd Annual Start-up Launches with Dr. Werner Vogels (SPOT101) | AWS re:Invent...
 
Ruby-on-Infinispan
Ruby-on-InfinispanRuby-on-Infinispan
Ruby-on-Infinispan
 
Intro To Ror
Intro To RorIntro To Ror
Intro To Ror
 
Ruby + Rails
Ruby + RailsRuby + Rails
Ruby + Rails
 
Vinted life embetterment
Vinted life embettermentVinted life embetterment
Vinted life embetterment
 
Intro to Rake
Intro to RakeIntro to Rake
Intro to Rake
 
Diving Into the New AWS SDK for Ruby (TLS305) | AWS re:Invent 2013
Diving Into the New AWS SDK for Ruby (TLS305) | AWS re:Invent 2013Diving Into the New AWS SDK for Ruby (TLS305) | AWS re:Invent 2013
Diving Into the New AWS SDK for Ruby (TLS305) | AWS re:Invent 2013
 
Fast & Furious: Speed in the Opera browser
Fast & Furious: Speed in the Opera browserFast & Furious: Speed in the Opera browser
Fast & Furious: Speed in the Opera browser
 
RubyMotion: Under the Hood
RubyMotion: Under the HoodRubyMotion: Under the Hood
RubyMotion: Under the Hood
 
Intro for RoR
Intro for RoRIntro for RoR
Intro for RoR
 
Goto aarhus: Mobile Browser as a platform
Goto aarhus: Mobile Browser as a platformGoto aarhus: Mobile Browser as a platform
Goto aarhus: Mobile Browser as a platform
 
Isolated Networks in the Cloud
Isolated Networks in the CloudIsolated Networks in the Cloud
Isolated Networks in the Cloud
 
eZ Publish nextgen
eZ Publish nextgeneZ Publish nextgen
eZ Publish nextgen
 
rails3 @ rsonrails - 2010.08.21
rails3 @ rsonrails - 2010.08.21rails3 @ rsonrails - 2010.08.21
rails3 @ rsonrails - 2010.08.21
 

Plus de Avarteq

Kanban - Classes of Service
Kanban - Classes of ServiceKanban - Classes of Service
Kanban - Classes of ServiceAvarteq
 
Kanban - Set Work in Progress Limits
Kanban - Set Work in Progress LimitsKanban - Set Work in Progress Limits
Kanban - Set Work in Progress LimitsAvarteq
 
Kanban - Set a pace for the input
Kanban - Set a pace for the inputKanban - Set a pace for the input
Kanban - Set a pace for the inputAvarteq
 
Kanban – Visualizing the value chain
Kanban – Visualizing the value chain Kanban – Visualizing the value chain
Kanban – Visualizing the value chain Avarteq
 
Kanban - Establish a Delivery Rhythm
Kanban - Establish a Delivery RhythmKanban - Establish a Delivery Rhythm
Kanban - Establish a Delivery RhythmAvarteq
 
Kanban - How to coordinate with Kanban
Kanban - How to coordinate with KanbanKanban - How to coordinate with Kanban
Kanban - How to coordinate with KanbanAvarteq
 
Kanban: Kaizen - Culture of continuous improvement
Kanban: Kaizen - Culture of continuous improvementKanban: Kaizen - Culture of continuous improvement
Kanban: Kaizen - Culture of continuous improvementAvarteq
 
The Kanban method
The Kanban methodThe Kanban method
The Kanban methodAvarteq
 
Ruby Grundlagen
Ruby GrundlagenRuby Grundlagen
Ruby GrundlagenAvarteq
 
Opscode Chef - Grundlagen
Opscode Chef - GrundlagenOpscode Chef - Grundlagen
Opscode Chef - GrundlagenAvarteq
 
Einführung in Opscode Chef - Voraussetzungen
Einführung in Opscode Chef - VoraussetzungenEinführung in Opscode Chef - Voraussetzungen
Einführung in Opscode Chef - VoraussetzungenAvarteq
 
RabbitMQ mit (J)Ruby
RabbitMQ mit (J)RubyRabbitMQ mit (J)Ruby
RabbitMQ mit (J)RubyAvarteq
 
Julian Fischer Ruby On Rails
Julian Fischer   Ruby On RailsJulian Fischer   Ruby On Rails
Julian Fischer Ruby On RailsAvarteq
 
Mehrserver Lösungen
Mehrserver LösungenMehrserver Lösungen
Mehrserver LösungenAvarteq
 
Evolutionary Algorithms In Ruby
Evolutionary Algorithms In RubyEvolutionary Algorithms In Ruby
Evolutionary Algorithms In RubyAvarteq
 

Plus de Avarteq (15)

Kanban - Classes of Service
Kanban - Classes of ServiceKanban - Classes of Service
Kanban - Classes of Service
 
Kanban - Set Work in Progress Limits
Kanban - Set Work in Progress LimitsKanban - Set Work in Progress Limits
Kanban - Set Work in Progress Limits
 
Kanban - Set a pace for the input
Kanban - Set a pace for the inputKanban - Set a pace for the input
Kanban - Set a pace for the input
 
Kanban – Visualizing the value chain
Kanban – Visualizing the value chain Kanban – Visualizing the value chain
Kanban – Visualizing the value chain
 
Kanban - Establish a Delivery Rhythm
Kanban - Establish a Delivery RhythmKanban - Establish a Delivery Rhythm
Kanban - Establish a Delivery Rhythm
 
Kanban - How to coordinate with Kanban
Kanban - How to coordinate with KanbanKanban - How to coordinate with Kanban
Kanban - How to coordinate with Kanban
 
Kanban: Kaizen - Culture of continuous improvement
Kanban: Kaizen - Culture of continuous improvementKanban: Kaizen - Culture of continuous improvement
Kanban: Kaizen - Culture of continuous improvement
 
The Kanban method
The Kanban methodThe Kanban method
The Kanban method
 
Ruby Grundlagen
Ruby GrundlagenRuby Grundlagen
Ruby Grundlagen
 
Opscode Chef - Grundlagen
Opscode Chef - GrundlagenOpscode Chef - Grundlagen
Opscode Chef - Grundlagen
 
Einführung in Opscode Chef - Voraussetzungen
Einführung in Opscode Chef - VoraussetzungenEinführung in Opscode Chef - Voraussetzungen
Einführung in Opscode Chef - Voraussetzungen
 
RabbitMQ mit (J)Ruby
RabbitMQ mit (J)RubyRabbitMQ mit (J)Ruby
RabbitMQ mit (J)Ruby
 
Julian Fischer Ruby On Rails
Julian Fischer   Ruby On RailsJulian Fischer   Ruby On Rails
Julian Fischer Ruby On Rails
 
Mehrserver Lösungen
Mehrserver LösungenMehrserver Lösungen
Mehrserver Lösungen
 
Evolutionary Algorithms In Ruby
Evolutionary Algorithms In RubyEvolutionary Algorithms In Ruby
Evolutionary Algorithms In Ruby
 

Dernier

Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...panagenda
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfIngrid Airi González
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPathCommunity
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesAssure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesThousandEyes
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesThousandEyes
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsNathaniel Shimoni
 
Manual 508 Accessibility Compliance Audit
Manual 508 Accessibility Compliance AuditManual 508 Accessibility Compliance Audit
Manual 508 Accessibility Compliance AuditSkynet Technologies
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfNeo4j
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Hiroshi SHIBATA
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityIES VE
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 

Dernier (20)

Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdf
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to Hero
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesAssure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
 
Manual 508 Accessibility Compliance Audit
Manual 508 Accessibility Compliance AuditManual 508 Accessibility Compliance Audit
Manual 508 Accessibility Compliance Audit
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdf
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a reality
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 

Enterprise rails hosting 3 ways to scale - 2011-10

  • 1. Enterprise Hosting for Ruby on Rails Julian Fischer fischer@enterprise-rails.de http://www.enterprise-rails.de Samstag, 15. Oktober 11
  • 3. Introduction About me Samstag, 15. Oktober 11
  • 4. About me Julian Fischer ‣Twitter: http://www.twitter.com/railshoster ‣E-Mail: fischer@enterprise-rails.de Samstag, 15. Oktober 11
  • 5. About me Julian Fischer ‣Twitter: http://www.twitter.com/railshoster ‣E-Mail: fischer@enterprise-rails.de ‣ CEO of Avarteq GmbH Samstag, 15. Oktober 11
  • 6. About me Julian Fischer ‣Twitter: http://www.twitter.com/railshoster ‣E-Mail: fischer@enterprise-rails.de ‣ CEO of Avarteq GmbH ‣ Lecturer „Ruby on Rails“ @ HTWdS Samstag, 15. Oktober 11
  • 7. About me Julian Fischer ‣Twitter: http://www.twitter.com/railshoster ‣E-Mail: fischer@enterprise-rails.de ‣ CEO of Avarteq GmbH ‣ Lecturer „Ruby on Rails“ @ HTWdS ‣ Ruby und Ruby on Rails programmer Samstag, 15. Oktober 11
  • 8. About me Julian Fischer ‣Twitter: http://www.twitter.com/railshoster ‣E-Mail: fischer@enterprise-rails.de ‣ CEO of Avarteq GmbH ‣ Lecturer „Ruby on Rails“ @ HTWdS ‣ Ruby und Ruby on Rails programmer ‣ Entperise-Rails.de - Head of Hosting Samstag, 15. Oktober 11
  • 9. Introduction About Avarteq GmbH Samstag, 15. Oktober 11
  • 10. About Avarteq GmbH @railshoster Samstag, 15. Oktober 11
  • 11. About Avarteq GmbH ‣ Founded in Nov. 2008 from two existing companies. @railshoster Samstag, 15. Oktober 11
  • 12. About Avarteq GmbH ‣ Founded in Nov. 2008 from two existing companies. ‣ Involvment of Key-Systems GmbH manages ~2,5 * 10^6 domains for customers of 200+ countries. @railshoster Samstag, 15. Oktober 11
  • 13. About Avarteq GmbH ‣ Founded in Nov. 2008 from two existing companies. ‣ Involvment of Key-Systems GmbH manages ~2,5 * 10^6 domains for customers of 200+ countries. ‣ Team size: ~20 people >16 full-time @railshoster Samstag, 15. Oktober 11
  • 14. Introduction Assumptions for this talk Samstag, 15. Oktober 11
  • 15. Assumptions for this talk @railshoster Samstag, 15. Oktober 11
  • 16. Assumptions for this talk ‣ Ruby and Ruby on Rails architectures to be hosted. @railshoster Samstag, 15. Oktober 11
  • 17. Assumptions for this talk ‣ Ruby and Ruby on Rails architectures to be hosted. ‣ Hosting basics you know what a LB is and what it does. @railshoster Samstag, 15. Oktober 11
  • 18. Assumptions for this talk ‣ Ruby and Ruby on Rails architectures to be hosted. ‣ Hosting basics you know what a LB is and what it does. ‣ You aresuitable hosting solution a methodology toto see determine a interested in for you. And you don‘t need Ruby code in a presentation to like it :-) @railshoster Samstag, 15. Oktober 11
  • 19. Assumptions for this talk ‣ Ruby and Ruby on Rails architectures to be hosted. ‣ Hosting basics you know what a LB is and what it does. ‣ You aresuitable hosting solution a methodology toto see determine a interested in for you. And you don‘t need Ruby code in a presentation to like it :-) @railshoster Samstag, 15. Oktober 11
  • 20. Hosting today and in the near future Samstag, 15. Oktober 11
  • 21. The future of hosting can be found in the cloud. Samstag, 15. Oktober 11
  • 22. But not on EC2. Samstag, 15. Oktober 11
  • 23. US Cloud providers do to hosting what Starbucks did to coffee. From $1 with free refill to ... Samstag, 15. Oktober 11
  • 24. More and more free or achievable cloud technologies emerge. Samstag, 15. Oktober 11
  • 25. Hosting today and in the future @railshoster Samstag, 15. Oktober 11
  • 26. Hosting today and in the future ‣ Eucalyptus @railshoster Samstag, 15. Oktober 11
  • 27. Hosting today and in the future ‣ Eucalyptus ‣ OpenStack @railshoster Samstag, 15. Oktober 11
  • 28. Hosting today and in the future ‣ Eucalyptus ‣ OpenStack ‣ vCloud @railshoster Samstag, 15. Oktober 11
  • 29. Hosting today and in the future ‣ Eucalyptus ‣ OpenStack ‣ vCloud ‣ ... @railshoster Samstag, 15. Oktober 11
  • 30. Many „smaller“ clouds will become available within the next few years. Samstag, 15. Oktober 11
  • 31. Additional abstraction layers will be established. Helping to stay independent or even mash up existing clouds. Samstag, 15. Oktober 11
  • 33. „Start an instance on an internal cloud, then with the same code start another on EC2 or Rackspace. Deltacloud protects your apps from cloud API changes and incompatibilities, so you can concentrate on managing cloud instances the way you want.“ http://incubator.apache.org/deltacloud/ Samstag, 15. Oktober 11
  • 35. Fog „Collections provide a simplified interface, making clouds easier to work with and switch between.“ https://github.com/geemus/fog Samstag, 15. Oktober 11
  • 36. So be prepared for the cloud. Design your app scalable. Samstag, 15. Oktober 11
  • 38. For now Consider your options. Pick carefully. Samstag, 15. Oktober 11
  • 39. Making a decision requires options to choose from. Samstag, 15. Oktober 11
  • 40. Know your options! Samstag, 15. Oktober 11
  • 41. 3 Hosting Scenarios Overview Samstag, 15. Oktober 11
  • 42. 3 Hosting Scenarios @railshoster Samstag, 15. Oktober 11
  • 43. 3 Hosting Scenarios ‣ Cloud Hosting @railshoster Samstag, 15. Oktober 11
  • 44. 3 Hosting Scenarios ‣ Cloud Hosting ‣ Commodity Hardware Cluster @railshoster Samstag, 15. Oktober 11
  • 45. 3 Hosting Scenarios ‣ Cloud Hosting ‣ Commodity Hardware Cluster ‣ High End Hardware Cluster @railshoster Samstag, 15. Oktober 11
  • 46. 3 Hosting Scenarios Cloud Hosting Samstag, 15. Oktober 11
  • 47. Cloud Hosting Urban Legends Samstag, 15. Oktober 11
  • 48. Urban Legends @railshoster Samstag, 15. Oktober 11
  • 49. Urban Legends ‣ Cloud technologies are wonderful @railshoster Samstag, 15. Oktober 11
  • 50. Urban Legends ‣ Cloud technologies are wonderful ‣ People become euphoric @railshoster Samstag, 15. Oktober 11
  • 51. Urban Legends ‣ Cloud technologies are wonderful ‣ People become euphoric ‣ Marketing people oversimplify advantages @railshoster Samstag, 15. Oktober 11
  • 52. Urban Legends ‣ Cloud technologies are wonderful ‣ People become euphoric ‣ Marketing people oversimplify advantages ‣ People want do believe @railshoster Samstag, 15. Oktober 11
  • 53. #1 Go to the cloud and get rid of sys ops. Samstag, 15. Oktober 11
  • 54. Urban Legends @railshoster Samstag, 15. Oktober 11
  • 55. Urban Legends ‣ The hole decision process should be accompanied by an experienced sys op. You don‘t need plenty of workhours here but you definitely want to have advice here and there. @railshoster Samstag, 15. Oktober 11
  • 56. Urban Legends ‣ The hole decision process should be accompanied by an experienced sys op. You don‘t need plenty of workhours here but you definitely want to have advice here and there. ‣ You‘re still running will needservices. Depending on how custom your system is you unix sys ops helping to configure your services accordingly. Template configs from the community might not fit your scenario. How much memory do you got? You have to adapt cache sizes, number of Passenger processes to be spawned, ... @railshoster Samstag, 15. Oktober 11
  • 57. Urban Legends @railshoster Samstag, 15. Oktober 11
  • 58. Urban Legends ‣ Whoconfigurationyour chef recipies? Who writes your service writes templates? Who tweaks your database? @railshoster Samstag, 15. Oktober 11
  • 59. Urban Legends ‣ Whoconfigurationyour chef recipies? Who writes your service writes templates? Who tweaks your database? ‣ Everyactuallya mistery failure? sporadic networkbe there but got is. Library dependency issues, Which shouldn‘t problems, spontenously failing processes, ... @railshoster Samstag, 15. Oktober 11
  • 60. Urban Legends ‣ Whoconfigurationyour chef recipies? Who writes your service writes templates? Who tweaks your database? ‣ Everyactuallya mistery failure? sporadic networkbe there but got is. Library dependency issues, Which shouldn‘t problems, spontenously failing processes, ... ‣ Who recovers production databases. failures? Taking your backups and refills from serious @railshoster Samstag, 15. Oktober 11
  • 61. Who gets up at night? Samstag, 15. Oktober 11
  • 62. Not having a sys op means ... Samstag, 15. Oktober 11
  • 63. Urban Legends @railshoster Samstag, 15. Oktober 11
  • 64. Urban Legends ‣ Makingaa mistakes potentially causing aroles have different so hard to be sys op and programmer at once. These lot of trouble. It‘s perspectives, by nature. @railshoster Samstag, 15. Oktober 11
  • 65. Urban Legends ‣ Makingaa mistakes potentially causing aroles have different so hard to be sys op and programmer at once. These lot of trouble. It‘s perspectives, by nature. ‣ Accpeting drawbacks by not focusing on service configurations, ... @railshoster Samstag, 15. Oktober 11
  • 66. Urban Legends ‣ Makingaa mistakes potentially causing aroles have different so hard to be sys op and programmer at once. These lot of trouble. It‘s perspectives, by nature. ‣ Accpeting drawbacks by not focusing on service configurations, ... ‣ Havingsys op tasks can be considered a sys op. opsifsbd. looks performing people acting like sys Even he/she like a programmer :-) @railshoster Samstag, 15. Oktober 11
  • 67. #2 Go to the cloud and have no outages any more. Samstag, 15. Oktober 11
  • 68. Urban Legends @railshoster Samstag, 15. Oktober 11
  • 69. Urban Legends ‣ Data center issues can‘t caused by switches, routes, experience, there will be network outages be avoided From broken wires, whatever. http://rh.gd/nMNSUK as an example. @railshoster Samstag, 15. Oktober 11
  • 70. Urban Legends ‣ Data center issues can‘t caused by switches, routes, experience, there will be network outages be avoided From broken wires, whatever. http://rh.gd/nMNSUK as an example. ‣ Self healing can‘t recover it‘s a good issue it does Resetting your computer often helps. Hence every guess. But not help all the time. Do you really want to distract your programmers to dig through unix service logs? Ineffective. @railshoster Samstag, 15. Oktober 11
  • 71. Urban Legends ‣ Data center issues can‘t caused by switches, routes, experience, there will be network outages be avoided From broken wires, whatever. http://rh.gd/nMNSUK as an example. ‣ Self healing can‘t recover it‘s a good issue it does Resetting your computer often helps. Hence every guess. But not help all the time. Do you really want to distract your programmers to dig through unix service logs? Ineffective. ‣ Autoscaling won‘t keepautoscale settings eitherup unless you set it up correctly AND your your service match the situation or be very aggressive (wasting money). Do you really want to scale out on a DDoS attack? @railshoster Samstag, 15. Oktober 11
  • 72. #3 Go to the cloud and save money. Samstag, 15. Oktober 11
  • 73. Urban Legends @railshoster Samstag, 15. Oktober 11
  • 74. Urban Legends ‣ Not true for every case. You have to do the math. @railshoster Samstag, 15. Oktober 11
  • 75. Urban Legends ‣ Not true for every case. You have to do the math. ‣ Actually it‘s pretty expensive. @railshoster Samstag, 15. Oktober 11
  • 76. #4 Go to the cloud it‘s safe. Samstag, 15. Oktober 11
  • 77. Urban Legends @railshoster Samstag, 15. Oktober 11
  • 78. Urban Legends ‣ It‘s simply not There are serious legal issues being discussed. @railshoster Samstag, 15. Oktober 11
  • 79. Urban Legends ‣ It‘s simply not There are serious legal issues being discussed. ‣ Infrastructure non-transparency Dobe sure about understand the infrastructure topology? If not how can you you really your data being kept private? @railshoster Samstag, 15. Oktober 11
  • 80. Again. Cloud is a future technology. But don‘t be blind. Samstag, 15. Oktober 11
  • 81. Cloud Hosting Pro Samstag, 15. Oktober 11
  • 82. Cloud Hosting @railshoster Samstag, 15. Oktober 11
  • 83. Cloud Hosting ‣ Maximal flexibility with Auto Scaling @railshoster Samstag, 15. Oktober 11
  • 84. Cloud Hosting ‣ Maximal flexibility with Auto Scaling ‣ Grow & Shrink start and stop (app/server) instances. Shut down what you don‘t need and pay per use. @railshoster Samstag, 15. Oktober 11
  • 85. Cloud Hosting ‣ Maximal flexibility with Auto Scaling ‣ Grow & Shrink start and stop (app/server) instances. Shut down what you don‘t need and pay per use. ‣ Robustness with auto healing. @railshoster Samstag, 15. Oktober 11
  • 86. Cloud Hosting ‣ Maximal flexibility with Auto Scaling ‣ Grow & Shrink start and stop (app/server) instances. Shut down what you don‘t need and pay per use. ‣ Robustness with auto healing. ‣ Kill and restart misbehaving components. @railshoster Samstag, 15. Oktober 11
  • 87. Cloud Hosting Contra Samstag, 15. Oktober 11
  • 88. Cloud Hosting @railshoster Samstag, 15. Oktober 11
  • 89. Cloud Hosting ‣ Scaletocarefullyresulting into a FDoS - tofinancial denial of requests DDoS attack or do you really want scale out to serve a service by spending all your money? Setup your scaleout rules carefully. @railshoster Samstag, 15. Oktober 11
  • 90. Cloud Hosting ‣ Scaletocarefullyresulting into a FDoS - tofinancial denial of requests DDoS attack or do you really want scale out to serve a service by spending all your money? Setup your scaleout rules carefully. ‣ Autohealing withinNothing replaces anoff - switch onsysop! always a suitable repair strategy. limits switch experienced it not It‘s just reducing his workload taking away no brainer tasks. @railshoster Samstag, 15. Oktober 11
  • 91. Cloud Hosting @railshoster Samstag, 15. Oktober 11
  • 92. Cloud Hosting ‣ Causes legal issues for EU companies putting data to a US providers. http://rh.gd/p6l26y (german). In certain scenarios virtualizatin is completely forbidden (e.g. certain levels of pci compliance). @railshoster Samstag, 15. Oktober 11
  • 93. Cloud Hosting ‣ Causes legal issues for EU companies putting data to a US providers. http://rh.gd/p6l26y (german). In certain scenarios virtualizatin is completely forbidden (e.g. certain levels of pci compliance). ‣ Unreasonable expensive compared Depending on your hardware. 4 - 20 times more for similar performance. to physical cloud provider and instance/resource type. @railshoster Samstag, 15. Oktober 11
  • 94. Cloud Hosting ‣ Causes legal issues for EU companies putting data to a US providers. http://rh.gd/p6l26y (german). In certain scenarios virtualizatin is completely forbidden (e.g. certain levels of pci compliance). ‣ Unreasonable expensive compared Depending on your hardware. 4 - 20 times more for similar performance. to physical cloud provider and instance/resource type. ‣ You are a number by being one in a million customers. Don‘t expect reasonable help when needed. @railshoster Samstag, 15. Oktober 11
  • 95. Did you know? Samstag, 15. Oktober 11
  • 97. 3 Hosting Scenarios Commodity Hardware Samstag, 15. Oktober 11
  • 98. Commodity Hardware Pro Samstag, 15. Oktober 11
  • 99. Commodity Hardware @railshoster Samstag, 15. Oktober 11
  • 100. Commodity Hardware ‣ „Cheap“ hardware in huge datacenters. @railshoster Samstag, 15. Oktober 11
  • 101. Commodity Hardware ‣ „Cheap“ hardware in huge datacenters. ‣ Traffic included. @railshoster Samstag, 15. Oktober 11
  • 102. Commodity Hardware ‣ „Cheap“ hardware in huge datacenters. ‣ Traffic included. ‣ Private GBit backnet available. Physically dedicated @railshoster Samstag, 15. Oktober 11
  • 103. Commodity Hardware ‣ „Cheap“ hardware in huge datacenters. ‣ Traffic included. ‣ Private GBit backnet available. Physically dedicated ‣ Maximum performance from your budget. Get a E3 Xenion Quad Core 1245, 16 GB ECC RAM, 2*3TB HDD for 69 € / month. @railshoster Samstag, 15. Oktober 11
  • 104. Commodity Hardware @railshoster Samstag, 15. Oktober 11
  • 105. Commodity Hardware ‣ Why would you scale out if you already have plenty of workforce for your money? That‘s a simple thought. A very good option especially if you know your load and grow rate. @railshoster Samstag, 15. Oktober 11
  • 106. Commodity Hardware ‣ Why would you scale out if you already have plenty of workforce for your money? That‘s a simple thought. A very good option especially if you know your load and grow rate. ‣ No legal issues for EU companies. @railshoster Samstag, 15. Oktober 11
  • 107. Commodity Hardware Contra Samstag, 15. Oktober 11
  • 108. Commodity Hardware @railshoster Samstag, 15. Oktober 11
  • 109. Commodity Hardware ‣ You are a number by being one in a couple of thousand customers. Expect response and repair times within 30 min to 24h. @railshoster Samstag, 15. Oktober 11
  • 110. Commodity Hardware ‣ You are a number by being one in a couple of thousand customers. Expect response and repair times within 30 min to 24h. ‣ Scaling less flexible. Server relocation might be necessary. Server setup fees make shrink operations expensive. @railshoster Samstag, 15. Oktober 11
  • 111. Commodity Hardware ‣ You are a number by being one in a couple of thousand customers. Expect response and repair times within 30 min to 24h. ‣ Scaling less flexible. Server relocation might be necessary. Server setup fees make shrink operations expensive. ‣ Hardware is not high end. Smart system design needed to compensate eventual hardware failures. @railshoster Samstag, 15. Oktober 11
  • 112. 3 Hosting Scenarios High End Hardware Samstag, 15. Oktober 11
  • 113. High End Hardware Pro Samstag, 15. Oktober 11
  • 114. High End Hardware @railshoster Samstag, 15. Oktober 11
  • 115. High End Hardware ‣ High end hardware in well staffed datacenters. Close contact to data center technicians. Quick responses. Fast failure recovery. @railshoster Samstag, 15. Oktober 11
  • 116. High End Hardware ‣ High end hardware in well staffed datacenters. Close contact to data center technicians. Quick responses. Fast failure recovery. ‣ Very realiable hardware. Hardware RAID, hot swappable hdds, redundant power supplies, ... @railshoster Samstag, 15. Oktober 11
  • 117. High End Hardware ‣ High end hardware in well staffed datacenters. Close contact to data center technicians. Quick responses. Fast failure recovery. ‣ Very realiable hardware. Hardware RAID, hot swappable hdds, redundant power supplies, ... ‣ Private GBit backnet available. Physically dedicated @railshoster Samstag, 15. Oktober 11
  • 118. High End Hardware ‣ High end hardware in well staffed datacenters. Close contact to data center technicians. Quick responses. Fast failure recovery. ‣ Very realiable hardware. Hardware RAID, hot swappable hdds, redundant power supplies, ... ‣ Private GBit backnet available. Physically dedicated ‣ Maximum performance. Get multi cpu servers with 2 x 6 XENON Cores, up to 192 GB RAM, SAS and SDD hdds, ... @railshoster Samstag, 15. Oktober 11
  • 119. High End Hardware @railshoster Samstag, 15. Oktober 11
  • 120. High End Hardware ‣ Custom equipped servers can be built specific for their individual purposes. A server with fast cpus and SSD disks will boost your DB service, for example. @railshoster Samstag, 15. Oktober 11
  • 121. High End Hardware ‣ Custom equipped servers can be built specific for their individual purposes. A server with fast cpus and SSD disks will boost your DB service, for example. ‣ Vertical scale outs Servers can be upgraded by adding more memory, better CPUs, more hdds, ... @railshoster Samstag, 15. Oktober 11
  • 122. High End Hardware ‣ Custom equipped servers can be built specific for their individual purposes. A server with fast cpus and SSD disks will boost your DB service, for example. ‣ Vertical scale outs Servers can be upgraded by adding more memory, better CPUs, more hdds, ... ‣ Hybdrid solutions with private clouds. If there‘s a private cloud co-located in the datacenter you can have physical machines to encounter ground loads and use a cloud workforce to serve peaks. @railshoster Samstag, 15. Oktober 11
  • 123. High End Hardware @railshoster Samstag, 15. Oktober 11
  • 124. High End Hardware ‣ Scale outs New servers can be added. High end data centers usually provide advanced switching technologies with vlan capabilities. @railshoster Samstag, 15. Oktober 11
  • 125. High End Hardware ‣ Scale outs New servers can be added. High end data centers usually provide advanced switching technologies with vlan capabilities. ‣ No legal issues for EU companies. @railshoster Samstag, 15. Oktober 11
  • 126. High End Hardware Contra Samstag, 15. Oktober 11
  • 127. High End Hardware @railshoster Samstag, 15. Oktober 11
  • 128. High End Hardware ‣ More expensive than cheap hw Still much cheaper than cloud resources for a comparable performance. @railshoster Samstag, 15. Oktober 11
  • 129. High End Hardware ‣ More expensive than cheap hw Still much cheaper than cloud resources for a comparable performance. ‣ Contract durations Due to financial write offs contract lifetimes are usually longer than for commodity servers or cloud resources. @railshoster Samstag, 15. Oktober 11
  • 130. Proceed systematically. Think. Evaluate. Think again. Samstag, 15. Oktober 11
  • 131. How to build a hosting An exemplary process Samstag, 15. Oktober 11
  • 132. An exemplary process Requirements Analysis Samstag, 15. Oktober 11
  • 133. Requirements Analysis @railshoster Samstag, 15. Oktober 11
  • 134. Requirements Analysis ‣ Budget Calculate roughly 2.5 to 5% of your overall project costs. @railshoster Samstag, 15. Oktober 11
  • 135. Requirements Analysis ‣ Budget Calculate roughly 2.5 to 5% of your overall project costs. ‣ Expected Load @railshoster Samstag, 15. Oktober 11
  • 136. Requirements Analysis ‣ Budget Calculate roughly 2.5 to 5% of your overall project costs. ‣ Expected Load ‣ Ground load Present on a daily basis. @railshoster Samstag, 15. Oktober 11
  • 137. Requirements Analysis ‣ Budget Calculate roughly 2.5 to 5% of your overall project costs. ‣ Expected Load ‣ Ground load Present on a daily basis. ‣ Peak load Triggered by (external) events. @railshoster Samstag, 15. Oktober 11
  • 138. Requirements Analysis @railshoster Samstag, 15. Oktober 11
  • 139. Requirements Analysis ‣ Desired Response Time How many ms to serve. @railshoster Samstag, 15. Oktober 11
  • 140. Requirements Analysis ‣ Desired Response Time How many ms to serve. ‣ Desired Availability Uptime / Downtime ratio. @railshoster Samstag, 15. Oktober 11
  • 141. Requirements Analysis ‣ Desired Response Time How many ms to serve. ‣ Desired Availability Uptime / Downtime ratio. ‣ Geographic Targeting Where are your users located? @railshoster Samstag, 15. Oktober 11
  • 142. Requirements Analysis ‣ Desired Response Time How many ms to serve. ‣ Desired Availability Uptime / Downtime ratio. ‣ Geographic Targeting Where are your users located? ‣ Estimated Growth 1 month, 6 month, 12 months. @railshoster Samstag, 15. Oktober 11
  • 143. Requirements Analysis @railshoster Samstag, 15. Oktober 11
  • 144. Requirements Analysis ‣ Legal constraints Be aware of privacy law issues. @railshoster Samstag, 15. Oktober 11
  • 145. Requirements Analysis ‣ Legal constraints Be aware of privacy law issues. ‣ Technical constraints e.g. ugly Windows legacy stuff. @railshoster Samstag, 15. Oktober 11
  • 146. Requirements Analysis ‣ Legal constraints Be aware of privacy law issues. ‣ Technical constraints e.g. ugly Windows legacy stuff. ‣ Competence Know how to run an app in production? @railshoster Samstag, 15. Oktober 11
  • 147. An exemplary process Identify System Components Samstag, 15. Oktober 11
  • 148. Identify System Components @railshoster Samstag, 15. Oktober 11
  • 149. Identify System Components ‣ Which components store, replicating rdbms, ... server, background processing, key/value are present? search @railshoster Samstag, 15. Oktober 11
  • 150. Identify System Components ‣ Which components store, replicating rdbms, ... server, background processing, key/value are present? search ‣ Eliminate SPOFs Try to have everything crucial twice+. @railshoster Samstag, 15. Oktober 11
  • 151. An exemplary process Choose Platform Samstag, 15. Oktober 11
  • 152. Choose Platform @railshoster Samstag, 15. Oktober 11
  • 153. Choose Platform ‣ Which platform matches your requirements best? Shrink/Scale, cheap workforce or rock solid? @railshoster Samstag, 15. Oktober 11
  • 154. Choose Platform ‣ Which platform matches your requirements best? Shrink/Scale, cheap workforce or rock solid? ‣ (Really) needIfresources on shrink, cloud providersit just for the case that ... you need to grow and demand? Or is will to the trick. @railshoster Samstag, 15. Oktober 11
  • 155. Choose Platform ‣ Which platform matches your requirements best? Shrink/Scale, cheap workforce or rock solid? ‣ (Really) needIfresources on shrink, cloud providersit just for the case that ... you need to grow and demand? Or is will to the trick. ‣ Want to have the maximum performance from your budget? Then hardware might be your choice. @railshoster Samstag, 15. Oktober 11
  • 156. Choose Platform @railshoster Samstag, 15. Oktober 11
  • 157. Choose Platform ‣ Geographic location Where are your users. @railshoster Samstag, 15. Oktober 11
  • 158. Choose Platform ‣ Geographic location Where are your users. ‣ You andyou have access to technical staff? you a number or a customer? Do the supply chain Are @railshoster Samstag, 15. Oktober 11
  • 159. Choose Platform ‣ Geographic location Where are your users. ‣ You andyou have access to technical staff? you a number or a customer? Do the supply chain Are ‣ Quality of Service What are the response times? How fast do they repair? @railshoster Samstag, 15. Oktober 11
  • 160. An exemplary process Initial Dimension Samstag, 15. Oktober 11
  • 161. Initial Dimension @railshoster Samstag, 15. Oktober 11
  • 162. Initial Dimension ‣ Know yourapp‘s resource consumption. Atresponse time you‘ll need to know your app To match your desired least roughly. @railshoster Samstag, 15. Oktober 11
  • 163. Initial Dimension ‣ Know yourapp‘s resource consumption. Atresponse time you‘ll need to know your app To match your desired least roughly. ‣ Create acomponent. The smaller your building blockswhere to run which system system design draft. Decide are the better. @railshoster Samstag, 15. Oktober 11
  • 164. Initial Dimension ‣ Know yourapp‘s resource consumption. Atresponse time you‘ll need to know your app To match your desired least roughly. ‣ Create acomponent. The smaller your building blockswhere to run which system system design draft. Decide are the better. ‣ Estimatesettings #you‘re on a cloud plattform. And decide about scaleout the servers you need. if @railshoster Samstag, 15. Oktober 11
  • 165. Initial Dimension ‣ Know yourapp‘s resource consumption. Atresponse time you‘ll need to know your app To match your desired least roughly. ‣ Create acomponent. The smaller your building blockswhere to run which system system design draft. Decide are the better. ‣ Estimatesettings #you‘re on a cloud plattform. And decide about scaleout the servers you need. if ‣ Order servers or whatever you rely on. @railshoster Samstag, 15. Oktober 11
  • 166. An exemplary process System Design Samstag, 15. Oktober 11
  • 167. System Design @railshoster Samstag, 15. Oktober 11
  • 168. System Design ‣ Detailed System Design How what where to runtowhat. How to use what resource when and how. Describes to connects what. @railshoster Samstag, 15. Oktober 11
  • 169. System Design ‣ Detailed System Design How what where to runtowhat. How to use what resource when and how. Describes to connects what. ‣ Monitoring plan. Monitor everything need appSo planon. This will give you diagnosis information when you your it. relies what to monitor how. @railshoster Samstag, 15. Oktober 11
  • 170. System Design ‣ Detailed System Design How what where to runtowhat. How to use what resource when and how. Describes to connects what. ‣ Monitoring plan. Monitor everything need appSo planon. This will give you diagnosis information when you your it. relies what to monitor how. ‣ Backup plan. Data can bedata to beprepared and think about where your app produces valuable lost. Be backuped. @railshoster Samstag, 15. Oktober 11
  • 171. An exemplary process Installation(automation) Samstag, 15. Oktober 11
  • 172. Installation(automation) @railshoster Samstag, 15. Oktober 11
  • 173. Installation(automation) ‣ Get a bluprint of your hosting Use Chef. @railshoster Samstag, 15. Oktober 11
  • 174. Installation(automation) ‣ Get a bluprint of your hosting Use Chef. ‣ Describe how to setup every system component. Keep your recipies small and simple. @railshoster Samstag, 15. Oktober 11
  • 175. Installation(automation) ‣ Get a bluprint of your hosting Use Chef. ‣ Describe how to setup every system component. Keep your recipies small and simple. ‣ Be ready for a deployment.run cap deploy afterwards. automated your installation process if you can You have successfully @railshoster Samstag, 15. Oktober 11
  • 176. An exemplary process Strengthen your system. Samstag, 15. Oktober 11
  • 177. Strengthen your system @railshoster Samstag, 15. Oktober 11
  • 178. Strengthen your system ‣ Yourmonitor such as kickstart, monit or god to keep them alive. a process app need dependent processes? Use Double check with nagios for a system health status. @railshoster Samstag, 15. Oktober 11
  • 179. Strengthen your system ‣ Yourmonitor such as kickstart, monit or god to keep them alive. a process app need dependent processes? Use Double check with nagios for a system health status. ‣ Makeget back toserversa black out automatically.Your system needs to your normal on reboot proof. @railshoster Samstag, 15. Oktober 11
  • 180. Strengthen your system ‣ Yourmonitor such as kickstart, monit or god to keep them alive. a process app need dependent processes? Use Double check with nagios for a system health status. ‣ Makeget back toserversa black out automatically.Your system needs to your normal on reboot proof. ‣ Desaster and Recovery planning. What is the most likely error event? What is the impact? How to fix it? @railshoster Samstag, 15. Oktober 11
  • 181. Strengthen your system ‣ Yourmonitor such as kickstart, monit or god to keep them alive. a process app need dependent processes? Use Double check with nagios for a system health status. ‣ Makeget back toserversa black out automatically.Your system needs to your normal on reboot proof. ‣ Desaster and Recovery planning. What is the most likely error event? What is the impact? How to fix it? ‣ Simulate disasters. Test your recovery plans. @railshoster Samstag, 15. Oktober 11
  • 182. An exemplary process Deployment Samstag, 15. Oktober 11
  • 183. Installation(automation) @railshoster Samstag, 15. Oktober 11
  • 184. Installation(automation) ‣ Use a deployment tool. Not really worth mentioning but just to be complete. Do I have to mention capistrano? @railshoster Samstag, 15. Oktober 11
  • 185. Installation(automation) ‣ Use a deployment tool. Not really worth mentioning but just to be complete. Do I have to mention capistrano? ‣ Setup Capistrano. CapwhateverShouldn‘t Make more than that for the average case. Automate deploy. you can. need it foolproof. @railshoster Samstag, 15. Oktober 11
  • 186. An exemplary process Test && Launch Samstag, 15. Oktober 11
  • 187. Test && Launch @railshoster Samstag, 15. Oktober 11
  • 188. Test && Launch ‣ Test your setup. Perform acceptance tests. Partly covered by your desaster simulations. Also test with your customer, your users, ... @railshoster Samstag, 15. Oktober 11
  • 189. Test && Launch ‣ Test your setup. Perform acceptance tests. Partly covered by your desaster simulations. Also test with your customer, your users, ... ‣ Go live! Cover your eyes and pray :-) @railshoster Samstag, 15. Oktober 11
  • 190. Lessons Learned Key Statements to remember Samstag, 15. Oktober 11
  • 191. Lessons Learned @railshoster Samstag, 15. Oktober 11
  • 192. Lessons Learned ‣ Creating a hosting. Should be considered to be a project. Process it systematically. @railshoster Samstag, 15. Oktober 11
  • 193. Lessons Learned ‣ Creating a hosting. Should be considered to be a project. Process it systematically. ‣ Be aware ofhammer everything you see a ahammer. Because if you got a people holding is nail. @railshoster Samstag, 15. Oktober 11
  • 194. Lessons Learned ‣ Creating a hosting. Should be considered to be a project. Process it systematically. ‣ Be aware ofhammer everything you see a ahammer. Because if you got a people holding is nail. ‣ Make decisions. No decision without choices. Know your options. @railshoster Samstag, 15. Oktober 11
  • 195. Lessons Learned ‣ Creating a hosting. Should be considered to be a project. Process it systematically. ‣ Be aware ofhammer everything you see a ahammer. Because if you got a people holding is nail. ‣ Make decisions. No decision without choices. Know your options. ‣ Reduce sysop work. But running an app is a pain and burdon for most developers. @railshoster Samstag, 15. Oktober 11
  • 196. Focus on adding value to your business. Samstag, 15. Oktober 11
  • 197. Focus on your app. Samstag, 15. Oktober 11
  • 199. Thank you for your attention! Headquarter: Rails Enterprise Hosting: http://www.avarteq.de http://www.enterprise- rails.com Blog: http://ww.treibstofff.de Rails Hosting: http://www.railshoster.com Samstag, 15. Oktober 11