19.10.11. Amazon Elastic Beanstalk



Similar documents
Amazon Web Services Primer. William Strickland COP 6938 Fall 2012 University of Central Florida

Chapter 9 PUBLIC CLOUD LABORATORY. Sucha Smanchat, PhD. Faculty of Information Technology. King Mongkut s University of Technology North Bangkok

JAVA IN THE CLOUD PAAS PLATFORM IN COMPARISON

Using ArcGIS for Server in the Amazon Cloud

EEDC. Scalability Study of web apps in AWS. Execution Environments for Distributed Computing

How AWS Pricing Works May 2015

Alfresco Enterprise on AWS: Reference Architecture

Background on Elastic Compute Cloud (EC2) AMI s to choose from including servers hosted on different Linux distros

How AWS Pricing Works

Scaling in the Cloud with AWS. By: Eli White (CTO & mojolive) eliw.com - mojolive.com

Deploying for Success on the Cloud: EBS on Amazon VPC. Phani Kottapalli Pavan Vallabhaneni AST Corporation August 17, 2012

Scalable Application. Mikalai Alimenkou

Amazon Web Services Yu Xiao

Scalable Architecture on Amazon AWS Cloud

CLOUD COMPUTING WITH AWS An INTRODUCTION. John Hildebrandt Solutions Architect ANZ

ur skills.com

Every Silver Lining Has a Vault in the Cloud

Introduction to Cloud Computing on Amazon Web Services (AWS) with focus on EC2 and S3. Horst Lueck

Using Amazon EMR and Hunk to explore, analyze and visualize machine data

Cloud Computing with Amazon Web Services and the DevOps Methodology.

Amazon EC2 Product Details Page 1 of 5

319 MANAGED HOSTING TECHNICAL DETAILS

How To Choose Between A Relational Database Service From Aws.Com

Cloud Computing. Adam Barker

A Comparison of Clouds: Amazon Web Services, Windows Azure, Google Cloud Platform, VMWare and Others (Fall 2012)

Cloud Models and Platforms

AWS Storage: Minimizing Costs While Retaining Functionality

This computer will be on independent from the computer you access it from (and also cost money as long as it s on )

Last time. Today. IaaS Providers. Amazon Web Services, overview

Web Application Deployment in the Cloud Using Amazon Web Services From Infancy to Maturity

Razvoj Java aplikacija u Amazon AWS Cloud: Praktična demonstracija

DISTRIBUTED SYSTEMS [COMP9243] Lecture 9a: Cloud Computing WHAT IS CLOUD COMPUTING? 2

An Introduction to Cloud Computing Concepts

Jfokus PaaS Hands-On Lab

Simple Storage Service (S3)

Last time. Today. IaaS Providers. Amazon Web Services, overview

Fault-Tolerant Computer System Design ECE 695/CS 590. Putting it All Together

Using ArcGIS for Server in the Amazon Cloud

Building Fault-Tolerant Applications on AWS October 2011

TECHNOLOGY WHITE PAPER Jan 2016

TECHNOLOGY WHITE PAPER Jun 2012

Designing Apps for Amazon Web Services

Application Security Best Practices. Matt Tavis Principal Solutions Architect

Web Application Hosting in the AWS Cloud Best Practices

Opsview in the Cloud. Monitoring with Amazon Web Services. Opsview Technical Overview

ColdFusion 10 in the Amazon AWS Cloud. Sven Ramuschkat tecracer GmbH

ArcGIS 10.3 Server on Amazon Web Services

Amazon AWS in.net. Presented by: Scott Reed

Getting Started with Amazon EC2 Management in Eclipse

Web Application Hosting in the AWS Cloud Best Practices

Storage and Disaster Recovery

Drupal in the Cloud. Scaling with Drupal and Amazon Web Services. Northern Virginia Drupal Meetup

Getting Started with AWS. Computing Basics for Linux

Introduction to DevOps on AWS

HADOOP BIG DATA DEVELOPER TRAINING AGENDA

Design for Failure High Availability Architectures using AWS

Last time. Today. IaaS Providers. Amazon Web Services, overview

Using The Hortonworks Virtual Sandbox

On- Prem MongoDB- as- a- Service Powered by the CumuLogic DBaaS Platform

Deep Security For Service Providers

