SlideShare uma empresa Scribd logo
1 de 145
Baixar para ler offline
AWS Developer Fundamentals 
Josh Padnick 
October 18, 2014 
Desert Code Camp
What We’ll Cover
Forests & Trees 
The Details The Big Picture
The Big Picture 
• What is AWS? 
• AWS for Specific Use Cases 
• Key Ideas in AWS
The Details 
• Running Servers (EC2) 
• Storing Data (S3)
But we only have 60 minutes. 
So we’ll move fast.
About Me
About Me 
Josh Padnick 
josh.padnick@gmail.com 
602.432.3789 
http://JoshPadnick.com 
• Founded healthcare IT company where we used AWS for 5+ years. 
• Built three major products for hundreds of thousands of users on AWS. 
• Hosted 150+ websites on AWS. 
• Professional AWS Consultant.
What is AWS?
It’s what Amazon built internally to 
power their own site. 
They architected it so abstractly that it 
wasn’t even specific to Amazon!
AWS is a suite of IT services used 
to build or manage software 
faster, cheaper, and at scale.
• Compute Services give you on-demand virtual machines. 
• Storage Services let you store large blocks of unstructured content. 
• Database Services allow you to store structured and unstructured data in a variety of ways. 
• Networking Services provide technologies for identifying (DNS) resources and connecting 
resources to on-premises assets. 
• Messaging Services enable rich communication scenarios between systems or components. 
• Content Delivery Services provide edge locations for frequently accessed content. 
• Deployment and Management Services enable packaging, securing, and monitoring AWS 
applications. 
• Big Data Services include tools for ingesting, processing, and storing huge amounts of data. 
• Mobile Services include tools for sending push notifications, and streamlining app 
development. 
SOURCE: “AWS Developer Fundamentals” by Richard Seroter. Pluralsight.
Now let’s look at the AWS console.
Primary AWS Competitors
Magic Quadrant for Public Cloud Services 
Source: Gartner (July 2014)
Secondary AWS Competitors 
Email File Sharing DNS / Domain Reg.
So how do you learn about 33 
different services?
It kind of reminds me of this place.
• Your first experience is overwhelming. 
• No one person needs all of Home Depot. 
• Each person gets just what they need.
AWS is the same. 
Don’t try to learn everything. 
Instead, pick your use case, and get to know 
only the aisles you need.
Use Cases
Major AWS Use Cases 
• Scalable web app 
• Big data 
• Mobile app support 
• Backup & storage 
• Ad hoc (email, DNS, queueing)
AWS Big Data Services
AWS Backup & Storage Services
Today’s Talk is about using AWS 
with the Scalable Web App.
For the scalable web app, 
80%+ of your work will be in just three services.
If you want to explore more 
about any use case, check out 
http://aws.amazon.com/solutions/ 
I listed just 5 use cases and AWS lists 18! Think of my 5 as the major forests. 
AWS is just being extra helpful with every tree it can think of.
We’ll go into detail on that shortly. 
First, let’s talk about: 
Key Ideas in AWS
Key Idea #1 
Make your app resilient by using 
global regions & availability zones 
INSPIRATION: “AWS Developer Fundamentals” by Richard Seroter. Pluralsight.
AWS Regions Throughout the World 
Region = Data Center
In the AWS API, use the region’s official name.
Each AWS Region has at least 2 
Availability Zones.
Key Idea #1 
• Building across regions is very challenging. 
• Building across availability zones is straightforward. 
• You can basically purchase (in time and money) the 
amount of resilience you want!
Key Idea #2 
Pay only for what you need.
Almost nothing in AWS has upfront fees.
Key Idea #2 
• There are almost never upfront fees in AWS. 
• You pay only for what you use. 
• EC2 Instances per hour 
• S3 files per GB stored / transferred 
• etc. 
• You can stop and start instances as you need them 
before you launch your app. 
• You can start with small (or even burstable!) instances, 
and easily change your instance type later.
Key Idea #3 
Architect for failure.
http://status.aws.amazon.com/
Key Idea #3 
• Early versions of the AWS docs just stopped short of telling you 
instances would fail on a periodic basis. 
• Instances are now very reliable, but you should still assume they 
could fail at any time. 
• When they inevitably do, this is not “something unexpected”, it’s 
just another state you expect your infrastructure may enter. 
• On the other hand, all AWS services have built in reliability / 
fault tolerance. 
• Note that there have been isolated stories of businesses going 
under when their AWS account was hijacked. So, it’s always a 
good idea to keep your most important data on a different 
AWS account or location.
Key Idea #4 
Everything’s an API call away. 
Sometimes exclusively.
Key Idea #4 
• AWS builds their APIs first. 
• Then they upgrade their AWS Console. 
• Sometimes the console only implements a subset of the 
API! 
• It would be possible to build a complete AWS console 
on your own using only their APIs. Often used for cloud 
management providers, other partner vendors.
Key Idea #5 
Plan to scale out, not up.
Key Idea #5 
• AWS does give you many ways to “scale up”. 
• In the short-term, “scale up” is definitely easier. 
• But it’s best if you build your architecture to “scale out” 
• This is most challenging at the database level. Which is 
why AWS offers RDS and DynamoDB. 
• Even if you can’t build perfectly “horizontally scaling” 
architectures, you should have that in mind as the ideal.
Let’s talk details.
AWS for 
Scalable Web Apps
Let’s describe each of 
these AWS services. 
(We’ll be brief for some)
EC2 
Virtual Servers in the Cloud
EC2 
Use Case: 
• Launch Linux and Windows servers in the cloud.
Let’s setup a server 
using non-AWS lingo
Server
Server 
Hard Drive
Server 
Hard Drive 
Firewall
Server 
Hard Drive 
Firewall 
SSH Keys
Server 
Hard Drive 
Firewall 
SSH Keys 
IP Address
Now let’s use 
AWS lingo.
EC2 Instance 
EBS Volume 
Security Group 
Key Pairs 
Elastic IP
Let’s take these one at a time.
EC2 Instance
EC2 Instances Come in Multiple Sizes 
They vary along just 3 dimensions 
CPU Memory Network
CATEGORY INSTANCE TYPES 
General 
Purpose 
T2, M3 
Compute 
Optimized 
C3 
Memory 
Optimized 
R3 
GPU G2 
Storage Optimized I2, HS1
Instance 
Type 
vCPU Memory 
(GiB) 
Storage 
(GB) 
Network 
ing 
Physical 
Process 
Clock 
Speed 
Intel® 
AES-NI 
Intel® 
AV 
Intel® 
Turbo 
EBS 
OPT 
Enhance 
t2.micro 1 1 EBS d 
Only 
Low to 
Moderat 
Intel 
Xeon 
2.5 Yes Yes Yes - - 
t2.small 1 2 EBS 
Only 
Low to 
Moderat 
Intel 
Xeon 
2.5 Yes Yes Yes - - 
t2.mediu 
m 
2 4 EBS 
Only 
Low to 
Moderat 
Intel 
Xeon 
2.5 Yes Yes Yes - - 
m3.medi 
um 
1 3.75 1 x 4 
SSD 
Moderat 
e 
Intel 
Xeon 
2.5 Yes Yes Yes - - 
m3.large 2 7.5 1 x 32 
SSD 
Moderat 
e 
Intel 
Xeon 
2.5 Yes Yes Yes - - 
m3.xlarg 
e 
4 15 2 x 40 
SSD 
High Intel 
Xeon 
2.5 Yes Yes Yes Yes - 
m3.2xlar 
ge 
8 30 2 x 80 
SSD 
High Intel 
Xeon 
2.5 Yes Yes Yes Yes - 
c3.large 2 3.75 2 x 16 
SSD 
Moderat 
e 
Intel 
Xeon 
2.8 Yes Yes Yes - Yes 
c3.xlarge 4 7.5 2 x 40 
SSD 
Moderat 
e 
Intel 
Xeon 
2.8 Yes Yes Yes Yes Yes 
c3.2xlarg 
e 
8 15 2 x 80 
SSD 
High Intel 
Xeon 
2.8 Yes Yes Yes Yes Yes 
c3.4xlarg 
e 
16 30 2 x 160 
SSD 
High Intel 
Xeon 
2.8 Yes Yes Yes Yes Yes 
c3.8xlarg 
e 
32 60 2 x 320 
SSD 
10 
Gigabit 
Intel 
Xeon 
2.8 Yes Yes Yes - Yes 
g2.2xlarg 
e 
8 15 1 x 60 
SSD 
High Intel 
Xeon 
2.6 Yes - - Yes - 
r3.large 2 15.25 1 x 32 
SSD 
Moderat 
e 
Intel 
Xeon 
2.5 Yes Yes Yes - Yes 
r3.xlarge 4 30.5 1 x 80 
SSD 
Moderat 
e 
Intel 
Xeon 
2.5 Yes Yes Yes Yes Yes 
r3.2xlarg 
e 
8 61 1 x 160 
SSD 
High Intel 
Xeon 
2.5 Yes Yes Yes Yes Yes 
r3.4xlarg 
e 
16 122 1 x 320 
SSD 
High Intel 
Xeon 
2.5 Yes Yes Yes Yes Yes 
r3.8xlarg 
e 
32 244 2 x 320 
SSD 
10 
Gigabit 
Intel 
Xeon 
2.5 Yes Yes Yes - Yes 
i2.xlarge 4 30.5 1 x 800 
SSD 
Moderat 
e 
Intel 
Xeon 
2.5 Yes Yes Yes Yes Yes 
i2.2xlarg 
e 
8 61 2 x 800 
SSD 
High Intel 
Xeon 
2.5 Yes Yes Yes Yes Yes 
i2.4xlarg 
e 
16 122 4 x 800 
SSD 
High Intel 
Xeon 
2.5 Yes Yes Yes Yes Yes 
i2.8xlarg 
e 
32 244 8 x 800 
SSD 
10 
Gigabit 
Intel 
Xeon 
2.5 Yes Yes Yes - Yes 
hs1.8xlar 
ge 
16 117 24 x 
2,000 
10 
Gigabit 
Intel 
Xeon 
2 Yes - - - -
CATEGORY INSTANCE TYPES 
General 
Purpose 
T2, M3 
• When your’e starting out, you can just use the general 
purpose line. 
• The T2 line is especially good for servers that often sit idle, 
but then need a burst of performance (e.g. low-traffic web 
servers, build servers, etc.)
Instance Type vCPU Memory (GiB) Storage (GB) Networking 
Performance 
Physical 
Processor 
Clock Speed 
(GHz) 
t2.micro 1 1 EBS Only Low to Moderate Intel Xeon family 2.5 
t2.small 1 2 EBS Only Low to Moderate Intel Xeon family 2.5 
t2.medium 2 4 EBS Only Low to Moderate Intel Xeon family 2.5 
m3.medium 1 3.75 1 x 4 SSD Moderate 
Intel Xeon 
E5-2670 v2* 2.5 
m3.large 2 7.5 1 x 32 SSD Moderate 
Intel Xeon 
E5-2670 v2* 
2.5 
m3.xlarge 4 15 2 x 40 SSD High 
Intel Xeon 
E5-2670 v2* 2.5 
m3.2xlarge 8 30 2 x 80 SSD High 
Intel Xeon 
E5-2670 v2* 2.5
EBS Volume
EBS Volumes are basically 
“virtual hard drives” 
• EBS = Elastic Block Store 
• You can provision hard drives at the block level, 
which means AWS doesn’t care which file system 
you format it with (e.g. EXT4, ZFX, NTFS) 
• You can even create RAID arrays. 
• If you need extra performance, you can pay for 
higher IOPS.
You can create EBS volumes 
directly. But usually, you create 
them as part of your EC2 instance.
But you may want to attach 
multiple EBS volumes to the 
same EC2 instance.
Key Pairs
A key pair is just an SSH private key 
+ its corresponding public key.
• You can upload your own keys. 
• Or AWS creates them for you. 
• Linux 
• Use your key to SSH into the instance 
• Windows 
• Use your key to get the RDP password of the instance
• Best practice is to use a bastion host. 
• This means you have one instance that is accessible 
via SSH from the outside (locked down only to 
specific IP addresses). 
• Once in the bastion host, then you can SSH into 
other instances.
Security Group
Security Group = 
Firewall for an Instance
• Create one security group for each “tier” in your app. 
• You should have a single security group for allowing 
“outside access” from specific IPs (the bastion host 
security group) 
• Be paranoid and restrictive. There are lots of bots 
out there!
Elastic IP
You can get a public IP address from AWS. 
Then you assign it to any instance! 
You can re-assign it later!
Elastic IP 
EC2 Instance A EC2 Instance B
Elastic IP 
X 
EC2 Instance A EC2 Instance B
Elastic IP 
X 
EC2 Instance A EC2 Instance B
• This means you can re-assign an elastic IP address 
from a failed instance to a working one. 
• Basically, your server and your IP address are no 
longer bound to each other.
EC2 Instance 
EBS Volume 
Security Group 
Key Pairs 
Elastic IP
Now we’re ready to 
launch an instance!
What’s an AMI?
EBS Volume 
Part 2
EBS Volumes are basically 
“virtual hard drives” 
• We can take snapshots of an EBS volume. 
• This means we can instantly clone the EBS volume 
and attach it to another instance.
EC2 Instances are “backed” by 
EBS Volumes 
• We can take snapshots of these EBS volumes, too. 
• When we take a snapshot of EBS volumes as part 
of an EC2 instance, we wind up creating an 
Amazon Machine Image.
Amazon Machine Image 
is used to launch … 
EBS Volume 
EC2 Instance
AWS has prepared useful AMIs for us. 
• Windows Server 2008 / 2012 
• With or without paid Microsoft software 
• Multiple Linux distros 
• Ubuntu 
• Suse 
• Amazon Linux
Reserved Instances 
• Use Reserved Instances to save money. These 
are a billing concept only; they have no effect on 
anything else. 
• If you can prepay for 1 year, save 40%. 
• If you can prepay for 3 years, save 60%
VPC 
Isolated Cloud Resources
Let’s setup a network 
using non-AWS lingo
Server Server
Subnet B 
Subnet A 
Server Server
“Subnet Firewall” “Subnet Firewall” 
Subnet B 
Subnet A 
Server Server
Network 
“Subnet Firewall” “Subnet Firewall” 
Subnet B 
Subnet A 
Server Server
Now let’s use the AWS lingo
VPC 
Network ACL Network ACL 
Subnet B 
Subnet A 
Instance Instance
VPC Recommendations 
• VPCs are a great way to logically group your instances into 
different “clusters”, both for security and management. 
• If you can, setup one public (exposed to Internet) subnet 
each in two different Availability Zones (AZ’s), and one 
private subnet each two different AZ’s. 
• Use Network ACLs for high-level filtering rules (e.g. 
connecting Subnet A to Subnet B). Instance-level rules have 
an additional management overhead.
S3 
Scalable Storage in the Cloud
S3 
Use Cases: 
• Store files in the cloud for low-latency access
Let’s Look at S3. 
Using AWS lingo.
us-west-2 region us-east-1 region
us-west-2 region us-east-1 region 
S3 Bucket “A” S3 Bucket “A” 
S3 Bucket “B” S3 Bucket “B”
S3 Buckets 
• Buckets are “holding tanks” for files and folders. 
• Bucket names must be globally unique across an AWS 
region. For example, you can’t have two buckets 
named “A” in the us-west-2 region. 
• Buckets have properties which govern all files stored 
in them (examples shortly)
Surprising Things About 
S3 Buckets 
• Use a bucket as a way to host static websites!
Cool Things About 
S3 Buckets 
• If enabled, you can preserve, retrieve, and 
restore every version of every object stored in 
this bucket. 
• Of course, you also pay to store every version of 
every object, so tread carefully here.
Neat Things About 
S3 Buckets 
• You can setup “Rules” for a bucket which take effect 
on all files or only certain folders in that bucket. 
• Example: auto-delete all files X days after they’re created 
• Example: automatically move all files to Glacier X days 
after they’re created. 
• Example: first delete, then archive.
Helpful Things About 
S3 Buckets 
• You can limit permissions to buckets by IAM 
Roles. 
• More on IAM in a bit. But for now, note that you can 
allow only certain instances or certain logged in users 
to your AWS console to access certain S3 folders.
us-west-2 region us-east-1 region 
S3 Bucket “A” S3 Bucket “A” 
S3 Bucket “B” S3 Bucket “B”
us-west-2 region us-east-1 region 
Files and Folders 
S3 Bucket “A” S3 Bucket “A” 
S3 Bucket “B” S3 Bucket “B”
Files and Folders in S3 
• Basically works like a standard file system. 
• Files can have granular access permission 
• Files can have public read permissions or not. 
• Files can be accessed with a temporary token so that 
when a user downloads one in your app, he can’t take 
that URL and use it again the next day.
Helpful Things About 
Files and Folders in S3 
• Files can be encrypted server-side by AWS 
• You basically check a box indicating you want encryption. 
• Then you trust that Amazon actually encrypts it. AWS handles 
all encryption on their end. You don’t change anything on yours. 
• Costs nothing. 
• If you want to supply the encryption keys, AWS will support that, 
too.
S3 Recommendations 
• Namespace your buckets (e.g. “padnick-dcc14”) 
• Intelligently use auto-delete rules to save on cost. If you’re 
paranoid about needing the files, then archive to Glacier. 
• Use very thoughtful folder names in your buckets, then you can 
apply folder-specific rules. e.g. “builds”, “backup”, “temp”, etc. 
• S3 is a great place for key storage (but obviously doesn’t 
provide key management).
IAM 
Secure AWS Access Control
• Use IAM to give each member of your team a 
unique login. 
• Never share your root password among 
everyone! 
• You can also use IAM to give permissions to 
individual EC2 instances for other AWS 
resources (e.g. S3 buckets)
IAM Recommendations 
• Setup your master account, and then put that 
user/pass in a vault and never give it to anyone! 
• Each engineer should have his own IAM login. 
• Consequences of a bad actor accessing your AWS 
account are catastrophic, so please use MFA. 
• Even if you don’t plan on using IAM roles, create 
them and assign them to instances at launch time.
DynamoDB 
Managed NoSQL Databases 
ElastiCache 
Managed Cache Services 
RDS 
Managed SQL Stores
• This is basically AWS setting up, scaling, and 
managing your own X for you, where X = 
• MySQL, PostrgreSQL, Oracle 
• MongoDB 
• Redis, Memcached
SES 
Use AWS as your email service
Summary
• Pick your AWS use case, then dive in. 
• EC2, VPC, and S3 are the most popular 
services. 
• Take the time to learn about IAM. It’s not 
difficult, and will dramatically improve your 
security posture. 
• The best way to learn is by doing!
Thank you, 
Now go build something cool! 
Josh Padnick 
josh.padnick@gmail.com 
602.432.3789 
http://JoshPadnick.com

