AWS Webcast - Website Hosting

Post on 08-Sep-2014

1,018 views 2 download

Tags:

description

Amazon Web Services (AWS) can make hosting scalable, highly-available websites and web applications easier and less expensive for the Enterprise Education customers. Join us for an informative webinar on tools AWS provides to elastically scale your architecture to avoid underutilized resources while reducing complexity with templates, partners, and tools to do much of the heavy lifting of creating and running a website for you.

transcript

Website Hosting in the Cloud

Leo Zhadanovsky

Senior Solutions Architect

leozh@amazon.com

@leozh

AWS Global Infrastructure

Application Services

Networking

Deployment & Administration

Database Storage Compute

Compute

EC2 Virtual servers in the cloud

Elastic Compute Cloud

• Resizable compute capacity in 30+ instance types

• Reduces the time required to obtain and boot new server instances to minutes

or seconds

• Scale capacity as your computing requirements change

• Pay only for capacity that you actually use

• Choose Linux or Windows

• Deploy across Regions and Availability Zones for reliability

• Support for virtual network interfaces that can be attached to EC2 instances in

your VPC

General Purpose

Name vCPU Memory

(GiB)

m3.medium 1 3.75

m3.large 2 7.5

m3.xlarge 4 15

m3.2xlarge 8 30

Compute Optimized

Name vCPU Memory

(GiB)

c3.large 2 3.75

c3.xlarge 4 7

c3.2xlarge 8 15

c3.4xlarge 16 30

c3.8xlarge 32 60

cc2.8xlarge 32 60.5

Memory Optimized

Name vCPU Memory

(GiB)

r3.large 2 15

r3.xlarge 4 30.5

r3.2xlarge 8 61

r3.4xlarge 16 122

r3.8xlarge 32 244

Storage Optimized

Name vCPU Memory

(GiB)

Local Storage

(GB)

i2.xlarge 4 30.5 1 x 800 SSD

i2.2xlarge 8 61 2 x 800 SSD

i2.4xlarge 16 122 4 x 800 SSD

i2.8xlarge 32 244 8 x 800 SSD

hs1.8xlarge 16 117 24 x 2048

GPU Instances

Name vCPU Memory

(GiB)

g2.2xlarge 8 15

Cost Optimized Instances

Name vCPU Memory

(GiB)

t2.micro 1 1

t2.small 1 2

t2.medium 2 4

Compute

EC2 Virtual servers in the cloud

Amazon Machine Image

• Building blocks of EC2 instances

• An AMI is like a template of a computer's root volume.

• Can be public or private and shared with other accounts

• Create hardened or gold “Images” of your EC2 infrastructure

• Copy AMIs between regions

Compute

EC2 Virtual servers in the cloud

Elastic Block Storage (EBS)

• Use for persistent storage from 1GB – 1TB

• Can use to create RAID configuration for a server

• Off-instance block storage that persists independently

• Storage volumes for use with Amazon EC2 instances – create, attach, backup,

restore and delete

• Can be attached to a running Amazon EC2 instance and exposed as a block

device for raw or formatted (file system) access

• Snapshots are durably saved to S3

• Ideal use cases:

– OS Boot device / root file system; secondary volumes/file systems

– Typical basis for database storage

– Raw block devices for RAID, some databases

• Available in both standard and provisioned IOPS (up to 4k IOPS)

Compute

EC2 Virtual servers in the cloud

Auto Scaling

• Client Defined Business Rules

• Scale your Amazon EC2 capacity automatically once you define the conditions

(may be 1000’s of servers)

• Can scale up just a little…doesn’t need to be massive number of servers (may

be simply 2 servers)

• Well suited for applications that experience variability in usage

• Set minimum and maximum scaling policies

• Alternate Use is for Fault Tolerance

Compute

EC2 Virtual servers in the cloud

Elastic Load Balancing

• Supports the routing and load balancing of HTTP, HTTPS and generic TCP

traffic to EC2 instances

• Supports SSL termination and Proxy protocol

• Supports health checks to ensure detect and remove failing instances

• Dynamically grows and shrinks required resources based on traffic

• Seamlessly integrates with Auto-scaling to add and remove instances based

on scaling activities

• Single CNAME provides stable entry point for DNS configuration

• Supports internal load balancing within a VPC

AWS Global Infrastructure

Application Services

Networking

Deployment & Administration

Database Storage Compute Database

Database

DynamoDB Scalable NoSQL Data Store

Relational Database Service

• Fully-managed, tuned MySQL, PostgreSQL, Oracle 11g, or MS SQL

• Cost-efficient and resizable capacity

• Manages time-consuming database admin tasks

• Code, applications, and tools you already use today work seamlessly

• Automatically patches the database software and backs up your database

• Flexible Licensing: BYOL or License Include

• Multi-AZ deployment option for MySQL, PostgreSQL and Oracle

• Cross-Region Read Replica support for MySQL

RDS Managed Relational Database Service

AWS Global Infrastructure

Application Services

Networking

Deployment & Administration

Database Storage Compute

Deployment & Administration

Deployment & Administration

IAM Secure AWS Access Control

CloudFormation

• Create templates of stack of resources

• Deploy stack from template with runtime parameters

• Templates are simple JSON formatted text files

• CloudFormer supports generating templates from running environments

CloudWatch Resource Monitoring

CloudFormation Templated AWS Resource Creation

"Resources" : {

"Ec2Instance" : {

"Type" : "AWS::EC2::Instance",

"Properties" : {

"SecurityGroups" : [ { "Ref" : "InstanceSecurityGroup" } ],

"ImageId" : { "Fn::FindInMap" : [ "RegionMap", { "Ref" : "AWS::Region" }, "AMI" ]},

"Tags" : [{

"Key" : "MyTag",

"Value" : "TagValue"

}]

}

},

Deployment & Administration

IAM Secure AWS Access Control

Elastic Beanstalk

• Simply upload your application (Java, NET, PHP, Node.js, Ruby and Python)

• Automatically handles the deployment details of capacity provisioning, load

balancing, auto-scaling, and application health monitoring

• Retain full control over the AWS resources powering your application

CloudWatch Resource Monitoring

CloudFormation Templated AWS Resource Creation

Elastic Beanstalk AWS Application Container

Deployment & Administration

IAM Secure AWS Access Control

OpsWorks

• DevOps service for applications in the AWS cloud

• Helps manage complete application lifecycle:

– Resource provisioning

– Configuration management

– Application deployment

– Software updates

– Monitoring

– Access control

• Visualized through application layers

• Uses Chef recipes used to deploy and configure software components on EC2

instances

CloudWatch Resource Monitoring

CloudFormation Templated AWS Resource Creation

Elastic Beanstalk AWS Application Container

OpsWorks DevOps Application Management

Architect for High Availability

1. Use Multiple

Availability Zones

2. Use Amazon RDS with

Replicas and Standby

3. Use Amazon Auto

Scaling groups

4. Use Amazon Elastic

Load Balancing

A lot of options…

• Configuration Management Systems

– Puppet

– Chef

– Saltstack

• Deployment Frameworks

– Elastic Beanstalk

– OpsWorks

– Ansible

– Fabric

– Capistrano

• Infrastructure Management

– CloudFormation

LIVE DEMO

Q&A

Leo Zhadanovsky

leozh@amazon.com

@leozh