Cloud Computing. AWS a practical example. Hugo Pérez UPC. Mayo 2012

Cloud computing - Architecting in the cloud

Tcl and Cloud Computing Automation

A Survey on Cloud Storage Systems

ArcGIS for Server: In the Cloud

Zend Server Amazon AMI Quick Start Guide

EXECUTIVE SUMMARY CONTENTS. 1. Summary 2. Objectives 3. Methodology and Approach 4. Results 5. Next Steps 6. Glossary 7. Appendix. 1.

GeoCloud Project Report GEOSS Clearinghouse

Getting Started with AWS. Web Application Hosting for Linux

!"#$%&'()*'+),-./)0' 9##+':,%-.;),0'

ArcGIS for Server in the Amazon Cloud. Michele Lundeen Esri

Best Practices for Using MySQL in the Cloud

Deploying Database clusters in the Cloud

Backup and Recovery of SAP Systems on Windows / SQL Server

Simone Brunozzi, AWS Technology Evangelist, APAC. Fortress in the Cloud

Amazon Web Services Student Tutorial

AWS Database Migration Service. User Guide Version API Version

Real Time Big Data Processing

Running Oracle on the Amazon Cloud

Subash Krishnaswamy Applications Software Technology Corporation

Storage Options in the AWS Cloud: Use Cases

Introduction to Cloud computing. Viet Tran

Shadi Khalifa Database Systems Laboratory (DSL)

Enterprise Cloud Computing with AWS. for internal partner use only

Reliable Data Tier Architecture for Job Portal using AWS

WEBAPP PATTERN FOR APACHE TOMCAT - USER GUIDE

OpenStack. Orgad Kimchi. Principal Software Engineer. Oracle ISV Engineering. 1 Copyright 2013, Oracle and/or its affiliates. All rights reserved.

Service Organization Controls 3 Report

Online Backup Guide for the Amazon Cloud: How to Setup your Online Backup Service using Vembu StoreGrid Backup Virtual Appliance on the Amazon Cloud

Chapter 3 Cloud Infrastructure. Cloud Computing: Theory and Practice. 1

OpenTOSCA Release v1.1. Contact: Documentation Version: March 11, 2014 Current version:

Storing and Processing Sensor Networks Data in Public Clouds

Amazon Relational Database Service. User Guide API Version

Informatica Cloud & Redshift Getting Started User Guide

Transcription:

19.10.11 Amazon Elastic Beanstalk

A Short History of AWS Amazon started as an ECommerce startup Original architecture was restructured to be more scalable and easier to maintain Competitive pressure for time-to-market Engineers still spend 70% of their time on > Scalability > Infrastructure issues > Ensuring enough computing capacity is available Must increase productivity! Solution: Define a scalable universal computing platform (Virtual) machines are the least common denominator and thus AWS (Amazon Web Services) was created! 19.10.11

What is AWS? A set of offerings Mostly IaaS (infrastructure as a Service) Very scalable Lots of customers Foundation for a lot of other cloud services Each day AWS adds the equivalent server capacity to power Amazon when it was a globale, $2.76B enterprise (about 2000) 19.10.11 3

AWS: Global Service AWS offers services globally Distributed in Regions > US-East > US-West > EU-West > Asia Pacific (Singapore) > Asia Pacific (Tokyo) > Low latency for the customer Each Region has several Availability Zones > Data center > Isolated from each other > High availability by distribution across Availability Zones SLA: Failure of one Availability Zone is acceptable 19.10.11 4

AWS Services: EC2 Elastic Computing Cloud i.e. virtual machines Can be spun up quickly (minutes) Can scale up by booting up more machines Access using ssh (Key Pairs) Firewalling / port filtering (Security Groups) IP address can be dynamically assigned to an instance (Elastic IP) Usually boot from AMIs (Amazon Machine Images) > Several available from Amazon > Others provided by the community > E.g. http://alestic.com for Ubuntu > Can create your own 19.10.11 5

AWS Services: S3 (Simple Storage Service) Storage for large files (1 byte to 5 TB) Public / private access Organized in buckets Folders etc also possible Can be downloaded using HTTP REST / SOAP interface available 99.999999999% durability and 99.99% availability of objects over a given year Sustain the concurrent loss of data in two facilities Reduced Redundancy Storage (RRS) 99.99% durability and 99.99% availability 19.10.11 6

