際際滷

際際滷Share a Scribd company logo
Virtualization and
                        Cloud: a PRO
                       infrastructure for
                           everyone.
                         Luca Bonmassa r, BetterSoftware 2011




Monday, 27 June 2011
Luca Bonmassar



                       Passionate about Tech

                       Favorite topics: Cloud,
                       Virtualization, NoSQL

                       Enterprise / startup
                       experience



                                                 BetterSoftware 11
Monday, 27 June 2011
Cloud - Agenda


                       Avoiding the fog

                        Cloud what?

                        Cloud why?

                        Cloud when?

                       Building on AWS Cloud


                                                  BetterSoftware 11
Monday, 27 June 2011
1. Cloud what?




                                        BetterSoftware 11
Monday, 27 June 2011
Its not about the pro
                                              d u ct

                                    You have the biggest
                                    idea ever: a brand new
                                    pizza type!

                                    You have spent time
                                    designing, implementing
                                    and testing your new
                                    pizza

                                    But now you need a
                                    place to sell it


                                              BetterSoftware 11
Monday, 27 June 2011
Build your own pizza p
                                              lace!

                                               BetterSoftware 11
Monday, 27 June 2011
Build your own pizza p
                                                    lace

                       Upfront decisions:

                         How big?

                         How many tables?

                         Where?

                       Time and money if
                       you change your
                       mind

                                                BetterSoftware 11
Monday, 27 June 2011
What about renting?

                                             BetterSoftware 11
Monday, 27 June 2011
Renting in Cloud mall

                                In the Cloud mall you
                                can rent by square
                                meters

                                If:

                                      you need more, you
                                      get more

                                      you need less, you
                                      give it back

                                             BetterSoftware 11
Monday, 27 June 2011
2. Cloud why?




                                       BetterSoftware 11
Monday, 27 June 2011
Move from Capex to O
                                            p ex
                                             BetterSoftware 11
Monday, 27 June 2011
eCommerce Website

         1600000


         1200000


           800000


           400000


                       0
                           Jan Feb Mar Apr May Jun   Jul   Aug Sep Oct Nov Dec
                                                Traffic

                                                                      BetterSoftware 11
Monday, 27 June 2011
Over provision
                                                              ing

         1600000


         1200000


           800000


           400000


                       0
                           Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec
                                     Traffic          Provisioning

                                                                     BetterSoftware 11
Monday, 27 June 2011
Under provisioning

         1600000


         1200000


           800000


           400000


                       0
                           Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec
                                     Traffic          Provisioning

                                                                     BetterSoftware 11
Monday, 27 June 2011
AutoScale(TM)

         1600000


         1200000


           800000


           400000


                       0
                           Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec
                                     Traffic          Provisioning

                                                                     BetterSoftware 11
Monday, 27 June 2011
From Capex to Opex


                               No need for approval
                               to buy any new
                               computational
                               resources

                               Pay as you go
                               model



                                       BetterSoftware 11
Monday, 27 June 2011
Ready to succeed?

                                           BetterSoftware 11
Monday, 27 June 2011
200


150


100


   50


     0
         Sat           Sun   Mon   Tue   Wed       Thu   Fri       Sat      Sun
                                         Traffic


                       Breakup notifier - la
                                               unch

                                                               BetterSoftware 11
Monday, 27 June 2011
300000


225000


150000


 75000


           0
               Fri     Sat Sun Mon Tue Wed Thu       Fri   Sat Sun Mon Tue Wed Thu
                                           Traffic


                          The TechCrunch effec
                                              t

                                                                    BetterSoftware 11
Monday, 27 June 2011
3. Cloud when?




                                        BetterSoftware 11
Monday, 27 June 2011
Enterprise

                           Circumvent IT
                           department

                           Pay as you go - no
                           budget approval

                           No provisioning



                           Cons: sensitive data?

                                    BetterSoftware 11
Monday, 27 June 2011
Startup / Pet project



                                Defeat TechCrunch
                                effect

                                No money (but glory)

                                No operations team




                                         BetterSoftware 11
Monday, 27 June 2011
Building on AWS




                                     BetterSoftware 11
Monday, 27 June 2011
Amazon Web Services


                       The most mature,
                       鍖exible and
                       complete
                       infrastructure
                       platform --
                       Jeff Bezos (CEO,
                       Amazon.com)



                                              BetterSoftware 11