Mais conteúdo relacionado

Mais procurados

Opscode Webinar: Managing Your VMware Infrastructure with Chef
Opscode Webinar: Managing Your VMware Infrastructure with ChefOpscode Webinar: Managing Your VMware Infrastructure with Chef
Opscode Webinar: Managing Your VMware Infrastructure with ChefChef Software, Inc.
 
Chef vs Puppet vs Ansible vs Saltstack | Configuration Management Tools | Dev...
Chef vs Puppet vs Ansible vs Saltstack | Configuration Management Tools | Dev...Chef vs Puppet vs Ansible vs Saltstack | Configuration Management Tools | Dev...
Chef vs Puppet vs Ansible vs Saltstack | Configuration Management Tools | Dev...Simplilearn
 
Velocity2011 chef-workshop
Velocity2011 chef-workshopVelocity2011 chef-workshop
Velocity2011 chef-workshopjtimberman
 
Introduction to Chef: Automate Your Infrastructure by Modeling It In Code
Introduction to Chef: Automate Your Infrastructure by Modeling It In CodeIntroduction to Chef: Automate Your Infrastructure by Modeling It In Code
Introduction to Chef: Automate Your Infrastructure by Modeling It In CodeJosh Padnick
 
Opscode Webinar: Cooking with Chef on Microsoft Windows
Opscode Webinar: Cooking with Chef on Microsoft WindowsOpscode Webinar: Cooking with Chef on Microsoft Windows
Opscode Webinar: Cooking with Chef on Microsoft WindowsChef Software, Inc.
 
