Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Redundancy Rocks. Redundancy Rocks.

735 views

Published on

Mage Titans 2016 Manchester.
Fabrizio Branca

Published in: Software

Redundancy Rocks. Redundancy Rocks.

  1. 1. & aoepeople!
  2. 2. 3 am
  3. 3. 9 am 3 am
  4. 4. Apache PHP MySQL Redis Varnish Server DNS also, you‘re probably running into resource issues... If any of these components crashes you have a problem
  5. 5. Apache PHP MySQL Redis Varnish DNS
  6. 6. Apache PHP MySQL Varnish DNS Redis split cache, fpc and sessions
  7. 7. 4 Problems Now you have
  8. 8. Single Point of Failure
  9. 9. Single Point of Failure M Multiple
  10. 10. Redundancy! Redundancy! Solution?
  11. 11. Apache PHP MySQL Varnish Redis DNS Redundancy! Redundancy! Apache PHP MySQL Varnish Redis
  12. 12. Apache PHP Apache PHP Apache PHP Shared File System? Cron? Deployments? 1 n
  13. 13. Apache PHP Apache PHP Apache PHP “Master“
  14. 14. Cloud
  15. 15. Reference Architecture
  16. 16. Region Availability Zone Availability Zone Availability Zone
  17. 17. Varnish Magento Backend Magento Worker Database (Multi-AZ) Backend Load Balancer Frontend Load Balancer CloudFront + WAF S3 Magento Frontend … Cache Sessions
  18. 18. Building Blocks
  19. 19. Inherent FaultTolerant AWS takes care...
  20. 20. Frontend Load Balancer Backend Load Balancer Varnish Magento Frontend Magento Backend Magento Worker Database (Multi-AZ) S3 CloudFront + WAF …
  21. 21. Your Job Inherent FaultTolerant
  22. 22. EC2
  23. 23. Auto-Scaling Group
  24. 24. The biggest problem with Auto Scaling Groups is that people assume that they are about auto scaling, which they are not! https://cloudonaut.io/5-aws-mistakes-you-should-avoid/
  25. 25. Resilience Auto-Healing
  26. 26. min max desired absolutely no manual interaction!
  27. 27. min = max* = desired = 1 *set max=2 if you want to do rolling updates...
  28. 28. Type c4.xlarge Provisioning Script apt-get install lamp-server^ AMIami-47a23a30
  29. 29. AMI Type Provisioning Script ami-47a23a30 c4.xlarge apt-get install lamp-server^ bake your own AMIs
  30. 30. Frontend Load Balancer Backend Load Balancer Varnish Magento Frontend Magento Backend Magento Worker Database (Multi-AZ) S3 CloudFront + WAF … „disposable“
  31. 31. Connecting without coupling them the blocks
  32. 32. Route 53 / API/SDK/CLI Consul Service magentodb.priv -> d345....eu-west-1.rds.amazonaws.com „find all instances with tags type:Magento, env:stage “ Discovery
  33. 33. Monitoring keep an eye on all important metrics!
  34. 34. CloudWatch
  35. 35. you can’t …and that’s ok!
  36. 36. Infrastructure as Code Test Coverage Continuous Integration Automation CloudFormation
  37. 37. know your (infrastructure‘s) limits!
  38. 38. choose the right partners!
  39. 39. keep it simple, stupid!
  40. 40. not invented here syndrome
  41. 41. Follow me on twitter! My blog

×