Monday, 27 June 2011
AWS WebApp Architect
                                                        ure


                       Monitoring



                                               Frontend




                                               Messaging
                       AutoScale
                                     Backend               Backend




                                               Storage               BetterSoftware 11
Monday, 27 June 2011
Network Components


                       Load Balancers

                       Firewalls

                       Elastic IPs

                       Route 53

                       Virtual Private Cloud



                                                   BetterSoftware 11
Monday, 27 June 2011
Computing: EC2

                       Virtual Machines

                       Different memory/cpu
                       resources

                       Run public or custom OS
                       images

                       When turned off,
                       changes are lost
                       (volatile)

                       Pay what you use (time
                       and bandwidth)

                                                      BetterSoftware 11
Monday, 27 June 2011
Bonus Track: EC2 + LX
                                                     C

                       Run Virtual Machines
                       into Virtual Machines

                       LXC (Linux
                       Containers)

                       UML (UserMode
                       Linux)

                       FreeBSD jails


                                                BetterSoftware 11
Monday, 27 June 2011
Storage: EBS

                       Network storage
                       volumes

                       Customizable size

                       Data stored in
                       snapshots

                       Data is automatically
                       replicated

                       Pay per allocated GB

                                                    BetterSoftware 11
Monday, 27 June 2011
Storage: S3

                       Key/value object
                       storage

                       Rest API to manipulate
                       the repository (web
                       access to objects)

                       S3FS

                       Slower, more reliable

                       Pay per allocated GB and
                       usage (data transfer)

                                                         BetterSoftware 11
Monday, 27 June 2011
Storage: RDS

                       Relational Database
                       Service

                       A managed MySQL/
                       Oracle instance in the
                       Cloud

                       Different cpu/mem
                       resources

                       Pay what you use
                       (bandwidth and time)

                                                   BetterSoftware 11
Monday, 27 June 2011
Storage: SimpleDB

                       The NoSQL alternative

                       A managed NoSQL
                       instance in the Cloud

                       Custom API to
                       manipulate the data
                       set

                       Pay what you use
                       (bandwidth and time)


                                                 BetterSoftware 11
Monday, 27 June 2011
Messaging: SNS

                       Simple Noti鍖cation Service

                       A noti鍖cation
                       infrastructure in the Cloud

                       Publish/Subscribe protocol

                       Http/Mail/SQS
                       noti鍖cations

                       Pay what you use
                       (requests, noti鍖cation and
                       bandwidth)


                                                      BetterSoftware 11
Monday, 27 June 2011
Messaging: SQS

                       Simple Queue Service

                       A message queue
                       infrastructure in the Cloud

                       Communications between
                       EC2 instances

                       Enable the worker
                       queue paradigm

                       Pay what you use
                       (bandwidth and API
                       requests)


                                                     BetterSoftware 11
Monday, 27 June 2011
Monitoring: CloudWatc
                                                          h
                       Monitor AWS resources

                         EC2 instances

                         EBS volumes

                         RDS databases

                         Load Balancers

                         ...

                       Set alarms

                       View graphs and statistics

                       Pay per number of alarms and
                       metrics monitored


                                                      BetterSoftware 11
Monday, 27 June 2011
Monitoring: AutoScale

                       Monitor instances and
                       take scalability decisions

                       Scale out EC2 instances
                       when demand increases

                       Shed unneeded EC2
                       instances when demand
                       subsides (save $$$)

                       Enable elasticity

                       Free of charge

                                                    BetterSoftware 11
Monday, 27 June 2011
Putting it all together


                       Monitoring



                                              Frontend




                                              Messaging
                       AutoScale
                                    Backend               Backend




                                              Storage               BetterSoftware 11
Monday, 27 June 2011
Failures
                       Cloud is not immune to
                       failures

                       Cloud Apps should be
                       designed with failure in
                       mind (distributed
                       components app)



                       Take advantages of:

                         Availability Zones

                         Multiple Regions

                                                             BetterSoftware 11
Monday, 27 June 2011
One more thing: API!
                       All services are manageable through a Web Console

                       But all AWS services have exposed APIs

                       You can (for example):

                         Allocate, start, control, terminate EC2 instances

                         Allocate/attach/deallocate EBS partitions

                         Allocate/start/stop databases

                         Create/Read/Update/Destroy S3 objects

                         Change IPs

                         Monitor components

                         ...


                                                                             BetterSoftware 11