Infrastructure Automation with Chef
Infrastructure Automation with ChefInfrastructure Automation with Chef
Infrastructure Automation with ChefJonathan Weiss
 
Infrastructure Automation with Chef & Ansible
Infrastructure Automation with Chef & AnsibleInfrastructure Automation with Chef & Ansible
Infrastructure Automation with Chef & Ansiblewajrcs
 
Continuous Integration and Deployment Best Practices on AWS (ARC307) | AWS re...
Continuous Integration and Deployment Best Practices on AWS (ARC307) | AWS re...Continuous Integration and Deployment Best Practices on AWS (ARC307) | AWS re...
Continuous Integration and Deployment Best Practices on AWS (ARC307) | AWS re...Amazon Web Services
 
Automated Deployments with Ansible
Automated Deployments with AnsibleAutomated Deployments with Ansible
Automated Deployments with AnsibleMartin Etmajer
 
Server Installation and Configuration with Chef
Server Installation and Configuration with ChefServer Installation and Configuration with Chef
Server Installation and Configuration with ChefRaimonds Simanovskis
 
Ansible new paradigms for orchestration
Ansible new paradigms for orchestrationAnsible new paradigms for orchestration
Ansible new paradigms for orchestrationPaolo Tonin
 
Chef-Zero & Local Mode
Chef-Zero & Local ModeChef-Zero & Local Mode
Chef-Zero & Local ModeMichael Goetz
 
Introduction to Chef
Introduction to ChefIntroduction to Chef
Introduction to ChefKnoldus Inc.
 
To Build My Own Cloud with Blackjack…
To Build My Own Cloud with Blackjack…To Build My Own Cloud with Blackjack…
To Build My Own Cloud with Blackjack…Sergey Dzyuban
 
Chef ignited a DevOps revolution – BK Box
Chef ignited a DevOps revolution – BK BoxChef ignited a DevOps revolution – BK Box
Chef ignited a DevOps revolution – BK BoxChef Software, Inc.
 
