Enterprise Dev and Test on AWS

2,784 views

Published on

ANZ Lunch and Learn Series on Enterprise Development and Test on AWS.

Published in: Technology
1 Comment
10 Likes
Statistics
Notes
  • how can i print the slides and make notes?
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
No Downloads
Views
Total views
2,784
On SlideShare
0
From Embeds
0
Number of Embeds
82
Actions
Shares
0
Downloads
0
Comments
1
Likes
10
Embeds 0
No embeds

No notes for slide
  • Vertical scaling on commodity hardware. Perfect for Hadoop.
  • SERVICE
  • Defaults to min 1
  • Log files and application versions in S3
  • Vertical scaling on commodity hardware. Perfect for Hadoop.
  • Vertical scaling on commodity hardware. Perfect for Hadoop. 100 instances in Syd
  • Each autoscaling group uses a different set of AMIAMI-B contains the test code.
  • Build websites that sleep at night. Build machines only live when you need it
  • Build websites that sleep at night. Build machines only live when you need it
  • Build websites that sleep at night. Build machines only live when you need it
  • Build websites that sleep at night. Build machines only live when you need it
  • Shell started provisioning AWS services in April 2010 The Shell Foundation Platform – an IT framework – is AWS approvedThat means that the Center of Excellence has a pre-approved framework that allows LOBs to deploy cloud-approved applications onto AWSThe Shell Foundation Platform is a framework used by all new projects utilizing on-demand cloud services. The SFP is certified to run on AWS. Compliant applications built on the SFP are able to be run in production on AWS. Development and Test Environments are considered AWS ready within a VPC and may run on AWSCore operational applications running in production on AWSThe business is divided into upstream (research, extraction, production) and downstream (distribution and sales) applicationsShell is running a number of downstream applications – enterprise applications that operate the retail business – in production in the AWS CloudShell is running several development and test environments in the AWS Cloud
  • Enterprise Dev and Test on AWS

    1. 1. Enterprise Dev and Test Lunch and Learn Series Joe Ziegler – AWS Technical Evangelist @jiyosub Credit : Ryan Shuttleworth
    2. 2. Development & test Explore AWS benefits with a ‘non-production’ use caseCreate agility in development & test whilst ‘learning cloud’ Exercise elasticity and automation to real advantage
    3. 3. AgendaWhy AWS for development & test?AWS services that can be employedCommon dev-test patternsWhere to go next
    4. 4. Why AWS for development & test?
    5. 5. ReusableAutomated Elastic
    6. 6. Common traitsDisposable Numerous
    7. 7. Projects start and stop frequentlyRequired for short period of timeGolden masters preferredDisposable Numerous
    8. 8. Projects start and stop frequently Many environments support an appRequired for short period of time Preservation of known configurationsGolden masters preferred Overlapping development cyclesDisposable Numerous
    9. 9. Projects start and stop frequently Many environments support an appRequired for short period of time Preservation of known configurationsGolden masters preferred Overlapping development cyclesDevelopment & test in the cloud
    10. 10. Development & test in the cloud
    11. 11. Take lots of it when you need it Unlimited elastic capacity Development & test in the cloud
    12. 12. Take lots of it when you need it Throw it away when you don’t Unlimited elastic capacity Cost optimization Development & test in the cloud
    13. 13. Take lots of it when you need it Throw it away when you don’t Unlimited elastic capacity Cost optimization Development & test in the cloud Preserve it for future reference Durable imaging & storage
    14. 14. Take lots of it when you need it The elastic datacenter Spinning up environments as you need them Packaged applications Development and test frameworks in AWS Testing at scale Rolling out to production
    15. 15. Take lots of it when you need it The elastic datacenter Spinning up environments as you need them Packaged applications Development and test frameworks in AWS Testing at scale Rolling out to production
    16. 16. Freeze dried essentials…Generic image Custom building block
    17. 17. Extend on-premise environments…
    18. 18. with Amazon VPC…
    19. 19. Populate as demand dictates…
    20. 20. Connect over dedicated links…
    21. 21. And turn it off when you are done
    22. 22. Take lots of it when you need itThrow it away when you don’tPreserve it for future reference
    23. 23. Distributed Agile helped by
    24. 24. ContinuousDelivery helped by
    25. 25. Take lots of it when you need it The elastic datacenter Spinning up environments as you need them Packaged applications Development and test frameworks in AWS Testing at scale Rolling out to production
    26. 26. Do it yourself Beanstalk CloudFormation Spinning up environments in a way that suits you AMIs, snapshots, boostrappingUsing core AWS features to setup an environment to meet your needs Use console or enact through simple scripting
    27. 27. Do it yourself Beanstalk CloudFormation Spinning up environments in a way that suits you AMIs, snapshots, Managed standard boostrapping containersUsing core AWS features to set Give development & testup an environment to meet your environments to developers needs direct from IDEs Use console or enact through Configure containers to meet simple scripting your needs through properties
    28. 28. Do it yourself Beanstalk CloudFormation Spinning up environments in a way that suits you AMIs, snapshots, Managed standard Declaratively defined boostrapping containers to your requirementsUsing core AWS features to set Give development & test Take full control of complexup an environment to meet your environments to developers environments using Cloud needs direct from IDEs Formation template language Use console or enact through Configure containers to meet Generate environment simple scripting your needs through properties specifications as you build software
    29. 29. Do it yourself Beanstalk CloudFormation Spinning up environments in a way that suits you AMIs, snapshots, Managed standard Declaratively defined boostrapping containers to your requirementsUsing core AWS features to set Give development & test Take full control of complexup an environment to meet your environments to developers environments using Cloud needs direct from IDEs Formation template language Use console or enact through Configure containers to meet Generate environment simple scripting your needs through properties specifications as you build software
    30. 30. Do it yourself Beanstalk CloudFormation Quickly deploy and manage apps in AWS…
    31. 31. Do it yourself Beanstalk CloudFormation …into a range of containers .Net Java Node.js PHP Python Ruby
    32. 32. Do it yourself Beanstalk CloudFormation Application package is deployed into Beanstalk
    33. 33. Do it yourself Beanstalk CloudFormation Which creates the container in EC2 User Application Application Service HTTP Service Language Interpreter Operating System Host
    34. 34. Do it yourself Beanstalk CloudFormation Beanstalk takes care of the environment…
    35. 35. Do it yourself Beanstalk CloudFormation …adding Elastic Load Balancer…
    36. 36. Do it yourself Beanstalk CloudFormation …Auto Scaling groups
    37. 37. Do it yourself Beanstalk CloudFormation …and launching instances
    38. 38. Do it yourself Beanstalk CloudFormation …all wired into the Beanstalk framework
    39. 39. Do it yourself Beanstalk CloudFormation …and published under a CNAME
    40. 40. Do it yourself Beanstalk CloudFormation …with logs and app versions held in S3
    41. 41. Do it yourself Beanstalk CloudFormation Spinning up environments in a way that suits youAMIs, snapshots, boos Managed standard Declaratively defined trapping containers to your requirementsUsing core AWS features to set Give development & test Take full control of complexup an environment to meet your environments to developers environments using Cloud needs direct from IDEs Formation template language Use console or enact through Configure containers to meet Generate environment simple scripting your needs through properties specifications as you build software
    42. 42. Do it yourself Beanstalk CloudFormation CloudFormation components & terminology CloudFormation Template Stack JSON formatted file Framework Configured AWS services Parameter definition Stack creation Comprehensive service support Resource creation Stack updates Service event aware Configuration actions Error detection and rollback Customisable
    43. 43. Do it yourself Beanstalk CloudFormation The benefit of templated environments Procedural definition Create it programmatically Template
    44. 44. Do it yourself Beanstalk CloudFormation The benefit of templated environments Procedural definition Known configuration Create it programmatically Store stack configuration in Template source control
    45. 45. Do it yourself Beanstalk CloudFormation The benefit of templated environments Procedural definition Known configuration Create it programmatically Store stack configuration in Template source control Parameter driven Dynamic and user-driven templates
    46. 46. Do it yourself Beanstalk CloudFormation The benefit of templated environments Procedural definition Known configuration Create it programmatically Store stack configuration in Template source control Parameter driven Collaboration Dynamic and user-driven Share templates with ease as templates just files
    47. 47. Complex technology stack – development = 46 serversAll configuration and deployment manual56 days and 6 teams to build a new environmentImpact Slow project start up Only run one major project at a time Lack of innovation
    48. 48. • Developers can run up or tear down environments• Ability to stand up 8 distinct environments quickly• Time to set up environment reduced from 56 days to 6 hours
    49. 49. Take lots of it when you need it The elastic datacenter Spinning up environments as you need them Packaged applications Development and test frameworks in AWS Testing at scale Rolling out to production
    50. 50. Packaged applicationsEase the infrastructure burden when rolling out and testing upgrades/modifications
    51. 51. http://aws.amazon.com/sap/ Certification of SAP BusinessObjects business intelligence solutions and SAP Rapid Deployment Solutions (RDS) on Linux & Windows Server 2008 R2Certification of SAP Business All-in-One on Linux & Windows Server 2008 R2Certified database engines for production SAP deployments: MaxDB, DB2, MS SQL Server 2008 R2
    52. 52. Platform and applicationtemplates now availableReduce implementation times fromdays to minutes and include OracleEnterprise Linux, Oracle Database11gR2, Oracle E-BusinessSuite, Oracle JD Edwards EnterpriseOne, and Oracle PeopleSoft.
    53. 53. Take lots of it when you need it The elastic datacenter Spinning up environments as you need them Packaged applications Development and test frameworks in AWS Testing at scale Rolling out to production
    54. 54. Frameworks & environments AWS is open and flexible – build your dev-test systems Source control Project managementLeverage EC2 to run popular source Add integrated project control systems management and issue tracking Workstations Build servers Enable standard build Use EC2 horsepower to drive build developer/test workstations servers and continuous integration
    55. 55. Take lots of it when you need it The elastic datacenter Spinning up environments as you need them Packaged applications Development and test frameworks in AWS Testing at scale Rolling out to production
    56. 56. Testing at scale Create environments to support specific test types Unit & regression Load & performance Scale up and parallel run unit and Utilize spot market for generatingregression plans in a fraction of the load and test how applications time perform with auto-scaling A/B Security Run A/B scenario testing with Create sandboxes for aggressive replica stacks security testing
    57. 57. 1 instance for 100 hours =100 instances for 1 hour
    58. 58. Small instance = $10
    59. 59. Load & Performance Test
    60. 60. Bees with Machine Guns #1 Spawns EC2 Instance Contents Instances #3 Monitors My App EC2 Instance Contents Amazon CloudWatchgithub.com/newsapps/beeswithmachineguns
    61. 61. Take lots of it when you need it The elastic datacenter Spinning up environments as you need them Packaged applications Development and test frameworks in AWS Testing at scale Rolling out to production
    62. 62. Elastic Load BalancerAuto Scaling Group V1 Amazon Relational Database Service (RDS)
    63. 63. Elastic Load BalancerAuto Scaling Auto Scaling Group Group V1 V2 Amazon Relational Database Service (RDS)
    64. 64. Elastic Load BalancerAuto Scaling Auto Scaling Group Group V1 V2 Amazon Relational Database Service (RDS)
    65. 65. Elastic Load BalancerAuto Scaling Auto Scaling Group Group V1 V2 Amazon Relational Database Service (RDS)
    66. 66. Elastic LoadBalancer Auto Scaling Group V2 Amazon Relational Database Service (RDS)
    67. 67. Take lots of it when you need it Throw it away when you don’t Unlimited elastic capacity Cost optimization Development & test in the cloud Preserve it for future reference Durable imaging & storage
    68. 68. Take lots of it when you need it Throw it away when you don’t Unlimited elastic capacity Cost optimization Development & test in the cloud Preserve it for future reference Durable imaging & storage
    69. 69. Instance types On-demand instances Reserved instances Spot instances Unix/Linux instances start at 1- or 3-year terms Bid on unused EC2 capacity $0.02/hour Pay low up-front fee, receive significant hourly Spot Price based on supply/demand, Pay as you go for compute power discount determined automatically Low cost and flexibility Low Cost / Predictability Cost / Large Scale, dynamic workload handling Pay only for what you use, no up-front Helps ensure compute capacity is available commitments or long-term contracts when needed Use Cases: Use Cases: Use Cases: Applications with short term, spiky, or Applications with steady state or predictable Applications with flexible start and end times unpredictable workloads; usage Applications only feasible at very low compute Application development or testing Applications that require reserved capacity, prices including disaster recovery
    70. 70. Turn it off when not in use Daily CPU Load 14 12 10 Load 8 6 4 2 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 Hour
    71. 71. Turn it off when not in use Daily CPU Load 14 12 10 Load 8 6 4 25% Savings 2 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 Hour
    72. 72. Turn it off when not in use Auto-scaling Auto-scaling by schedule by schedule 14 12 10 Load 8 6 4 2 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 Hour
    73. 73. Take lots of it when you need it Throw it away when you don’t Unlimited elastic capacity Cost optimization Development & test in the cloud Preserve it for future reference Durable imaging & storage
    74. 74. Take lots of it when you need it Throw it away when you don’t Unlimited elastic capacity Cost optimization Development & test in the cloud Preserve it for future reference Durable imaging & storage
    75. 75. Disposable environments can be recreatedDispose for cost optimization, but preserve critical configurations
    76. 76. Disposable environments can be recreated Dispose for cost optimization, but preserve critical configurations AMIs Create a catalog of AMIs foreach iteration of an application Stored in S3
    77. 77. Disposable environments can be recreated Dispose for cost optimization, but preserve critical configurations AMIs Snapshots Create a catalog of AMIs for Save disk images with ‘frozen’each iteration of an application data sets and attach to instances Stored in S3 when needed
    78. 78. Disposable environments can be recreated Dispose for cost optimization, but preserve critical configurations AMIs Snapshots Templates Create a catalog of AMIs for Save disk images with ‘frozen’ Source control infrastructureeach iteration of an application data sets and attach to instances templates with every Stored in S3 when needed application version
    79. 79. Disposable environments can be recreated Dispose for cost optimization, but preserve critical configurations AMIs Snapshots Templates Create a catalog of AMIs for Save disk images with ‘frozen’ Source control infrastructureeach iteration of an application data sets and attach to instances templates with every Stored in S3 when needed application version Roll back and recreate an environment for any given application version
    80. 80. “The AWS Cloud brings business agility as Shell is able to deploy services much more quickly” Johan Krebbers Vice President of ArchitectureThe Story The BenefitsGlobal oil and gas company No minimum commitment up front and pay per use brings significant savingsUsing AWS since 2010 Fast provisioning within minutes for manyOperationalising their cloud strategy applicationsShell Foundation Platform – an IT framework – is Elasticity – the ability to expand and contract ITAWS approved infrastructure as neededCore operational applications running in productionon AWSDevelopment and test environments running onAWS
    81. 81. Where to go next
    82. 82. http://aws.typepad.comhttp://aws.amazon.com/whitepapers
    83. 83. Summary
    84. 84. The cloud makes development & test easyYou can make extensive savings by leveraging elasticityProvides unique toolsets to help you create and manage environmentsLet’s you perform at scale and agility beyond traditional physical environments
    85. 85. aws.amazon.com get started on the free tier

    ×