How to Build Resilient & Scalable PHP Applications on Amazon Web Services

  • 3,143 views
Uploaded on

Slides accompanying RightBrain Network's January 10, 2013 at CodeMash 2013. (The animation that explains much of the autoscaling functionality is not supported by SlideShare. Please contact me …

Slides accompanying RightBrain Network's January 10, 2013 at CodeMash 2013. (The animation that explains much of the autoscaling functionality is not supported by SlideShare. Please contact me directly for the original PowerPoint file.)

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
3,143
On Slideshare
0
From Embeds
0
Number of Embeds
1

Actions

Shares
Downloads
17
Comments
0
Likes
1

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Cloud-based SoftwareEngineering, Infrastructure, & DevOps.
  • 2. A BIT ABOUT US We’re a software consultancy, located near Ann Arbor, Michigan, that specializes in cloud-based deployments and application architecture. Founded and host AWS Michigan, the regional user group. (Check us out: www.awsmichigan.org) Member of Amazon’s Consulting Partner Network & have consulted on over 70 AWS deployments since 2006.
  • 3. WorseInfrastructure-as-a-ServiceCloud Computing Platform Ever!
  • 4. ACTUALLY THOUGH… AWS has never had a complete regional failure. The most recent wide-spread outage (affecting Elastic Load Balancers in US-East-1 on Christmas Eve) impacted only 6.8% of ELBs. Applications have to be built with a cloud-based deployment in mind. Never use a single EC2 instance for anything important. If your application completely dies, it’s likely your fault.
  • 5. TRADITIONAL HOSTING VS EC2: A REAL WORLD EXAMPLE *Actual Google Analytics data from one of our clients using traditional dedicated hosting to serve approximately one million pageviews/mo.
  • 6. TRADITIONAL DEDICATED SERVERS
  • 7. TRADITIONAL DEDICATED SERVERS $ $ $ $ $ $ $
  • 8. TRADITIONAL DEDICATED SERVERS
  • 9. EC2 AUTOSCALING
  • 10. EC2 AUTOSCALINGAutoscaling is the heart and soul of EC2.
  • 11. AWS GEOGRAPHY REGIONS AVAILABILITY ZONES US-East-1 (N. Virginia) US-West-1 (N. California) US-West-2a US-West-2 (Oregon) US-West-2b EU-West-1 (Ireland) US-West-2c AP-Southeast-1 (Singapore) AP-Northeast-1 (Tokyo) AP-Southeast-1 (Sydney) SA-East-1 (Sao Paulo)
  • 12. TYPICAL A.S. CONFIG Elastic Load US-East-1 Balancer (ELB) US-East-1a US-East-1c EC2 EC2 EC2 EC2 App Server App Server RDS RDS Active DB Standby DBScale-Up Event
  • 13. TYPICAL A.S. CONFIG Elastic Load US-East-1 Balancer (ELB) US-East-1a US-East-1c EC2 EC2 EC2 EC2 App Server App Server RDS RDS Active DBAutomatic Database Failover
  • 14. TYPICAL A.S. CONFIG Elastic LoadUS-East-1 Balancer (ELB) US-East-1a US-East-1c EC2 EC2 EC2 EC2 App Server App Server RDS RDS Standby DB Active DB
  • 15. TYPICAL A.S. CONFIG Elastic LoadUS-East-1 Balancer (ELB) US-East-1a US-East-1c EC2 EC2 EC2 EC2 App Server App Server RDS RDS RDS Standby DB Active DB
  • 16. TYPICAL A.S. CONFIG Elastic Load US-East-1 Balancer (ELB) US-East-1a US-East-1c EC2 EC2 EC2 EC2 App Server App Server RDS RDS RDS Standby DB Active DBSelf-healing Network
  • 17. TYPICAL A.S. CONFIG Elastic Load US-East-1 Balancer (ELB) US-East-1a US-East-1c EC2 EC2 EC2 EC2 App Server App Server RDS RDS RDS Standby DB Active DBSelf-healing Network
  • 18. TYPICAL A.S. CONFIG Elastic Load US-East-1 Balancer (ELB) US-East-1a US-East-1c EC2 EC2 EC2 EC2 App Server App Server RDS RDS RDS Standby DB Active DBScale-Down Event
  • 19. SOUND RATHER COMPLICATED? Well, it kinda is… Elastic Beanstalk simplifies all of this by abstracting away the underlying AWS resources. Using Elastic Beanstalk, Michael Gimbel will now show you how to deploy a PHP app to AWS that does everything I’ve discussed—in 20 minutes.
  • 20. SIGNS YOU’VE OUTGROWN ELASTIC BEANSTALK Need to use Nginx or a custom-compiled version of Apache. Want to use autoscaling logic that utilizes multiple metrics or custom metrics. Deployment workflow includes more advanced tools such as Puppet or Chef.
  • 21. SIGNS YOU’VE OUTGROWN ELASTIC BEANSTALK You’ve hired someone who actually likes managing servers…
  • 22. BEYOND THE BEANSTALK Learn to love CloudFormation. Discover the many SaaS and open-source products on the market that make your life easier:  New Relic – Application profiling and monitoring  Newvem – ―Google Analytics for AWS.‖  Simian Army and Janitor Monkey – Open source tools from Netflix  Iron.io – IronWorker, a cloud-based job scheduler  Bees With Machine Guns – Open source load testing
  • 23. Scalable, Redundant Wordpress Deployment
  • 24. THANKS FOR ATTENDING! Jamie Begin & Michael GimbelEmail: jamie@rightbrainnetworks.comTwitter: @ r b n _ j a m i e Questions?