Chef Fundamentals Training Series Module 3: Setting up Nodes and Cookbook Aut...
Chef Fundamentals Training Series Module 3: Setting up Nodes and Cookbook Aut...Chef Fundamentals Training Series Module 3: Setting up Nodes and Cookbook Aut...
Chef Fundamentals Training Series Module 3: Setting up Nodes and Cookbook Aut...Chef Software, Inc.
 

Mais procurados (20)

Opscode Webinar: Managing Your VMware Infrastructure with Chef
Opscode Webinar: Managing Your VMware Infrastructure with ChefOpscode Webinar: Managing Your VMware Infrastructure with Chef
Opscode Webinar: Managing Your VMware Infrastructure with Chef
 
Chef vs Puppet vs Ansible vs Saltstack | Configuration Management Tools | Dev...
Chef vs Puppet vs Ansible vs Saltstack | Configuration Management Tools | Dev...Chef vs Puppet vs Ansible vs Saltstack | Configuration Management Tools | Dev...
Chef vs Puppet vs Ansible vs Saltstack | Configuration Management Tools | Dev...
 
Velocity2011 chef-workshop
Velocity2011 chef-workshopVelocity2011 chef-workshop
Velocity2011 chef-workshop
 
Introduction to Chef: Automate Your Infrastructure by Modeling It In Code
Introduction to Chef: Automate Your Infrastructure by Modeling It In CodeIntroduction to Chef: Automate Your Infrastructure by Modeling It In Code
Introduction to Chef: Automate Your Infrastructure by Modeling It In Code
 
Opscode Webinar: Cooking with Chef on Microsoft Windows
Opscode Webinar: Cooking with Chef on Microsoft WindowsOpscode Webinar: Cooking with Chef on Microsoft Windows
Opscode Webinar: Cooking with Chef on Microsoft Windows
 
Infrastructure Automation with Chef
Infrastructure Automation with ChefInfrastructure Automation with Chef
Infrastructure Automation with Chef
 
Infrastructure Automation with Chef & Ansible
Infrastructure Automation with Chef & AnsibleInfrastructure Automation with Chef & Ansible
Infrastructure Automation with Chef & Ansible
 
Continuous Integration and Deployment Best Practices on AWS (ARC307) | AWS re...
Continuous Integration and Deployment Best Practices on AWS (ARC307) | AWS re...Continuous Integration and Deployment Best Practices on AWS (ARC307) | AWS re...
Continuous Integration and Deployment Best Practices on AWS (ARC307) | AWS re...
 
Automated Deployments with Ansible
Automated Deployments with AnsibleAutomated Deployments with Ansible
Automated Deployments with Ansible
 
Server Installation and Configuration with Chef
Server Installation and Configuration with ChefServer Installation and Configuration with Chef
Server Installation and Configuration with Chef
 
Learning chef
Learning chefLearning chef
Learning chef
 
Ansible new paradigms for orchestration
Ansible new paradigms for orchestrationAnsible new paradigms for orchestration
Ansible new paradigms for orchestration
 
Chef-Zero & Local Mode
Chef-Zero & Local ModeChef-Zero & Local Mode
Chef-Zero & Local Mode
 
Carlos Conde : AWS Game Days - TIAD Paris
Carlos Conde : AWS Game Days - TIAD ParisCarlos Conde : AWS Game Days - TIAD Paris
Carlos Conde : AWS Game Days - TIAD Paris
 
Chef Cookbook Workflow
Chef Cookbook WorkflowChef Cookbook Workflow
Chef Cookbook Workflow
 
TIAD : Automating the aplication lifecycle
TIAD : Automating the aplication lifecycleTIAD : Automating the aplication lifecycle
TIAD : Automating the aplication lifecycle
 
Introduction to Chef
Introduction to ChefIntroduction to Chef
Introduction to Chef
 
To Build My Own Cloud with Blackjack…
To Build My Own Cloud with Blackjack…To Build My Own Cloud with Blackjack…
To Build My Own Cloud with Blackjack…
 
Chef ignited a DevOps revolution – BK Box
Chef ignited a DevOps revolution – BK BoxChef ignited a DevOps revolution – BK Box
Chef ignited a DevOps revolution – BK Box
 
Chef Fundamentals Training Series Module 3: Setting up Nodes and Cookbook Aut...
Chef Fundamentals Training Series Module 3: Setting up Nodes and Cookbook Aut...Chef Fundamentals Training Series Module 3: Setting up Nodes and Cookbook Aut...
Chef Fundamentals Training Series Module 3: Setting up Nodes and Cookbook Aut...
 

Semelhante a AWS Web App Fundamentals

AWSome Day Online 2020_โมดูล 2: เริ่มต้นใช้งานบน AWS Cloud
AWSome Day Online 2020_โมดูล 2: เริ่มต้นใช้งานบน AWS CloudAWSome Day Online 2020_โมดูล 2: เริ่มต้นใช้งานบน AWS Cloud
AWSome Day Online 2020_โมดูล 2: เริ่มต้นใช้งานบน AWS CloudAmazon Web Services
 
AWSome Day Online 2020_Modul 2: Memulai dengan Cloud
AWSome Day Online 2020_Modul 2: Memulai dengan CloudAWSome Day Online 2020_Modul 2: Memulai dengan Cloud
AWSome Day Online 2020_Modul 2: Memulai dengan CloudAmazon Web Services
 
Running BSD on AWS
Running BSD on AWSRunning BSD on AWS
Running BSD on AWSJulien SIMON
 
Module 2: Getting started with the cloud - AWSome Day Online Conference 2019
 Module 2: Getting started with the cloud - AWSome Day Online Conference 2019 Module 2: Getting started with the cloud - AWSome Day Online Conference 2019
Module 2: Getting started with the cloud - AWSome Day Online Conference 2019Amazon Web Services
 
AWS Webcast - AWS Webinar Series for Education #2 - Getting Started with AWS
AWS Webcast - AWS Webinar Series for Education #2 - Getting Started with AWSAWS Webcast - AWS Webinar Series for Education #2 - Getting Started with AWS
AWS Webcast - AWS Webinar Series for Education #2 - Getting Started with AWSAmazon Web Services
 
AWS Webcast - Webinar Series for State and Local Government #2: Discover the ...
AWS Webcast - Webinar Series for State and Local Government #2: Discover the ...AWS Webcast - Webinar Series for State and Local Government #2: Discover the ...
AWS Webcast - Webinar Series for State and Local Government #2: Discover the ...Amazon Web Services
 
Best Practices running SQL Server on AWS
Best Practices running SQL Server on AWSBest Practices running SQL Server on AWS
Best Practices running SQL Server on AWSAmazon Web Services
 
Amazon web services : Layman Introduction
Amazon web services : Layman IntroductionAmazon web services : Layman Introduction
Amazon web services : Layman IntroductionParashar Borkotoky
 
AWS Webcast - Explore the AWS Cloud
AWS Webcast - Explore the AWS CloudAWS Webcast - Explore the AWS Cloud
AWS Webcast - Explore the AWS CloudAmazon Web Services
 
Running Oracle EBS in the cloud (DOAG TECH17 edition)
Running Oracle EBS in the cloud (DOAG TECH17 edition)Running Oracle EBS in the cloud (DOAG TECH17 edition)
Running Oracle EBS in the cloud (DOAG TECH17 edition)Andrejs Prokopjevs
 
데이터 마이그레이션 AWS와 같이하기 - 김일호 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming
데이터 마이그레이션 AWS와 같이하기 - 김일호 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming데이터 마이그레이션 AWS와 같이하기 - 김일호 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming
데이터 마이그레이션 AWS와 같이하기 - 김일호 솔루션즈 아키텍트:: AWS Cloud Track 3 GamingAmazon Web Services Korea
 