EBS (Elastic Block Storage) Behave like raw, unformatted block devices (i.e. hard disks) Located in a specific Availability Zone Snapshots can be stored in S3 More reliable then physical hard disks EC2 usually uses EBS to store data EC2 also has local storage > Won t survive restarts > Less performance 19.10.11 7

Elastic Load Balancer Load Balancer in one Availability Zone or across Availability Zones Can detect health of EC2 instances Support sticky sessions SSL termination Supports High Availability across Availability Zones Auto Scaling: Additional service Start new EC2 instances when demand increases Stop EC2 instances when demand drops Based on CloudWatch metrics Auto Scaling + Elastic Load Balancer allow for Elastic Scaling 19.10.11 8

The Complete Picture Elastic Load Balancer EC2 EC2 EC2 Auto Scaling EBS EBS EBS 19.10.11 9

AWS: Powerful, but The building blocks for a scalable, global infrastructure are there You need to assemble them You need to deploy applications on the bare (virtual) metal You need to configure it (using CLI tools) Some support available > Amazon Cloud Formation to create templates for Cloud stacks (e.g. Drupal, WordPress, Rails application) > Rightscale has a full business based on it > Automation tools like Chef or Puppet 19.10.11 10

Enter Elastic Beanstalk Elastic Load Balancer Versioned WARs Log Files Web Interface S3 Linux OpenJDK Tomcat Linux OpenJDK Tomcat Linux OpenJDK Tomcat EC2 EC2 EC2 Auto Scaling EBS EBS EBS 19.10.11 11

Elastic Beanstalk Adds > Linux > OpenJDK > Tomcat 6/7 > Easy deployment on the nodes > Versioning for WARs on S3 > Log File storage on S3 and a nice web interface > Deployment > Monitoring > Configuration 19.10.11 12

Basic Elastic Beanstalk Features Application > Versioned WAR file saved in S3 > Environments > Environment Configurations Environment > Installation of a specific version of the WAR file > On AWS infrastructure (Elastic Load Balancer, Auto Scaling, EC2) > Has a specific URL ( http://myapp.elasticbeanstalk.com ) > Can also create your own using Route 53 (Amazon DNS service) Environment Configuration > Set of parameters (e.g. JVM, Tomcat) for an environment Configuration templates > Starting point for custom configurations 19.10.11 13

Sessions in Elastic Beanstalk Data specific to a user can be stored in a HTTP session HTTP session data has to be stored How do you deal with sessions in a cluster? In Memory > Configure Load Balancer with sticky sessions > i.e. requests for the same session always go to the same node > Implemented using Cookies > However: If node fails session data is lost In database > Configure Tomcat to use a JDBC Based Store for session http://tomcat.apache.org/tomcat-7.0-doc/config/manager.html > Use RDS (Relational Database Service) to save the data > New servers will read the session state from RDS 19.10.11 14

Elastic Beanstalk: Advantages Full access and flexibility > ssh on EC2 instances to customize > Create your own AMIs with custom software > Fine tune Tomcat options Built on established AWS services > EC2, EBS, Elastic Load Balancer, Auto Scaling New versions can be installed without downtime Other services can be used > RDS (Relational Database Service) for MySQL and Oracle > can be used for session replication on Tomcat > Your own database / other software on EC2 instances > SimpleDB for a simple yet scalable database > VPC (Virtual Private Cloud) for a secure channel to your data center > Cloudfront as a Content Delivery Network > Direct Connect: Your own direct connection from data center to EC2 19.10.11 15

Elastic Beanstalk: Getting Started Documentation at http://aws.amazon.com/documentation/elasticbeanstalk/ Different ways to use Beanstalk: > AWS toolkit for Eclipse http://aws.amazon.com/eclipse/ > AWS online console at https://console.aws.amazon.com/ > Guided tour to install your first application > Command Line Tool at http://aws.amazon.com/code/aws-elastic-beanstalk > SOAP API http://docs.amazonwebservices.com/elasticbeanstalk/latest/api/ > (Very advanced) 19.10.11 16

Amazon Elastic Beanstalk: Conclusion Combination of existing building block Very flexible Very scalable Can easily be combined with other AWS services No additional charge over AWS services 19.10.11 17