Monday, 27 June 2011
Predicting costs


                       Amazon Simple
                       Monthly Calculator
                       (google it!)

                       Given some
                       assumptions, how
                       much will I pay?



                                                  BetterSoftware 11
Monday, 27 June 2011
Keep costs low

                       Use a mix of reserved
                       instances vs. On-
                       Demand instances

                       Undersize your storage
                       and processing power

                       Monitor process
                       activities (e.g. you pay
                       for the bandwidth)

                       Use AutoScale

                                                    BetterSoftware 11
Monday, 27 June 2011
Conclusions

                       Cloud is a very good place
                       to host your application
                       and data

                       Very 鍖exible, leaves to
                       others the pain of
                       operations

                       Easy to migrate to Cloud
                       in steps (subscribing one
                       service at a time)

                       Your application is ready
                       to scale with your business


                                                           BetterSoftware 11
Monday, 27 June 2011
Thanks! Questions?




                       luca@coderloop.com

                       linkedin.com/in/lucabonmassar

                       twitter.com/lucabonmassar




                                                       BetterSoftware 11
Monday, 27 June 2011

More Related Content

Virtualization and Cloud - a "Pro" infrastructure for everyone.

  • 1. Virtualization and Cloud: a PRO infrastructure for everyone. Luca Bonmassa r, BetterSoftware 2011 Monday, 27 June 2011
  • 2. Luca Bonmassar Passionate about Tech Favorite topics: Cloud, Virtualization, NoSQL Enterprise / startup experience BetterSoftware 11 Monday, 27 June 2011
  • 3. Cloud - Agenda Avoiding the fog Cloud what? Cloud why? Cloud when? Building on AWS Cloud BetterSoftware 11 Monday, 27 June 2011
  • 4. 1. Cloud what? BetterSoftware 11 Monday, 27 June 2011
  • 5. Its not about the pro d u ct You have the biggest idea ever: a brand new pizza type! You have spent time designing, implementing and testing your new pizza But now you need a place to sell it BetterSoftware 11 Monday, 27 June 2011
  • 6. Build your own pizza p lace! BetterSoftware 11 Monday, 27 June 2011
  • 7. Build your own pizza p lace Upfront decisions: How big? How many tables? Where? Time and money if you change your mind BetterSoftware 11 Monday, 27 June 2011
  • 8. What about renting? BetterSoftware 11 Monday, 27 June 2011
  • 9. Renting in Cloud mall In the Cloud mall you can rent by square meters If: you need more, you get more you need less, you give it back BetterSoftware 11 Monday, 27 June 2011
  • 10. 2. Cloud why? BetterSoftware 11 Monday, 27 June 2011
  • 11. Move from Capex to O p ex BetterSoftware 11 Monday, 27 June 2011
  • 12. eCommerce Website 1600000 1200000 800000 400000 0 Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec Traffic BetterSoftware 11 Monday, 27 June 2011
  • 13. Over provision ing 1600000 1200000 800000 400000 0 Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec Traffic Provisioning BetterSoftware 11 Monday, 27 June 2011
  • 14. Under provisioning 1600000 1200000 800000 400000 0 Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec Traffic Provisioning BetterSoftware 11 Monday, 27 June 2011
  • 15. AutoScale(TM) 1600000 1200000 800000 400000 0 Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec Traffic Provisioning BetterSoftware 11 Monday, 27 June 2011
  • 16. From Capex to Opex No need for approval to buy any new computational resources Pay as you go model BetterSoftware 11 Monday, 27 June 2011
  • 17. Ready to succeed? BetterSoftware 11 Monday, 27 June 2011
  • 18. 200 150 100 50 0 Sat Sun Mon Tue Wed Thu Fri Sat Sun Traffic Breakup notifier - la unch BetterSoftware 11 Monday, 27 June 2011
  • 19. 300000 225000 150000 75000 0 Fri Sat Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Traffic The TechCrunch effec t BetterSoftware 11 Monday, 27 June 2011
  • 20. 3. Cloud when? BetterSoftware 11 Monday, 27 June 2011
  • 21. Enterprise Circumvent IT department Pay as you go - no budget approval No provisioning Cons: sensitive data? BetterSoftware 11 Monday, 27 June 2011
  • 22. Startup / Pet project Defeat TechCrunch effect No money (but glory) No operations team BetterSoftware 11 Monday, 27 June 2011
  • 23. Building on AWS BetterSoftware 11 Monday, 27 June 2011
  • 24. Amazon Web Services The most mature, 鍖exible and complete infrastructure platform -- Jeff Bezos (CEO, Amazon.com) BetterSoftware 11 Monday, 27 June 2011
  • 25. AWS WebApp Architect ure Monitoring Frontend Messaging AutoScale Backend Backend Storage BetterSoftware 11 Monday, 27 June 2011
  • 26. Network Components Load Balancers Firewalls Elastic IPs Route 53 Virtual Private Cloud BetterSoftware 11 Monday, 27 June 2011
  • 27. Computing: EC2 Virtual Machines Different memory/cpu resources Run public or custom OS images When turned off, changes are lost (volatile) Pay what you use (time and bandwidth) BetterSoftware 11 Monday, 27 June 2011
  • 28. Bonus Track: EC2 + LX C Run Virtual Machines into Virtual Machines LXC (Linux Containers) UML (UserMode Linux) FreeBSD jails BetterSoftware 11 Monday, 27 June 2011
  • 29. Storage: EBS Network storage volumes Customizable size Data stored in snapshots Data is automatically replicated Pay per allocated GB BetterSoftware 11 Monday, 27 June 2011
  • 30. Storage: S3 Key/value object storage Rest API to manipulate the repository (web access to objects) S3FS Slower, more reliable Pay per allocated GB and usage (data transfer) BetterSoftware 11 Monday, 27 June 2011
  • 31. Storage: RDS Relational Database Service A managed MySQL/ Oracle instance in the Cloud Different cpu/mem resources Pay what you use (bandwidth and time) BetterSoftware 11 Monday, 27 June 2011
  • 32. Storage: SimpleDB The NoSQL alternative A managed NoSQL instance in the Cloud Custom API to manipulate the data set Pay what you use (bandwidth and time) BetterSoftware 11 Monday, 27 June 2011
  • 33. Messaging: SNS Simple Noti鍖cation Service A noti鍖cation infrastructure in the Cloud Publish/Subscribe protocol Http/Mail/SQS noti鍖cations Pay what you use (requests, noti鍖cation and bandwidth) BetterSoftware 11 Monday, 27 June 2011
  • 34. Messaging: SQS Simple Queue Service A message queue infrastructure in the Cloud Communications between EC2 instances Enable the worker queue paradigm Pay what you use (bandwidth and API requests) BetterSoftware 11 Monday, 27 June 2011
  • 35. Monitoring: CloudWatc h Monitor AWS resources EC2 instances EBS volumes RDS databases Load Balancers ... Set alarms View graphs and statistics Pay per number of alarms and metrics monitored BetterSoftware 11 Monday, 27 June 2011
  • 36. Monitoring: AutoScale Monitor instances and take scalability decisions Scale out EC2 instances when demand increases Shed unneeded EC2 instances when demand subsides (save $$$) Enable elasticity Free of charge BetterSoftware 11 Monday, 27 June 2011
  • 37. Putting it all together Monitoring Frontend Messaging AutoScale Backend Backend Storage BetterSoftware 11 Monday, 27 June 2011
  • 38. Failures Cloud is not immune to failures Cloud Apps should be designed with failure in mind (distributed components app) Take advantages of: Availability Zones Multiple Regions BetterSoftware 11 Monday, 27 June 2011
  • 39. One more thing: API! All services are manageable through a Web Console But all AWS services have exposed APIs You can (for example): Allocate, start, control, terminate EC2 instances Allocate/attach/deallocate EBS partitions Allocate/start/stop databases Create/Read/Update/Destroy S3 objects Change IPs Monitor components ... BetterSoftware 11 Monday, 27 June 2011
  • 40. Predicting costs Amazon Simple Monthly Calculator (google it!) Given some assumptions, how much will I pay? BetterSoftware 11 Monday, 27 June 2011
  • 41. Keep costs low Use a mix of reserved instances vs. On- Demand instances Undersize your storage and processing power Monitor process activities (e.g. you pay for the bandwidth) Use AutoScale BetterSoftware 11 Monday, 27 June 2011
  • 42. Conclusions Cloud is a very good place to host your application and data Very 鍖exible, leaves to others the pain of operations Easy to migrate to Cloud in steps (subscribing one service at a time) Your application is ready to scale with your business BetterSoftware 11 Monday, 27 June 2011
  • 43. Thanks! Questions? luca@coderloop.com linkedin.com/in/lucabonmassar twitter.com/lucabonmassar BetterSoftware 11 Monday, 27 June 2011