Running Oracle EBS in the cloud (OAUG Collaborate 18 edition)
Running Oracle EBS in the cloud (OAUG Collaborate 18 edition)Running Oracle EBS in the cloud (OAUG Collaborate 18 edition)
Running Oracle EBS in the cloud (OAUG Collaborate 18 edition)Andrejs Prokopjevs
 
Module 2: AWS Infrastructure – Compute, Storage and Networking - AWSome Day O...
Module 2: AWS Infrastructure – Compute, Storage and Networking - AWSome Day O...Module 2: AWS Infrastructure – Compute, Storage and Networking - AWSome Day O...
Module 2: AWS Infrastructure – Compute, Storage and Networking - AWSome Day O...Amazon Web Services
 
Why Scale Matters and How the Cloud is Really Different (at scale)
Why Scale Matters and How the Cloud is Really Different (at scale)Why Scale Matters and How the Cloud is Really Different (at scale)
Why Scale Matters and How the Cloud is Really Different (at scale)Amazon Web Services
 
Technical Essentials Training: AWS Innovate Ottawa
Technical Essentials Training: AWS Innovate OttawaTechnical Essentials Training: AWS Innovate Ottawa
Technical Essentials Training: AWS Innovate OttawaAmazon Web Services
 
AWS Certified Solutions Architect Associate Notes.pdf
AWS Certified Solutions Architect Associate Notes.pdfAWS Certified Solutions Architect Associate Notes.pdf
AWS Certified Solutions Architect Associate Notes.pdffayoyiwababajide
 
Module 2: AWS Foundational Services - AWSome Day Online Conference
Module 2: AWS Foundational Services - AWSome Day Online ConferenceModule 2: AWS Foundational Services - AWSome Day Online Conference
Module 2: AWS Foundational Services - AWSome Day Online ConferenceAmazon Web Services
 

Semelhante a AWS Web App Fundamentals (20)

AWSome Day Online 2020_โมดูล 2: เริ่มต้นใช้งานบน AWS Cloud
AWSome Day Online 2020_โมดูล 2: เริ่มต้นใช้งานบน AWS CloudAWSome Day Online 2020_โมดูล 2: เริ่มต้นใช้งานบน AWS Cloud
AWSome Day Online 2020_โมดูล 2: เริ่มต้นใช้งานบน AWS Cloud
 
Introduction on Amazon EC2
Introduction on Amazon EC2Introduction on Amazon EC2
Introduction on Amazon EC2
 
AWSome Day Online 2020_Modul 2: Memulai dengan Cloud
AWSome Day Online 2020_Modul 2: Memulai dengan CloudAWSome Day Online 2020_Modul 2: Memulai dengan Cloud
AWSome Day Online 2020_Modul 2: Memulai dengan Cloud
 
Running BSD on AWS
Running BSD on AWSRunning BSD on AWS
Running BSD on AWS
 
Module 2: Getting started with the cloud - AWSome Day Online Conference 2019
 Module 2: Getting started with the cloud - AWSome Day Online Conference 2019 Module 2: Getting started with the cloud - AWSome Day Online Conference 2019
Module 2: Getting started with the cloud - AWSome Day Online Conference 2019
 
(STG402) Amazon EBS Deep Dive
(STG402) Amazon EBS Deep Dive(STG402) Amazon EBS Deep Dive
(STG402) Amazon EBS Deep Dive
 
AWS Webcast - AWS Webinar Series for Education #2 - Getting Started with AWS
AWS Webcast - AWS Webinar Series for Education #2 - Getting Started with AWSAWS Webcast - AWS Webinar Series for Education #2 - Getting Started with AWS
AWS Webcast - AWS Webinar Series for Education #2 - Getting Started with AWS
 
AWS Webcast - Webinar Series for State and Local Government #2: Discover the ...
AWS Webcast - Webinar Series for State and Local Government #2: Discover the ...AWS Webcast - Webinar Series for State and Local Government #2: Discover the ...
AWS Webcast - Webinar Series for State and Local Government #2: Discover the ...
 
Best Practices running SQL Server on AWS
Best Practices running SQL Server on AWSBest Practices running SQL Server on AWS
Best Practices running SQL Server on AWS
 
Introduction to Amazon EC2
Introduction to Amazon EC2Introduction to Amazon EC2
Introduction to Amazon EC2
 
Amazon web services : Layman Introduction
Amazon web services : Layman IntroductionAmazon web services : Layman Introduction
Amazon web services : Layman Introduction
 
AWS Webcast - Explore the AWS Cloud
AWS Webcast - Explore the AWS CloudAWS Webcast - Explore the AWS Cloud
AWS Webcast - Explore the AWS Cloud
 
Running Oracle EBS in the cloud (DOAG TECH17 edition)
Running Oracle EBS in the cloud (DOAG TECH17 edition)Running Oracle EBS in the cloud (DOAG TECH17 edition)
Running Oracle EBS in the cloud (DOAG TECH17 edition)
 
데이터 마이그레이션 AWS와 같이하기 - 김일호 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming
데이터 마이그레이션 AWS와 같이하기 - 김일호 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming데이터 마이그레이션 AWS와 같이하기 - 김일호 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming
데이터 마이그레이션 AWS와 같이하기 - 김일호 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming
 
Running Oracle EBS in the cloud (OAUG Collaborate 18 edition)
Running Oracle EBS in the cloud (OAUG Collaborate 18 edition)Running Oracle EBS in the cloud (OAUG Collaborate 18 edition)
Running Oracle EBS in the cloud (OAUG Collaborate 18 edition)
 
Module 2: AWS Infrastructure – Compute, Storage and Networking - AWSome Day O...
Module 2: AWS Infrastructure – Compute, Storage and Networking - AWSome Day O...Module 2: AWS Infrastructure – Compute, Storage and Networking - AWSome Day O...
Module 2: AWS Infrastructure – Compute, Storage and Networking - AWSome Day O...
 
Why Scale Matters and How the Cloud is Really Different (at scale)
Why Scale Matters and How the Cloud is Really Different (at scale)Why Scale Matters and How the Cloud is Really Different (at scale)
Why Scale Matters and How the Cloud is Really Different (at scale)
 
Technical Essentials Training: AWS Innovate Ottawa
Technical Essentials Training: AWS Innovate OttawaTechnical Essentials Training: AWS Innovate Ottawa
Technical Essentials Training: AWS Innovate Ottawa
 
AWS Certified Solutions Architect Associate Notes.pdf
AWS Certified Solutions Architect Associate Notes.pdfAWS Certified Solutions Architect Associate Notes.pdf
AWS Certified Solutions Architect Associate Notes.pdf
 
Module 2: AWS Foundational Services - AWSome Day Online Conference
Module 2: AWS Foundational Services - AWSome Day Online ConferenceModule 2: AWS Foundational Services - AWSome Day Online Conference
Module 2: AWS Foundational Services - AWSome Day Online Conference
 

Último

SoftTeco - Software Development Company Profile
SoftTeco - Software Development Company ProfileSoftTeco - Software Development Company Profile
SoftTeco - Software Development Company Profileakrivarotava
 
Introduction to Firebase Workshop Slides
Introduction to Firebase Workshop SlidesIntroduction to Firebase Workshop Slides
Introduction to Firebase Workshop Slidesvaideheekore1
 
JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...
JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...
JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...Bert Jan Schrijver
 
