Deploying Java Applications in the AWS Cloud<br />Carlos Conde	AWS Solutions Architecture, EMEA<br />
You are here<br />
what is a web application?<br /><ul><li>Software accessible through HTTP
Bundled in a single file containing the code and the resources needed
Different "flavours" depending on the programing language
Runs on an web application platform which provides an API on top of HTTP</li></li></ul><li>Server<br />Physical / Virtual ...
Operating System<br />Unix / Windows…<br />Server<br />Physical / Virtual<br />
Language Interpreter <br />Java / .Net / Ruby / Python… <br />Operating System<br />Unix / Windows…<br />Server<br />Physi...
HTTP Service<br />Web Server<br />Language Interpreter <br />Java / .Net / Ruby / Python… <br />Operating System<br />Unix...
Application Service <br />Library / Framework <br />HTTP Service<br />Web Server<br />Language Interpreter <br />Java / .N...
Your web apps <br />Application Service <br />Library / Framework <br />HTTP Service<br />Web Server<br />Language Interpr...
you created a fantastic webapp<br />
…now deploy it<br />
suddenly, you have to deal with infrastructure<br />and sysadmins…<br />
you have to think of:<br />how do I pick the right server size?<br />is the infrastructure reliable?<br />does it scale?<b...
once it's deployed:<br />what about … maintenance?<br />monitoring?<br />log analysis?<br />test environments?<br />new re...
web app platform in 1995<br />Perl Scripts<br />Application Service<br />mod_perl / mod_cgi<br />HTTP Service<br />apache<...
web app platform in 2010<br />User Applications<br />Application Service<br />mod_xxx / Rails / Django / Servlets…<br />HT...
Easily manage and deploy web applications in the cloud<br />
done!<br />
AWS Elastic Beanstalk web app platform<br />User Application<br />Application Service<br />Java Web Platform<br />HTTP Ser...
How do I create a web app for AWS Elastic Beanstalk ?<br />
like any other Java web app!<br />
like any other Java web app!<br />no specific API<br />
like any other Java web app!<br />no specific API<br />no specific server<br />
deploy your java apps from Eclipse<br />
multiple environments<br />
How do I manage my web app?<br />
Where is the data?<br />
works with any data store<br />
remember this?<br />
clone the production<br />
complete tests<br />
What about elasticity?<br />
remember your great app?<br />
everyone wants to use it!<br />
what about enterprise web apps?<br />more predictable patterns<br />
25%  Savings<br />during the day<br />
50%  Savings<br />during the year<br />
Elasticity is a fundamental property of the cloud that drives many of its economic benefits<br />
without elasticityyour app can't accelerate<br />
what we really need is…<br />…adjustable capacity<br />
with AWS Elastic Beanstalk<br />it's automatic!<br />
let's see how it works…<br />
6 am<br />
10 am<br />
10 am<br />
10 am<br />
7pm<br />
7 pm<br />
7pm<br />
How do I enhance reliability?<br />
what happens if an instance crashes?<br />
store session data in a database<br />Use Tomcat JDBC Session Store persistence<br />
store session data in a database<br />Use Tomcat JDBC Session Store persistence<br />+ transparent read-replicas<br />
store session data in a memcached pool<br />Using memcached session manager for Tomcat<br />
What makes AWS Elastic Beanstalk different?<br />
root access to EC2 instances<br />
use any database<br />
create custom AMIs<br />Tomcat + different JDK / native libraries, etc.<br />
no lock-in<br />Users can access underlying AWS components created by AWS Elastic Beanstalk<br />
Why not use my own Tomcat deployment?<br />
automated version deployment<br />including rollback<br />
manage all configuration changes in one place<br />
built-in monitoring and notification<br />Application health and other important events<br />
log file rotation on Amazon S3<br />
FREE!<br />no additional charge<br />pay only for the AWS resources used<br />
elastic capacity<br />
faster time to market<br />
pay for what you use<br />
automated<br />
focus on your application<br />
Upcoming SlideShare
Loading in...5
×

AWS Tech Summit - Berlin 2011 - Running Java Applications on AWS

3,204

Published on

Presentation on running Java applications on AWS using AWS Elastic Beanstalk. AWS Tech Summit, Berlin, May 2011

Published in: Technology, Education
0 Comments
11 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
3,204
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
0
Comments
0
Likes
11
Embeds 0
No embeds

