SlideShare 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
It’s 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,
                       flexible 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 Notification Service

                       A notification
                       infrastructure in the Cloud

                       Publish/Subscribe protocol

                       Http/Mail/SQS
                       notifications

                       Pay what you use
                       (requests, notification 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 flexible, 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

Viewers also liked

Casino Night at Rowan After Hours 2010
Casino Night at Rowan After Hours 2010Casino Night at Rowan After Hours 2010
Casino Night at Rowan After Hours 2010
Steven Shater
 
Enrique camarena cases
Enrique camarena casesEnrique camarena cases
Enrique camarena casesyanett galban
 
Médias sociaux et recherche d'emploi
Médias sociaux et recherche d'emploiMédias sociaux et recherche d'emploi
Médias sociaux et recherche d'emploi
Cédric Fontaine
 
case study: maxon motors' social media performance (part1: slides)
case study: maxon motors' social media performance (part1: slides)case study: maxon motors' social media performance (part1: slides)
case study: maxon motors' social media performance (part1: slides)
Yvonne Yang
 
Webtech Conference: NoSQL and Web scalability
Webtech Conference: NoSQL and Web scalabilityWebtech Conference: NoSQL and Web scalability
Webtech Conference: NoSQL and Web scalabilityLuca Bonmassar
 
Webtech Conference: Introducing LXC: fast and secure virtualization
Webtech Conference: Introducing LXC: fast and secure virtualizationWebtech Conference: Introducing LXC: fast and secure virtualization
Webtech Conference: Introducing LXC: fast and secure virtualization
Luca Bonmassar
 
Mastering ElasticSearch with Ruby and Tire
Mastering ElasticSearch with Ruby and TireMastering ElasticSearch with Ruby and Tire
Mastering ElasticSearch with Ruby and Tire
Luca Bonmassar
 
Patterns / Antipatterns with NoSQL
Patterns / Antipatterns with NoSQLPatterns / Antipatterns with NoSQL
Patterns / Antipatterns with NoSQL
Luca Bonmassar
 

Viewers also liked (12)

Casino Night at Rowan After Hours 2010
Casino Night at Rowan After Hours 2010Casino Night at Rowan After Hours 2010
Casino Night at Rowan After Hours 2010
 
Enrique camarena cases
Enrique camarena casesEnrique camarena cases
Enrique camarena cases
 
Médias sociaux et recherche d'emploi
Médias sociaux et recherche d'emploiMédias sociaux et recherche d'emploi
Médias sociaux et recherche d'emploi
 
case study: maxon motors' social media performance (part1: slides)
case study: maxon motors' social media performance (part1: slides)case study: maxon motors' social media performance (part1: slides)
case study: maxon motors' social media performance (part1: slides)
 
Sony camera
Sony cameraSony camera
Sony camera
 
Pain
PainPain
Pain
 
Year
YearYear
Year
 
Good karma
Good karmaGood karma
Good karma
 
Webtech Conference: NoSQL and Web scalability
Webtech Conference: NoSQL and Web scalabilityWebtech Conference: NoSQL and Web scalability
Webtech Conference: NoSQL and Web scalability
 
Webtech Conference: Introducing LXC: fast and secure virtualization
Webtech Conference: Introducing LXC: fast and secure virtualizationWebtech Conference: Introducing LXC: fast and secure virtualization
Webtech Conference: Introducing LXC: fast and secure virtualization
 
Mastering ElasticSearch with Ruby and Tire
Mastering ElasticSearch with Ruby and TireMastering ElasticSearch with Ruby and Tire
Mastering ElasticSearch with Ruby and Tire
 
Patterns / Antipatterns with NoSQL
Patterns / Antipatterns with NoSQLPatterns / Antipatterns with NoSQL
Patterns / Antipatterns with NoSQL
 

Recently uploaded

Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
Adtran
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
91mobiles
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
Prayukth K V
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
Jemma Hussein Allen
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
BookNet Canada
 
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
James Anderson
 
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionGenerative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Aggregage
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
Matthew Sinclair
 
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptxSecstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
nkrafacyberclub
 
Microsoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdfMicrosoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdf
Uni Systems S.M.S.A.
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
Guy Korland
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
DianaGray10
 
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
Neo4j
 
Free Complete Python - A step towards Data Science
Free Complete Python - A step towards Data ScienceFree Complete Python - A step towards Data Science
Free Complete Python - A step towards Data Science
RinaMondal9
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems S.M.S.A.
 
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
Neo4j
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance
 
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Nexer Digital
 

Recently uploaded (20)

Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
 
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
 
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionGenerative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to Production
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
 
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptxSecstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
 
Microsoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdfMicrosoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdf
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
 
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
 
Free Complete Python - A step towards Data Science
Free Complete Python - A step towards Data ScienceFree Complete Python - A step towards Data Science
Free Complete Python - A step towards Data Science
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
 
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
 
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?
 

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. It’s 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, flexible 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 Notification Service A notification infrastructure in the Cloud Publish/Subscribe protocol Http/Mail/SQS notifications Pay what you use (requests, notification 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 flexible, 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