Strategies for using alternative queries to mitigate zero results
Strategies for using alternative queries to mitigate zero resultsStrategies for using alternative queries to mitigate zero results
Strategies for using alternative queries to mitigate zero resultsJean Silva
 
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full Recording
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full RecordingOpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full Recording
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full RecordingShane Coughlan
 
The Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptx
The Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptxThe Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptx
The Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptxRTS corp
 
Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalPrecise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalLionel Briand
 
Revolutionizing the Digital Transformation Office - Leveraging OnePlan’s AI a...
Revolutionizing the Digital Transformation Office - Leveraging OnePlan’s AI a...Revolutionizing the Digital Transformation Office - Leveraging OnePlan’s AI a...
Revolutionizing the Digital Transformation Office - Leveraging OnePlan’s AI a...OnePlan Solutions
 
Ronisha Informatics Private Limited Catalogue
Ronisha Informatics Private Limited CatalogueRonisha Informatics Private Limited Catalogue
Ronisha Informatics Private Limited Catalogueitservices996
 
Patterns for automating API delivery. API conference
Patterns for automating API delivery. API conferencePatterns for automating API delivery. API conference
Patterns for automating API delivery. API conferencessuser9e7c64
 
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdfExploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdfkalichargn70th171
 
How to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationHow to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationBradBedford3
 
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Angel Borroy López
 
Amazon Bedrock in Action - presentation of the Bedrock's capabilities
Amazon Bedrock in Action - presentation of the Bedrock's capabilitiesAmazon Bedrock in Action - presentation of the Bedrock's capabilities
Amazon Bedrock in Action - presentation of the Bedrock's capabilitiesKrzysztofKkol1
 
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsSensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsChristian Birchler
 
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Cizo Technology Services
 
Powering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsPowering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsSafe Software
 
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdf
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdfEnhancing Supply Chain Visibility with Cargo Cloud Solutions.pdf
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdfRTS corp
 
Effectively Troubleshoot 9 Types of OutOfMemoryError
Effectively Troubleshoot 9 Types of OutOfMemoryErrorEffectively Troubleshoot 9 Types of OutOfMemoryError
Effectively Troubleshoot 9 Types of OutOfMemoryErrorTier1 app
 
Not a Kubernetes fan? The state of PaaS in 2024
Not a Kubernetes fan? The state of PaaS in 2024Not a Kubernetes fan? The state of PaaS in 2024
Not a Kubernetes fan? The state of PaaS in 2024Anthony Dahanne
 

Último (20)

SoftTeco - Software Development Company Profile
SoftTeco - Software Development Company ProfileSoftTeco - Software Development Company Profile
SoftTeco - Software Development Company Profile
 
Introduction to Firebase Workshop Slides
Introduction to Firebase Workshop SlidesIntroduction to Firebase Workshop Slides
Introduction to Firebase Workshop Slides
 
JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...
JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...
JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...
 
Strategies for using alternative queries to mitigate zero results
Strategies for using alternative queries to mitigate zero resultsStrategies for using alternative queries to mitigate zero results
Strategies for using alternative queries to mitigate zero results
 
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full Recording
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full RecordingOpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full Recording
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full Recording
 
The Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptx
The Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptxThe Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptx
The Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptx
 
Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalPrecise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive Goal
 
Revolutionizing the Digital Transformation Office - Leveraging OnePlan’s AI a...
Revolutionizing the Digital Transformation Office - Leveraging OnePlan’s AI a...Revolutionizing the Digital Transformation Office - Leveraging OnePlan’s AI a...
Revolutionizing the Digital Transformation Office - Leveraging OnePlan’s AI a...
 
Ronisha Informatics Private Limited Catalogue
Ronisha Informatics Private Limited CatalogueRonisha Informatics Private Limited Catalogue
Ronisha Informatics Private Limited Catalogue
 
Patterns for automating API delivery. API conference
Patterns for automating API delivery. API conferencePatterns for automating API delivery. API conference
Patterns for automating API delivery. API conference
 
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdfExploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
 
How to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationHow to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion Application
 
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
 
Amazon Bedrock in Action - presentation of the Bedrock's capabilities
Amazon Bedrock in Action - presentation of the Bedrock's capabilitiesAmazon Bedrock in Action - presentation of the Bedrock's capabilities
Amazon Bedrock in Action - presentation of the Bedrock's capabilities
 
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsSensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
 
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
 
Powering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsPowering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data Streams
 
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdf
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdfEnhancing Supply Chain Visibility with Cargo Cloud Solutions.pdf
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdf
 
Effectively Troubleshoot 9 Types of OutOfMemoryError
Effectively Troubleshoot 9 Types of OutOfMemoryErrorEffectively Troubleshoot 9 Types of OutOfMemoryError
Effectively Troubleshoot 9 Types of OutOfMemoryError
 
Not a Kubernetes fan? The state of PaaS in 2024
Not a Kubernetes fan? The state of PaaS in 2024Not a Kubernetes fan? The state of PaaS in 2024
Not a Kubernetes fan? The state of PaaS in 2024
 