No notes for slide
  • We will focus on the application front-end. Generally consists on a web application.
  • http://www.flickr.com/photos/scobleizer/3985020876/You created a great webapp and you&apos;re proud of it
  • Until then no one really used it in the real worldsuddenly, you have to deal with infrastructure
  • http://www.flickr.com/photos/mutsmuts/4695658106/You start asking yourself all sorts of questions:how to give access to your application?What about security?How do I pick the right server size?How to avoid SPOFs?Is my infrastructure reliable? Does it scale?
  • http://www.flickr.com/photos/msimdottv/3326696626I just wanted to run a webapp !!
  • Hopefully, you have AWS and … EBKit&apos;s all about &quot;removing the muck&quot;  -- Matt Wood ;)
  • Until then no one really used it in the real worldsuddenly, you have to deal with infrastructure
  • Currently dedicated to Java developers
  • Until then no one really used it in the real worldsuddenly, you have to deal with infrastructure
  • Until then no one really used it in the real worldsuddenly, you have to deal with infrastructure
  • Until then no one really used it in the real worldsuddenly, you have to deal with infrastructure
  • Scale is not only for startups … enterprises need it as well
  • Remember your great app ? Well, everyone loves it …
  • … and everyone wants to use it !
  • Public web applications typically need scale (&quot;slashdot effect&quot;, &quot;popular game&quot;, etc …)Montrer la courbe du pic et que EBK peutajouterdynamiquement des serveurs pour suivre la demande
  • … but my app is not a social website !what about enterprise apps? java very strong in the enterprisesgenerally, they are not as exciting as social apps, but still …
  • Enterprise apps also need elasticity, but in a different way
  • http://www.flickr.com/photos/purecaffeine/302682456/Ideally, you would need a cursor to dynamically adjust to the desired capacity level.It&apos;s exactly what EBK do … automatically.
  • Until then no one really used it in the real worldsuddenly, you have to deal with infrastructure
  • So let&apos;s see how it works.EBK setups for you the following components which are available in the AWS platform
  • Until then no one really used it in the real worldsuddenly, you have to deal with infrastructure
  • Until then no one really used it in the real worldsuddenly, you have to deal with infrastructure
  • Until then no one really used it in the real worldsuddenly, you have to deal with infrastructure
  • J&apos;aitoujoursditquetous les composantssontdispossur AWS …
  • Until then no one really used it in the real worldsuddenly, you have to deal with infrastructure
  • Until then no one really used it in the real worldsuddenly, you have to deal with infrastructure
  • Until then no one really used it in the real worldsuddenly, you have to deal with infrastructure
  • Until then no one really used it in the real worldsuddenly, you have to deal with infrastructure
  • Until then no one really used it in the real worldsuddenly, you have to deal with infrastructure
  • On a lance ca fin 2010
  • Faire 2 slides : un qui expliquequ&apos;on ne payeque pour l&apos;infrastructureUn autre qui presente le free tier.
  • First, a true Cloud Computing platform should provide elastic capacity, or the capacity to scale your infrastructure up and down, on demand.
  • As soon as your app is ready, you can release it on a robust platform
  • Even more importantly, you pay as you go, and pay only for what you use.As an example, you can &quot;pay as you go&quot; for a server, which means paying only a few cents per hour.You only pay for what you use, which means that if you run 3 servers now, 5 in the next hour, 2 in the following hour, you will only pay for the servers that you activated and used during these hours.
  • Automatically adjusts to your needs, scriptable
  • Last, but not least, with Cloud Computing you can automate most things, and manage your assets in a more efficient way. This allows you to focus more time on your business.
  • Faire 2 slides, AWS is all about letting you focus on your business
  • Transcript of "AWS Tech Summit - Berlin 2011 - Running Java Applications on AWS"

    1. 1. Deploying Java Applications in the AWS Cloud<br />Carlos Conde AWS Solutions Architecture, EMEA<br />
    2. 2. You are here<br />
    3. 3. what is a web application?<br /><ul><li>Software accessible through HTTP
    4. 4. Bundled in a single file containing the code and the resources needed
    5. 5. Different "flavours" depending on the programing language
    6. 6. Runs on an web application platform which provides an API on top of HTTP</li></li></ul><li>Server<br />Physical / Virtual <br />
    7. 7. Operating System<br />Unix / Windows…<br />Server<br />Physical / Virtual<br />
    8. 8. Language Interpreter <br />Java / .Net / Ruby / Python… <br />Operating System<br />Unix / Windows…<br />Server<br />Physical / Virtual<br />
    9. 9. HTTP Service<br />Web Server<br />Language Interpreter <br />Java / .Net / Ruby / Python… <br />Operating System<br />Unix / Windows…<br />Server<br />Physical / Virtual<br />
    10. 10. Application Service <br />Library / Framework <br />HTTP Service<br />Web Server<br />Language Interpreter <br />Java / .Net / Ruby / Python… <br />Operating System<br />Unix / Windows…<br />Server<br />Physical / Virtual<br />
    11. 11. Your web apps <br />Application Service <br />Library / Framework <br />HTTP Service<br />Web Server<br />Language Interpreter <br />Java / .Net / Ruby / Python… <br />Operating System<br />Unix / Windows…<br />Server<br />Physical / Virtual<br />
    12. 12. you created a fantastic webapp<br />
    13. 13. …now deploy it<br />
    14. 14. suddenly, you have to deal with infrastructure<br />and sysadmins…<br />
    15. 15. you have to think of:<br />how do I pick the right server size?<br />is the infrastructure reliable?<br />does it scale?<br />how to avoid SPOFs?<br />what about security?<br />
    16. 16. once it's deployed:<br />what about … maintenance?<br />monitoring?<br />log analysis?<br />test environments?<br />new releases?<br />
    17. 17.
    18. 18. web app platform in 1995<br />Perl Scripts<br />Application Service<br />mod_perl / mod_cgi<br />HTTP Service<br />apache<br />Language Interpreter<br />Perl<br />Operating System<br />Unix<br />Server<br />Dedicated / Collocated hardware<br />
    19. 19. web app platform in 2010<br />User Applications<br />Application Service<br />mod_xxx / Rails / Django / Servlets…<br />HTTP Service<br />Apache / Tomcat / Jetty / Nginx… <br />Language Interpreter<br />Java / .Net / PHP / Ruby / Python…<br />Operating System<br />Unix / Windows…<br />Server<br />Dedicated / Virtualized<br />
    20. 20. Easily manage and deploy web applications in the cloud<br />
    21. 21.
    22. 22.
    23. 23.
    24. 24. done!<br />
    25. 25. AWS Elastic Beanstalk web app platform<br />User Application<br />Application Service<br />Java Web Platform<br />HTTP Service<br />Tomcat<br />Language Interpreter<br />Java<br />Operating System<br />Linux<br />Server<br />Amazon EC2<br />
    26. 26.
    27. 27.
    28. 28.
    29. 29.
    30. 30.
    31. 31.
    32. 32.
    33. 33. How do I create a web app for AWS Elastic Beanstalk ?<br />
    34. 34. like any other Java web app!<br />
    35. 35. like any other Java web app!<br />no specific API<br />
    36. 36. like any other Java web app!<br />no specific API<br />no specific server<br />
    37. 37.
    38. 38. deploy your java apps from Eclipse<br />
    39. 39. multiple environments<br />
    40. 40. How do I manage my web app?<br />
    41. 41.
    42. 42.
    43. 43.
    44. 44.
    45. 45.
    46. 46. Where is the data?<br />
    47. 47. works with any data store<br />
    48. 48. remember this?<br />
    49. 49. clone the production<br />
    50. 50. complete tests<br />
    51. 51. What about elasticity?<br />
    52. 52. remember your great app?<br />
    53. 53. everyone wants to use it!<br />
    54. 54.
    55. 55. what about enterprise web apps?<br />more predictable patterns<br />
    56. 56. 25% Savings<br />during the day<br />
    57. 57. 50% Savings<br />during the year<br />
    58. 58. Elasticity is a fundamental property of the cloud that drives many of its economic benefits<br />
    59. 59. without elasticityyour app can't accelerate<br />
    60. 60. what we really need is…<br />…adjustable capacity<br />
    61. 61. with AWS Elastic Beanstalk<br />it's automatic!<br />
    62. 62. let's see how it works…<br />
    63. 63. 6 am<br />
    64. 64. 10 am<br />
    65. 65. 10 am<br />
    66. 66. 10 am<br />
    67. 67. 7pm<br />
    68. 68. 7 pm<br />
    69. 69. 7pm<br />
    70. 70.
    71. 71. How do I enhance reliability?<br />
    72. 72. what happens if an instance crashes?<br />
    73. 73.
    74. 74. store session data in a database<br />Use Tomcat JDBC Session Store persistence<br />
    75. 75. store session data in a database<br />Use Tomcat JDBC Session Store persistence<br />+ transparent read-replicas<br />
    76. 76. store session data in a memcached pool<br />Using memcached session manager for Tomcat<br />
    77. 77.
    78. 78.
    79. 79.
    80. 80. What makes AWS Elastic Beanstalk different?<br />
    81. 81. root access to EC2 instances<br />
    82. 82. use any database<br />
    83. 83. create custom AMIs<br />Tomcat + different JDK / native libraries, etc.<br />
    84. 84. no lock-in<br />Users can access underlying AWS components created by AWS Elastic Beanstalk<br />
    85. 85. Why not use my own Tomcat deployment?<br />
    86. 86. automated version deployment<br />including rollback<br />
    87. 87. manage all configuration changes in one place<br />
    88. 88. built-in monitoring and notification<br />Application health and other important events<br />
    89. 89. log file rotation on Amazon S3<br />
    90. 90. FREE!<br />no additional charge<br />pay only for the AWS resources used<br />
    91. 91.
    92. 92.
    93. 93. elastic capacity<br />
    94. 94. faster time to market<br />
    95. 95. pay for what you use<br />
    96. 96. automated<br />
    97. 97. focus on your application<br />
    98. 98. leave the muck of infrastructure management to AWS<br />
    99. 99. The value is in your app not in the platform<br />value is here<br />not here<br />
    100. 100. Thank you!<br />
    101. 101. Questions?<br />

    ×