Anúncio
Anúncio

Mais conteúdo relacionado

Apresentações para você(20)

Similar a Architecting for AWS(20)

Anúncio

Mais de Amazon Web Services(20)

Anúncio

Architecting for AWS

  1. ARCHITECTING FOR AWS Carlos Conde │Solutions Architect
  2. 1. ELASTICITY 2. DESIGN FOR FAILURE 3. LOOSE COUPLING 4. SECURITY 5. PERFORMANCE
  3. # 1 ELASTICITY ●○○○○
  4. AMAZON EC2 ELASTIC COMPUTE CLOUD
  5. AMAZON CLOUDWATCH MONITORING FOR AWS RESOURCES
  6. AUTO SCALING SCALE UP/DOWN EC2 CAPACITY
  7. ELASTIC LOAD BALANCING NETWORK TRAFFIC DISTRIBUTION
  8. 6 am
  9. 10 am
  10. 10 am
  11. 10 am
  12. 7 pm
  13. 7 pm
  14. 7 pm
  15. without elasticity you can't accelerate
  16. what you really need is… …adjustable capacity
  17. # 2 DESIGN FOR FAILURE ●●○○○
  18. « Everything fails all the time » Werner Vogels CTO of Amazon
  19. YOUR GOAL Applications should continue to function even if the underlying physical hardware fails or is removed or replaced
  20. Avoid single points of failure. Assume everything fails, and design backwards.
  21. Avoid single points of failure. Assume everything fails, and design backwards.
  22. AMAZON RDS RELATIONAL DATABASE SERVICE
  23. AMAZON ROUTE 53 DOMAIN NAME SERVICE
  24. AMAZON RDS MULTI-AZ DEPLOYMENT
  25. AMAZON CLOUDWATCH ALARMS
  26. AWS BUILDING BLOCKS Inherently Fault-Tolerant Services Fault-Tolerant with the right architecture  Amazon S3  Elastic Load Balancing  Amazon EC2  Amazon SimpleDB  AWS IAM  Amazon EBS  Amazon DynamoDB  AWS Elastic  Amazon RDS  Amazon CloudFront Beanstalk  Amazon SWF  Amazon VPC  Amazon  Amazon SQS ElastiCache  Amazon SNS  Amazon EMR  Amazon SES  Amazon CloudSearch  Amazon Route53
  27. NETFLIX CHAOS MONKEY
  28. # 3 LOOSE COUPLING ●●●○○
  29. BUILD LOOSELY COUPLED SYSTEMS The looser the are coupled, the bigger they scale
  30. Create independent components
  31. Create independent components Design everything as a Black Box
  32. Create independent components Design everything as a Black Box Think in terms of services
  33. TRANSCODE RECEIVE & PUBLISH
  34. TRANSCODE RECEIVE & PUBLISH QUEUE
  35. AMAZON SQS SIMPLE QUEUE SERVICE
  36. START CHECK REJECT STOP VIDEO YES NO TOO SPAM PUBLISH SPAM? LONG? CHECK & NOTIFY YES NO SHORTEN TRANSCODE VIDEO
  37. MAINTENANCE AUDITABILITY FLEXIBILITY LOW-LEVEL
  38. WHAT ARE WE TRYING TO DO?
  39. START CHECK REJECT STOP VIDEO YES NO TOO SPAM PUBLISH SPAM? LONG? CHECK & NOTIFY YES NO SHORTEN TRANSCODE VIDEO
  40. START CHECK REJECT STOP VIDEO YES NO TOO SPAM PUBLISH SPAM? LONG? CHECK & NOTIFY YES NO SHORTEN TRANSCODE VIDEO
  41. START CHECK REJECT STOP VIDEO YES NO TOO SPAM PUBLISH SPAM? LONG? CHECK & NOTIFY YES NO SHORTEN TRANSCODE VIDEO
  42. TASKS DECISIONS STATELESS ! HISTORY
  43. STATELESS SCALES HORIZONTALLY
  44. AMAZON SWF WORKFLOW SERVICE FOR SCALABLE, RESILIENT APPLICATIONS
  45. AMAZON SWF Keeps track of :  State  Executed tasks  Timeouts  Errors
  46. WORKFLOW ACTORS
  47. DECIDERS COORDINATION LOGIC 1. Poll for work on a decision list Long polling: 60 seconds 2. Evaluate workflow execution history SWF sends full history in JSON format 3. Return decision to Amazon SWF Usually scheduling another task
  48. WORKERS COORDINATION LOGIC 1. Poll for work on a specific task list Long polling: 60 seconds 2. Execute works, send heartbeats SWF sends input data from deciders 3. Return success / failure Detailed data can be provided to deciders
  49. ALL HORIZONTAL SCALING PATTERNS APPLY
  50. NO NEW LANGUAGE TO LEARN YOUR CODE IS YOUR WORKFLOW LANGUAGE SWF MAINTAINS STATE
  51. AWS FLOW FRAMEWORK Java Library • Entire workflow can be expressed in sequential code • Integrated with Java Utils API
  52. CHAINED TASKS WITHOUT DECISIONS? RECEIVE TRANSCODE NOTIFY use AMAZON SQS
  53. TASK GRAPH WITH DECISIONS? GOOD OK RECEIVE CHECK SPAM TRANSCODE VIDEO LENGTH CHECK LONG SPAM SHORTEN PUBLISH REJECT VIDEO & NOTIFY use AMAZON SWF
  54. # 4 SECURITY ●●●●○
  55. AWS IAM IDENTITY AND ACCESS MANAGEMENT
  56. MULTI- MULTI-FACTOR AUTHENTICATION
  57. SECURITY GROUPS LAYERED SECURITY
  58. CERTIFICATIONS & COMPLIANCE  SAS 70 Type II audit  ISO 27001 Certification  Sarbanes-Oxley SOX  HIPAA healthcare  FISMA US Federal Government  DIACAP MAC III Sensitive IATO
  59.  PCI DSS Compliant LEVEL 1 SERVICE PROVIDER
  60. # 5 PERFORMANCE ●●●●●
  61. VERTICAL SCALING
  62. CLUSTER COMPUTE EIGHT EXTRA LARGE 2x Intel Xeon E5-2670, eight-core Sandy Bridge architecture 60.5 GB of memory – 3.3 TB of storage
  63. CLUSTER GPU QUADRUPLE EXTRA LARGE Intel Xeon X5570, quad-core 2x Nehalem architecture NVIDIA Tesla Fermi 2x M2050 GPUs 22 GB of memory – 1.7 TB of storage
  64. AMAZON ELASTICACHE MEMCACHED COMPATIBLE IN-MEMORY CACHE
  65. SEARCH ENGINES
  66. Relevance & Ranking
  67. Faceting
  68. Range Searching
  69. AMAZON CLOUDSEARCH FULLY-MANAGED SEARCH SERVICE
  70. +
  71. DEMOCRATIZE SEARCH Amazon CloudSearch delivers a fully-managed search service in the cloud that can be set up and running in less than 1 hour, with automatic scaling for data & traffic, at a price starting at less than $100 per month.
  72. HTTP POST author=carlos; date=2012-06-07; article=text; …
  73. MEDIA SHARING REFERENCE ARCHITECTURE
  74. HTTP POST author=carlos; date=2012-06-07; article=text; … +
  75. 1. ELASTICITY 2. DESIGN FOR FAILURE 3. LOOSE COUPLING 4. SECURITY 5. PERFORMANCE
  76. « If you're not embarrassed when you ship your first version you waited too long » Matt Mullenweg CEO & Founder of WordPress
Anúncio