AWS Web App Fundamentals

  • 1. AWS Developer Fundamentals Josh Padnick October 18, 2014 Desert Code Camp
  • 3. Forests & Trees The Details The Big Picture
  • 4. The Big Picture • What is AWS? • AWS for Specific Use Cases • Key Ideas in AWS
  • 5. The Details • Running Servers (EC2) • Storing Data (S3)
  • 6. But we only have 60 minutes. So we’ll move fast.
  • 8. About Me Josh Padnick josh.padnick@gmail.com 602.432.3789 http://JoshPadnick.com • Founded healthcare IT company where we used AWS for 5+ years. • Built three major products for hundreds of thousands of users on AWS. • Hosted 150+ websites on AWS. • Professional AWS Consultant.
  • 10. It’s what Amazon built internally to power their own site. They architected it so abstractly that it wasn’t even specific to Amazon!
  • 11. AWS is a suite of IT services used to build or manage software faster, cheaper, and at scale.
  • 12. • Compute Services give you on-demand virtual machines. • Storage Services let you store large blocks of unstructured content. • Database Services allow you to store structured and unstructured data in a variety of ways. • Networking Services provide technologies for identifying (DNS) resources and connecting resources to on-premises assets. • Messaging Services enable rich communication scenarios between systems or components. • Content Delivery Services provide edge locations for frequently accessed content. • Deployment and Management Services enable packaging, securing, and monitoring AWS applications. • Big Data Services include tools for ingesting, processing, and storing huge amounts of data. • Mobile Services include tools for sending push notifications, and streamlining app development. SOURCE: “AWS Developer Fundamentals” by Richard Seroter. Pluralsight.
  • 13. Now let’s look at the AWS console.
  • 14.
  • 16.
  • 17.
  • 18. Magic Quadrant for Public Cloud Services Source: Gartner (July 2014)
  • 19. Secondary AWS Competitors Email File Sharing DNS / Domain Reg.
  • 20. So how do you learn about 33 different services?
  • 21. It kind of reminds me of this place.
  • 22. • Your first experience is overwhelming. • No one person needs all of Home Depot. • Each person gets just what they need.
  • 23. AWS is the same. Don’t try to learn everything. Instead, pick your use case, and get to know only the aisles you need.
  • 25. Major AWS Use Cases • Scalable web app • Big data • Mobile app support • Backup & storage • Ad hoc (email, DNS, queueing)
  • 26. AWS Big Data Services
  • 27. AWS Backup & Storage Services
  • 28. Today’s Talk is about using AWS with the Scalable Web App.
  • 29.
  • 30.
  • 31. For the scalable web app, 80%+ of your work will be in just three services.
  • 32. If you want to explore more about any use case, check out http://aws.amazon.com/solutions/ I listed just 5 use cases and AWS lists 18! Think of my 5 as the major forests. AWS is just being extra helpful with every tree it can think of.
  • 33. We’ll go into detail on that shortly. First, let’s talk about: Key Ideas in AWS
  • 34. Key Idea #1 Make your app resilient by using global regions & availability zones INSPIRATION: “AWS Developer Fundamentals” by Richard Seroter. Pluralsight.
  • 35. AWS Regions Throughout the World Region = Data Center
  • 36. In the AWS API, use the region’s official name.
  • 37. Each AWS Region has at least 2 Availability Zones.
  • 38. Key Idea #1 • Building across regions is very challenging. • Building across availability zones is straightforward. • You can basically purchase (in time and money) the amount of resilience you want!
  • 39. Key Idea #2 Pay only for what you need.
  • 40. Almost nothing in AWS has upfront fees.
  • 41. Key Idea #2 • There are almost never upfront fees in AWS. • You pay only for what you use. • EC2 Instances per hour • S3 files per GB stored / transferred • etc. • You can stop and start instances as you need them before you launch your app. • You can start with small (or even burstable!) instances, and easily change your instance type later.
  • 42. Key Idea #3 Architect for failure.
  • 44. Key Idea #3 • Early versions of the AWS docs just stopped short of telling you instances would fail on a periodic basis. • Instances are now very reliable, but you should still assume they could fail at any time. • When they inevitably do, this is not “something unexpected”, it’s just another state you expect your infrastructure may enter. • On the other hand, all AWS services have built in reliability / fault tolerance. • Note that there have been isolated stories of businesses going under when their AWS account was hijacked. So, it’s always a good idea to keep your most important data on a different AWS account or location.
  • 45. Key Idea #4 Everything’s an API call away. Sometimes exclusively.
  • 46.
  • 47. Key Idea #4 • AWS builds their APIs first. • Then they upgrade their AWS Console. • Sometimes the console only implements a subset of the API! • It would be possible to build a complete AWS console on your own using only their APIs. Often used for cloud management providers, other partner vendors.
  • 48. Key Idea #5 Plan to scale out, not up.
  • 49. Key Idea #5 • AWS does give you many ways to “scale up”. • In the short-term, “scale up” is definitely easier. • But it’s best if you build your architecture to “scale out” • This is most challenging at the database level. Which is why AWS offers RDS and DynamoDB. • Even if you can’t build perfectly “horizontally scaling” architectures, you should have that in mind as the ideal.
  • 51. AWS for Scalable Web Apps
  • 52.
  • 53. Let’s describe each of these AWS services. (We’ll be brief for some)
  • 54. EC2 Virtual Servers in the Cloud
  • 55. EC2 Use Case: • Launch Linux and Windows servers in the cloud.
  • 56.
  • 57. Let’s setup a server using non-AWS lingo
  • 60. Server Hard Drive Firewall
  • 61. Server Hard Drive Firewall SSH Keys
  • 62. Server Hard Drive Firewall SSH Keys IP Address
  • 63. Now let’s use AWS lingo.
  • 64. EC2 Instance EBS Volume Security Group Key Pairs Elastic IP
  • 65. Let’s take these one at a time.
  • 67. EC2 Instances Come in Multiple Sizes They vary along just 3 dimensions CPU Memory Network
  • 68. CATEGORY INSTANCE TYPES General Purpose T2, M3 Compute Optimized C3 Memory Optimized R3 GPU G2 Storage Optimized I2, HS1
  • 69. Instance Type vCPU Memory (GiB) Storage (GB) Network ing Physical Process Clock Speed Intel® AES-NI Intel® AV Intel® Turbo EBS OPT Enhance t2.micro 1 1 EBS d Only Low to Moderat Intel Xeon 2.5 Yes Yes Yes - - t2.small 1 2 EBS Only Low to Moderat Intel Xeon 2.5 Yes Yes Yes - - t2.mediu m 2 4 EBS Only Low to Moderat Intel Xeon 2.5 Yes Yes Yes - - m3.medi um 1 3.75 1 x 4 SSD Moderat e Intel Xeon 2.5 Yes Yes Yes - - m3.large 2 7.5 1 x 32 SSD Moderat e Intel Xeon 2.5 Yes Yes Yes - - m3.xlarg e 4 15 2 x 40 SSD High Intel Xeon 2.5 Yes Yes Yes Yes - m3.2xlar ge 8 30 2 x 80 SSD High Intel Xeon 2.5 Yes Yes Yes Yes - c3.large 2 3.75 2 x 16 SSD Moderat e Intel Xeon 2.8 Yes Yes Yes - Yes c3.xlarge 4 7.5 2 x 40 SSD Moderat e Intel Xeon 2.8 Yes Yes Yes Yes Yes c3.2xlarg e 8 15 2 x 80 SSD High Intel Xeon 2.8 Yes Yes Yes Yes Yes c3.4xlarg e 16 30 2 x 160 SSD High Intel Xeon 2.8 Yes Yes Yes Yes Yes c3.8xlarg e 32 60 2 x 320 SSD 10 Gigabit Intel Xeon 2.8 Yes Yes Yes - Yes g2.2xlarg e 8 15 1 x 60 SSD High Intel Xeon 2.6 Yes - - Yes - r3.large 2 15.25 1 x 32 SSD Moderat e Intel Xeon 2.5 Yes Yes Yes - Yes r3.xlarge 4 30.5 1 x 80 SSD Moderat e Intel Xeon 2.5 Yes Yes Yes Yes Yes r3.2xlarg e 8 61 1 x 160 SSD High Intel Xeon 2.5 Yes Yes Yes Yes Yes r3.4xlarg e 16 122 1 x 320 SSD High Intel Xeon 2.5 Yes Yes Yes Yes Yes r3.8xlarg e 32 244 2 x 320 SSD 10 Gigabit Intel Xeon 2.5 Yes Yes Yes - Yes i2.xlarge 4 30.5 1 x 800 SSD Moderat e Intel Xeon 2.5 Yes Yes Yes Yes Yes i2.2xlarg e 8 61 2 x 800 SSD High Intel Xeon 2.5 Yes Yes Yes Yes Yes i2.4xlarg e 16 122 4 x 800 SSD High Intel Xeon 2.5 Yes Yes Yes Yes Yes i2.8xlarg e 32 244 8 x 800 SSD 10 Gigabit Intel Xeon 2.5 Yes Yes Yes - Yes hs1.8xlar ge 16 117 24 x 2,000 10 Gigabit Intel Xeon 2 Yes - - - -
  • 70. CATEGORY INSTANCE TYPES General Purpose T2, M3 • When your’e starting out, you can just use the general purpose line. • The T2 line is especially good for servers that often sit idle, but then need a burst of performance (e.g. low-traffic web servers, build servers, etc.)
  • 71. Instance Type vCPU Memory (GiB) Storage (GB) Networking Performance Physical Processor Clock Speed (GHz) t2.micro 1 1 EBS Only Low to Moderate Intel Xeon family 2.5 t2.small 1 2 EBS Only Low to Moderate Intel Xeon family 2.5 t2.medium 2 4 EBS Only Low to Moderate Intel Xeon family 2.5 m3.medium 1 3.75 1 x 4 SSD Moderate Intel Xeon E5-2670 v2* 2.5 m3.large 2 7.5 1 x 32 SSD Moderate Intel Xeon E5-2670 v2* 2.5 m3.xlarge 4 15 2 x 40 SSD High Intel Xeon E5-2670 v2* 2.5 m3.2xlarge 8 30 2 x 80 SSD High Intel Xeon E5-2670 v2* 2.5
  • 73. EBS Volumes are basically “virtual hard drives” • EBS = Elastic Block Store • You can provision hard drives at the block level, which means AWS doesn’t care which file system you format it with (e.g. EXT4, ZFX, NTFS) • You can even create RAID arrays. • If you need extra performance, you can pay for higher IOPS.
  • 74.
  • 75. You can create EBS volumes directly. But usually, you create them as part of your EC2 instance.
  • 76. But you may want to attach multiple EBS volumes to the same EC2 instance.
  • 78. A key pair is just an SSH private key + its corresponding public key.
  • 79. • You can upload your own keys. • Or AWS creates them for you. • Linux • Use your key to SSH into the instance • Windows • Use your key to get the RDP password of the instance
  • 80.
  • 81. • Best practice is to use a bastion host. • This means you have one instance that is accessible via SSH from the outside (locked down only to specific IP addresses). • Once in the bastion host, then you can SSH into other instances.
  • 82.
  • 84. Security Group = Firewall for an Instance
  • 85.
  • 86. • Create one security group for each “tier” in your app. • You should have a single security group for allowing “outside access” from specific IPs (the bastion host security group) • Be paranoid and restrictive. There are lots of bots out there!
  • 88. You can get a public IP address from AWS. Then you assign it to any instance! You can re-assign it later!
  • 89. Elastic IP EC2 Instance A EC2 Instance B
  • 90. Elastic IP X EC2 Instance A EC2 Instance B
  • 91. Elastic IP X EC2 Instance A EC2 Instance B
  • 92. • This means you can re-assign an elastic IP address from a failed instance to a working one. • Basically, your server and your IP address are no longer bound to each other.
  • 93. EC2 Instance EBS Volume Security Group Key Pairs Elastic IP
  • 94. Now we’re ready to launch an instance!
  • 95.
  • 96.
  • 99. EBS Volumes are basically “virtual hard drives” • We can take snapshots of an EBS volume. • This means we can instantly clone the EBS volume and attach it to another instance.
  • 100. EC2 Instances are “backed” by EBS Volumes • We can take snapshots of these EBS volumes, too. • When we take a snapshot of EBS volumes as part of an EC2 instance, we wind up creating an Amazon Machine Image.
  • 101. Amazon Machine Image is used to launch … EBS Volume EC2 Instance
  • 102. AWS has prepared useful AMIs for us. • Windows Server 2008 / 2012 • With or without paid Microsoft software • Multiple Linux distros • Ubuntu • Suse • Amazon Linux
  • 103.
  • 104.
  • 105.
  • 106.
  • 107.
  • 108.
  • 109.
  • 110.
  • 111. Reserved Instances • Use Reserved Instances to save money. These are a billing concept only; they have no effect on anything else. • If you can prepay for 1 year, save 40%. • If you can prepay for 3 years, save 60%
  • 112. VPC Isolated Cloud Resources
  • 113. Let’s setup a network using non-AWS lingo
  • 115. Subnet B Subnet A Server Server
  • 116. “Subnet Firewall” “Subnet Firewall” Subnet B Subnet A Server Server
  • 117. Network “Subnet Firewall” “Subnet Firewall” Subnet B Subnet A Server Server
  • 118. Now let’s use the AWS lingo
  • 119. VPC Network ACL Network ACL Subnet B Subnet A Instance Instance
  • 120.
  • 121. VPC Recommendations • VPCs are a great way to logically group your instances into different “clusters”, both for security and management. • If you can, setup one public (exposed to Internet) subnet each in two different Availability Zones (AZ’s), and one private subnet each two different AZ’s. • Use Network ACLs for high-level filtering rules (e.g. connecting Subnet A to Subnet B). Instance-level rules have an additional management overhead.
  • 122. S3 Scalable Storage in the Cloud
  • 123. S3 Use Cases: • Store files in the cloud for low-latency access
  • 124. Let’s Look at S3. Using AWS lingo.
  • 126. us-west-2 region us-east-1 region S3 Bucket “A” S3 Bucket “A” S3 Bucket “B” S3 Bucket “B”
  • 127. S3 Buckets • Buckets are “holding tanks” for files and folders. • Bucket names must be globally unique across an AWS region. For example, you can’t have two buckets named “A” in the us-west-2 region. • Buckets have properties which govern all files stored in them (examples shortly)
  • 128. Surprising Things About S3 Buckets • Use a bucket as a way to host static websites!
  • 129. Cool Things About S3 Buckets • If enabled, you can preserve, retrieve, and restore every version of every object stored in this bucket. • Of course, you also pay to store every version of every object, so tread carefully here.
  • 130. Neat Things About S3 Buckets • You can setup “Rules” for a bucket which take effect on all files or only certain folders in that bucket. • Example: auto-delete all files X days after they’re created • Example: automatically move all files to Glacier X days after they’re created. • Example: first delete, then archive.
  • 131. Helpful Things About S3 Buckets • You can limit permissions to buckets by IAM Roles. • More on IAM in a bit. But for now, note that you can allow only certain instances or certain logged in users to your AWS console to access certain S3 folders.
  • 132. us-west-2 region us-east-1 region S3 Bucket “A” S3 Bucket “A” S3 Bucket “B” S3 Bucket “B”
  • 133. us-west-2 region us-east-1 region Files and Folders S3 Bucket “A” S3 Bucket “A” S3 Bucket “B” S3 Bucket “B”
  • 134. Files and Folders in S3 • Basically works like a standard file system. • Files can have granular access permission • Files can have public read permissions or not. • Files can be accessed with a temporary token so that when a user downloads one in your app, he can’t take that URL and use it again the next day.
  • 135. Helpful Things About Files and Folders in S3 • Files can be encrypted server-side by AWS • You basically check a box indicating you want encryption. • Then you trust that Amazon actually encrypts it. AWS handles all encryption on their end. You don’t change anything on yours. • Costs nothing. • If you want to supply the encryption keys, AWS will support that, too.
  • 136. S3 Recommendations • Namespace your buckets (e.g. “padnick-dcc14”) • Intelligently use auto-delete rules to save on cost. If you’re paranoid about needing the files, then archive to Glacier. • Use very thoughtful folder names in your buckets, then you can apply folder-specific rules. e.g. “builds”, “backup”, “temp”, etc. • S3 is a great place for key storage (but obviously doesn’t provide key management).
  • 137. IAM Secure AWS Access Control
  • 138. • Use IAM to give each member of your team a unique login. • Never share your root password among everyone! • You can also use IAM to give permissions to individual EC2 instances for other AWS resources (e.g. S3 buckets)
  • 139. IAM Recommendations • Setup your master account, and then put that user/pass in a vault and never give it to anyone! • Each engineer should have his own IAM login. • Consequences of a bad actor accessing your AWS account are catastrophic, so please use MFA. • Even if you don’t plan on using IAM roles, create them and assign them to instances at launch time.
  • 140. DynamoDB Managed NoSQL Databases ElastiCache Managed Cache Services RDS Managed SQL Stores
  • 141. • This is basically AWS setting up, scaling, and managing your own X for you, where X = • MySQL, PostrgreSQL, Oracle • MongoDB • Redis, Memcached
  • 142. SES Use AWS as your email service
  • 144. • Pick your AWS use case, then dive in. • EC2, VPC, and S3 are the most popular services. • Take the time to learn about IAM. It’s not difficult, and will dramatically improve your security posture. • The best way to learn is by doing!
  • 145. Thank you, Now go build something cool! Josh Padnick josh.padnick@gmail.com 602.432.3789 http://JoshPadnick.com