SlideShare una empresa de Scribd logo
1 de 33
Amazon Web Services
Fernando Rodriguez Olivera
@frodriguez
Buenos Aires, Argentina, May 2013
Buenos Aires High Scalability Group
Scalable and Fault-Tolerant Apps with AWS
AWS Regions
Virginia
(5 AZs, 2006)
California
(3 AZs, 2009)
Oregon
(3 AZs, 2011)
Ireland
(3 AZs, 2007)
Tokyo
(3 AZs, 2011)
Singapore
(2 AZs, 2011)
23 Availabilty Zones + (2 GovCloud)
North America
South America
Europe
Asia Pacific
São
Paulo
(2 AZs, 2011)
Sydney
(2 AZs, 2012)
23 (+ 2Gov)
AZs
GovCloud
(2 AZs, 2011)
Availability Zones
DC1 DC2 DC3 DC4 DC5
DC6 DC7 DC8 DC9 DC10
us-east-1a us-east-1b
us-east-1c
“Our US East-1 Region consists of more than 10 datacenters
structured into multiple Availability Zones.” [July, 2012]
(http://aws.amazon.com/message/67457/)
DataCenters > AZs
Core1
EC2 - Semi Dedicated Resources
Disk1
EC2
Instance
EC2
Instance
EC2
Instance
EC2
Instance
XEN
Core2 Core3 Core4
Disk1 Disk1 Disk1
CPU
RAM
DISK
Text
EBS (Elastic Block Storage)
EC2
Instance
A B
C
EBS
Volume
A
A
B
BC
C
EBS Cluster
Local
Network
Shared
or
Dedicated
(EBS Optimized)
Standard or
Provisioned IOPS
Hardware
CloudWatch
EC2
Instance
Hypervisor
Cloud
Watch
Dashboard
Configured
Alarms
SNSTopic
API Access
SubscriberSubscriberSubscriber
Elastic Capacity
Reserved Capacity
On Demand
Amazon
Datacenter(AZ)
Spot Instances
(Bidding)
EC2 Pricing (US-East)
Small
Instance
1 Core
1.7 GB RAM
160 GB HDD
On Demand $0.060/hr	
  	
  	
   $43.20	
  /	
  month
R/Light 1yr $61	
  +	
  0.034/hr
$61	
  +	
  $24.48/month
$29.56	
  /	
  month
R/Medium 1yr $139	
  +	
  0.021/hr
$139	
  +	
  $15.12/month
$26.70	
  /	
  month
R/Heavy 1yr $169	
  +	
  0.014/hr
$169	
  +	
  $10.08/month
$24.16	
  /	
  month
R/Light 3yr $96	
  +	
  0.027/hr
$96	
  +	
  19.44/month
$22.10	
  /	
  month
R/Medium 3yr $215	
  +	
  0.017/hr
$215	
  +	
  12.34/month
$18.21	
  /	
  month
R/Heavy 3yr $257	
  +	
  0.012/hr
$257	
  +	
  8.64/month
$15.77	
  /	
  month
Spot $0.007/hr $5.04	
  /	
  month
May/2013
1 EC2
Compute
Unit
Large
Instance
2 Cores
7.5 GB RAM
850 GB HDD
On Demand $0.240/hr	
  	
  	
   $172	
  /	
  month
R/Light 1yr $243	
  +	
  0.136/hr
$243	
  +	
  $97.92/month
$118.17	
  /	
  month
R/Medium 1yr $554	
  +	
  0.084/hr
$554	
  +	
  $60.48/month
$106.64	
  /	
  month
R/Heavy 1yr $676	
  +	
  0.056/hr
$676	
  +	
  $40.32/month
$96.65	
  /	
  month
R/Light 3yr $384	
  +	
  0.108/hr
$384	
  +	
  77.76/month
$88.42	
  /	
  month
R/Medium 3yr $860	
  +	
  0.067/hr
$860	
  +	
  48.24/month
$72.12	
  /	
  month
R/Heavy 3yr $1028	
  +	
  0.046/hr
$1028	
  +	
  33.12/month
$61.67	
  /	
  month
Spot $0.026/hr $18.72	
  /	
  month
May/2013
4 EC2
Compute
Units
EC2 Pricing (US-East)
Amazon Web Services
EC2
DynamoDB
SQS - SNS
CloudFormation
API-HTTP/REST
Java
Ruby
PHP
Node.js
Python*
.NET
Route53
CloudFront
...
ServicesSDKs
CommandLineTools
CloudFormation - EC2 Instance
	
  "myServer":	
  {
	
  	
  	
  	
  	
  "Type":	
  "AWS::EC2::Instance",
	
  	
  	
  	
  	
  "Properties":	
  {
	
  	
  	
  	
  	
  	
  	
  	
  	
  "ImageId"	
  	
  	
  	
  	
  	
  	
  	
  	
  :	
  "ami-­‐0145d268",
	
  	
  	
  	
  	
  	
  	
  	
  	
  "InstanceType"	
  	
  	
  	
  :	
  "m1.small",
	
  	
  	
  	
  	
  	
  	
  	
  	
  "KeyName"	
  	
  	
  	
  	
  	
  	
  	
  	
  :	
  "mykey",
	
  	
  	
  	
  	
  	
  	
  	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  "UserData"	
  :	
  {	
  "Fn::Base64"	
  :	
  {	
  "Fn::Join"	
  :	
  ["",	
  [
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  "#!/bin/bash",	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  "n",
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  "apt-­‐get	
  -­‐y	
  update",	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  "n",
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  "apt-­‐get	
  -­‐y	
  install	
  apache2",	
  "n"
	
  	
  	
  	
  	
  	
  	
  	
  	
  ]]}}
	
  	
  	
  	
  	
  }
	
  }
CloudFormation - Security Group
	
  "mySecurityGroup":	
  {
	
  	
  	
  	
  	
  "Type":	
  "AWS::EC2::SecurityGroup",
	
  	
  	
  	
  	
  "Properties":	
  {
	
  	
  	
  	
  	
  	
  	
  	
  	
  "GroupDescription"	
  	
  	
  	
  	
  :	
  "...",
	
  	
  	
  	
  	
  	
  	
  	
  	
  "SecurityGroupIngress"	
  :	
  [{
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  "IpProtocol"	
  :	
  "tcp",	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  "FromPort"	
  	
  	
  :	
  "22",	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  "ToPort"	
  	
  	
  	
  	
  :	
  "22",	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  "CidrIp"	
  	
  	
  	
  	
  :	
  "0.0.0.0/0"
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  }]
	
  	
  	
  	
  	
  }
	
  }
Elastic Load Balancer (ELB)
Unhealthy
Instance
EC2
Instance
EC2
Instance
EC2
Instance
HTTP/S-TCP/SSL
Health
Checks
Balancing
CloudWatch
Latency - Requests - Status Codes
Load Balancer
Elastic Load Balancer (ELB)
EC2
Instance
EC2
Instance
EC2
Instance
EC2
Instance
Load Balancer
DNSBalancing
(Client-Side) (MultiAZ)
Load Balancing
(Server Side)
AZ 1
AZ 2
LB (AZ 1)
LB (AZ 2)
Elastic Load Balancer (ELB)
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  lb-­‐loadbalancer...us-­‐east-­‐1.elb.amazonaws.com	
  	
  IPv4
	
  	
  	
  	
  	
  ipv6.lb-­‐loadBalancer...us-­‐east-­‐1.elb.amazonaws.com	
  	
  IPv6
dualstack.lb-­‐loadBalancer...us-­‐east-­‐1.elb.amazonaws.com	
  	
  IPv4/IPv6
Region Different
IPs for
each AZ
NameStack
(DNS Name)
DNS Name CNAME IPv4/IPv6
CloudFormation - Load Balancer (1/2)
	
  
	
  "balancer":	
  {
	
  	
  	
  	
  	
  "Type":	
  "AWS::ElasticLoadBalancing::LoadBalancer",
	
  	
  	
  	
  	
  "Properties":	
  {
	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  "AvailabilityZones"	
  :	
  {	
  "Fn::GetAZs"	
  :	
  ""	
  },
	
  	
  	
  	
  	
  	
  	
  	
  	
  "Listeners":	
  [{
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  "Protocol"	
  	
  	
  	
  	
  	
  	
  	
  	
  :	
  "HTTP",
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  "LoadBalancerPort"	
  :	
  "80",
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  "InstancePort"	
  	
  	
  	
  	
  :	
  "80"
	
  	
  	
  	
  	
  	
  	
  	
  	
  }],
	
  }
CloudFormation - Load Balancer (2/2)
	
  
	
  "balancer":	
  {
	
  	
  	
  	
  	
  "Type"	
  :	
  "AWS::ElasticLoadBalancing::LoadBalancer",
	
  	
  	
  	
  	
  "Properties"	
  :	
  {
	
  	
  	
  	
  	
  	
  	
  	
  	
  "HealthCheck"	
  :	
  {
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  "Interval"	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  :	
  "25",
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  "Target"	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  :	
  "HTTP:80/",
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  "Timeout"	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  :	
  "10",
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  "UnhealthyThreshold"	
  :	
  "2",
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  "HealthyThreshold"	
  	
  	
  :	
  "2"
	
  	
  	
  	
  	
  	
  	
  	
  	
  }	
  	
  	
  
	
  	
  	
  	
  }
}
AutoScaling Groups
EC2
Instance
EC2
Instance
EC2
Instance
AutoScaling Group
Launch
Config
Min: 2 Max: 8Desired: 4
Cloud
Watch
AlarmsScaling Policy +1
Scaling Policy -1
avg	
  cpu	
  >	
  70
avg	
  cpu	
  <	
  40
EC2
Instance
AutoScaling - MultiAZ
EC2
Instance
EC2
Instance
EC2
Instance
Launch
Config
EC2
Instance
AvailabilityZone1AvailabilityZone2
Rebalancing
Process
CloudFormation - AutoScaling Group
	
  "autoScalingGroup":	
  {
	
  	
  	
  	
  	
  "Type"	
  :	
  "AWS::AutoScaling::AutoScalingGroup",
	
  	
  	
  	
  	
  "Properties"	
  :	
  {
	
  	
  	
  	
  	
  	
  	
  	
  	
  "AvailabilityZones"	
  	
  	
  	
  	
  	
  	
  :	
  {	
  "Fn::GetAZs"	
  :	
  ""	
  },
	
  	
  	
  	
  	
  	
  	
  	
  	
  "LaunchConfigurationName"	
  :	
  {	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  "Ref"	
  :	
  "launchConfig"	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  },
	
  	
  	
  	
  	
  	
  	
  	
  	
  "MinSize"	
  	
  	
  	
  	
  	
  	
  	
  	
  :	
  "2",
	
  	
  	
  	
  	
  	
  	
  	
  	
  "MaxSize"	
  	
  	
  	
  	
  	
  	
  	
  	
  :	
  "8",
	
  	
  	
  	
  	
  	
  	
  	
  	
  "DesiredCapacity"	
  :	
  "4",
	
  	
  	
  	
  	
  }
	
  }
CloudFormation - Launch Config
	
  "launchConfig":	
  {
	
  	
  	
  	
  	
  "Type":	
  "AWS::AutoScaling::LaunchConfiguration",
	
  	
  	
  	
  	
  "Properties"	
  :	
  {
	
  	
  	
  	
  	
  	
  	
  	
  	
  "ImageId"	
  	
  	
  	
  	
  	
  :	
  "ami-­‐0145d268",
	
  	
  	
  	
  	
  	
  	
  	
  	
  "InstanceType"	
  :	
  "m1.small",
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  ...
	
  	
  	
  	
  	
  	
  	
  	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  "UserData"	
  :	
  {	
  "Fn::Base64"	
  :	
  {	
  "Fn::Join"	
  :	
  ["",	
  [
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  "#!/bin/bash",	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  "n",
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  "apt-­‐get	
  -­‐y	
  update",	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  "n",
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  "apt-­‐get	
  -­‐y	
  install	
  apache2",	
  "n"
	
  	
  	
  	
  	
  	
  	
  	
  	
  ]]}}
	
  	
  	
  	
  	
  }
	
  }
CloudFormation - CPU Alarms (1/2)
	
  
	
  "cpuHigh":	
  {
	
  	
  	
  	
  	
  "Type":	
  "AWS::CloudWatch::Alarm",
	
  	
  	
  	
  	
  "Properties":	
  {
	
  	
  	
  	
  	
  	
  	
  	
  "Namespace"	
  	
  :	
  "AWS/EC2",
	
  	
  	
  	
  	
  	
  	
  	
  "MetricName"	
  :	
  "CPUUtilization",
	
  	
  	
  	
  	
  	
  	
  	
  "Statistic"	
  	
  :	
  "Average",
	
  	
  	
  	
  	
  	
  	
  	
  "Dimensions"	
  :	
  [{
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  "Name"	
  	
  :	
  "AutoScalingGroupName",
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  "Value"	
  :	
  {	
  "Ref"	
  :	
  "autoScalingGroup"	
  }
	
  	
  	
  	
  	
  	
  	
  	
  }],
	
  	
  	
  	
  	
  	
  	
  	
  ...
	
  	
  	
  	
  	
  }
	
  }
CloudFormation - CPU Alarms (2/2)
	
  
	
  "cpuHigh":	
  {
	
  	
  	
  	
  	
  "Type":	
  "AWS::CloudWatch::Alarm",
	
  	
  	
  	
  	
  "Properties"	
  :	
  {
	
  	
  	
  	
  	
  	
  	
  	
  "Period"	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  :	
  "60",
	
  	
  	
  	
  	
  	
  	
  	
  "EvaluationPeriods"	
  	
  :	
  "2",
	
  	
  	
  	
  	
  	
  	
  	
  "ComparisonOperator"	
  :	
  "GreaterThanThreshold"
	
  	
  	
  	
  	
  	
  	
  	
  "Threshold"	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  :	
  "70",
	
  	
  	
  	
  	
  	
  	
  	
  "AlarmActions"	
  	
  	
  	
  	
  	
  	
  :	
  [{	
  "Ref":	
  "scaleUpPolicy"	
  }],	
  	
  	
  	
  	
  	
  	
  
	
  	
  	
  }
}
CloudFormation - Scaling Policy
	
  
	
  "scaleUpPolicy":	
  {
	
  	
  	
  	
  	
  "Type":	
  "AWS::AutoScaling::ScalingPolicy",
	
  	
  	
  	
  	
  "Properties"	
  :	
  {
	
  	
  	
  	
  	
  	
  	
  	
  	
  "AdjustmentType"	
  	
  	
  	
  	
  	
  	
  :	
  "ChangeInCapacity",
	
  	
  	
  	
  	
  	
  	
  	
  	
  "ScalingAdjustment"	
  	
  	
  	
  :	
  "1",	
  	
  	
  	
  	
  	
  	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  "Cooldown"	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  :	
  "60",
	
  	
  	
  	
  	
  	
  	
  	
  	
  "AutoScalingGroupName"	
  :	
  {	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  "Ref":	
  "autoScalingGroup"	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  }
	
  	
  	
  }
}
AutoScaling & ELB
EC2
Instance
EC2
Instance
EC2
Instance
EC2
Instance
DNSBalancing
(Client-Side)
Health Check
LB Registration
Unhealthy Instance Notifications
from LB
LB (AZ 1)
LB (AZ 2)
CloudFormation - AutoScaling Group
	
  "autoScalingGroup"	
  :	
  {
	
  	
  	
  	
  	
  "Type":	
  "AWS::AutoScaling::AutoScalingGroup",
	
  	
  	
  	
  	
  "Properties":	
  {
	
  	
  	
  	
  	
  	
  	
  	
  	
  ...
	
  	
  	
  	
  	
  	
  	
  	
  	
  "LoadBalancerNames"	
  :	
  [{	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  "Ref"	
  :	
  "balancer"	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  }]
	
  	
  	
  	
  	
  }
	
  }
AutoScaling & Multiple Regions
AutoScaling Group
ue-west-1 (2 AZ)
EC2
Instance
EC2
Instance
EC2
Instance
EC2
Instance
AutoScaling Group
us-east-1 (2 AZ)
EC2
Instance
EC2
Instance
EC2
Instance
EC2
Instance
EC2
Instance
EC2
Instance
ELB ELB
US CA MX
Route 53 Route 53
ES DE IT
Latency Based Routing
RDS (Relational Database Service)
MySQL MySQL
Active Stand-by
AZ 1 AZ 2
Synchronous
Replication
MySQL MySQL MySQL
Asynchronous
Replication
Read Replicas
Simple Queue Service (SQS)
EC2
Instance
EC2
Instance
Queue
EC2
Instance
EC2
Instance
AutoScalingGroups
CloudWatch
Alarms Scaling Policy
Simple Notification Service (SNS)
SNSTopic
HTTP
Server
Mail
Server
Subscribers
CloudFormation - Route 53 (DNS)
	
  
	
  "dns":	
  {
	
  	
  	
  "Type"	
  :	
  "AWS::Route53::RecordSetGroup",
	
  	
  	
  "Properties"	
  :	
  {
	
  	
  	
  	
  	
  	
  	
  "HostedZoneName"	
  :	
  "example.com.",
	
  	
  	
  	
  	
  	
  	
  "RecordSets"	
  	
  	
  	
  	
  :	
  [{
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  "Name"	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  :	
  "www.example.com.",
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  "Type"	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  :	
  "CNAME",	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  "TTL"	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  :	
  "300",
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  "ResourceRecords"	
  :	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  [{	
  "Fn::GetAtt"	
  :	
  [	
  "balancer",	
  "DNSName"	
  ]}]
	
  	
  	
  	
  	
  	
  	
  }]
	
  	
  	
  	
  }
}
CloudFormation Templates
{
	
  	
  	
  	
  "AWSTemplateFormatVersion"	
  :	
  "2010-­‐09-­‐09",
	
  	
  	
  	
  "Description"	
  :	
  "	
  ...	
  ",
	
  	
  	
  	
  "Parameters"	
  	
  :	
  {	
  ...	
  },
	
  	
  	
  	
  "Mappings"	
  	
  	
  	
  :	
  {	
  ...	
  },
	
  	
  	
  	
  "Resources"	
  	
  	
  :	
  {	
  ...	
  },
	
  	
  	
  	
  "Outputs"	
  	
  	
  	
  	
  :	
  {	
  ...	
  }
}
Thanks,
Fernando Rodriguez Olivera
@frodriguez
frodriguez <at> gmail.com
http://www.meetup.com/Buenos-Aires-High-Scalability-Group/

Más contenido relacionado

La actualidad más candente

AWS May Webinar Series - Streaming Data Processing with Amazon Kinesis and AW...
AWS May Webinar Series - Streaming Data Processing with Amazon Kinesis and AW...AWS May Webinar Series - Streaming Data Processing with Amazon Kinesis and AW...
AWS May Webinar Series - Streaming Data Processing with Amazon Kinesis and AW...Amazon Web Services
 
Kinesis and Spark Streaming - Advanced AWS Meetup - August 2014
Kinesis and Spark Streaming - Advanced AWS Meetup - August 2014Kinesis and Spark Streaming - Advanced AWS Meetup - August 2014
Kinesis and Spark Streaming - Advanced AWS Meetup - August 2014Chris Fregly
 
Day 5 - Real-time Data Processing/Internet of Things (IoT) with Amazon Kinesis
Day 5 - Real-time Data Processing/Internet of Things (IoT) with Amazon KinesisDay 5 - Real-time Data Processing/Internet of Things (IoT) with Amazon Kinesis
Day 5 - Real-time Data Processing/Internet of Things (IoT) with Amazon KinesisAmazon Web Services
 
AWS Webcast - AWS Kinesis Webinar
AWS Webcast - AWS Kinesis WebinarAWS Webcast - AWS Kinesis Webinar
AWS Webcast - AWS Kinesis WebinarAmazon Web Services
 
Log Analytics with Amazon Elasticsearch Service & Kibana
Log Analytics with Amazon Elasticsearch Service & KibanaLog Analytics with Amazon Elasticsearch Service & Kibana
Log Analytics with Amazon Elasticsearch Service & KibanaAmazon Web Services
 
Build a Real-time Streaming Data Visualization System with Amazon Kinesis Ana...
Build a Real-time Streaming Data Visualization System with Amazon Kinesis Ana...Build a Real-time Streaming Data Visualization System with Amazon Kinesis Ana...
Build a Real-time Streaming Data Visualization System with Amazon Kinesis Ana...Amazon Web Services
 
Streaming data analytics (Kinesis, EMR/Spark) - Pop-up Loft Tel Aviv
Streaming data analytics (Kinesis, EMR/Spark) - Pop-up Loft Tel Aviv Streaming data analytics (Kinesis, EMR/Spark) - Pop-up Loft Tel Aviv
Streaming data analytics (Kinesis, EMR/Spark) - Pop-up Loft Tel Aviv Amazon Web Services
 
Managing Data with Voume Velocity, and Variety with Amazon ElastiCache for Redis
Managing Data with Voume Velocity, and Variety with Amazon ElastiCache for RedisManaging Data with Voume Velocity, and Variety with Amazon ElastiCache for Redis
Managing Data with Voume Velocity, and Variety with Amazon ElastiCache for RedisAmazon Web Services
 
AWS Kinesis - Streams, Firehose, Analytics
AWS Kinesis - Streams, Firehose, AnalyticsAWS Kinesis - Streams, Firehose, Analytics
AWS Kinesis - Streams, Firehose, AnalyticsSerhat Can
 
Best Practices for Running MongoDB on AWS - AWS May 2016 Webinar Series
Best Practices for Running MongoDB on AWS - AWS May 2016 Webinar SeriesBest Practices for Running MongoDB on AWS - AWS May 2016 Webinar Series
Best Practices for Running MongoDB on AWS - AWS May 2016 Webinar SeriesAmazon Web Services
 
Data Warehousing and Analytics on Redshift and EMR
Data Warehousing and Analytics on Redshift and EMRData Warehousing and Analytics on Redshift and EMR
Data Warehousing and Analytics on Redshift and EMRAmazon Web Services
 
Hands-on Lab: Data Lake Analytics
Hands-on Lab: Data Lake AnalyticsHands-on Lab: Data Lake Analytics
Hands-on Lab: Data Lake AnalyticsAmazon Web Services
 
Getting Started with Amazon Kinesis
Getting Started with Amazon KinesisGetting Started with Amazon Kinesis
Getting Started with Amazon KinesisAmazon Web Services
 
Deep Dive on Amazon Relational Database Service (November 2016)
Deep Dive on Amazon Relational Database Service (November 2016)Deep Dive on Amazon Relational Database Service (November 2016)
Deep Dive on Amazon Relational Database Service (November 2016)Julien SIMON
 
Real-time Data Processing with Amazon DynamoDB Streams and AWS Lambda
Real-time Data Processing with Amazon DynamoDB Streams and AWS LambdaReal-time Data Processing with Amazon DynamoDB Streams and AWS Lambda
Real-time Data Processing with Amazon DynamoDB Streams and AWS LambdaAmazon Web Services
 
Building a Real Time Dashboard with Amazon Kinesis, Amazon Lambda and Amazon ...
Building a Real Time Dashboard with Amazon Kinesis, Amazon Lambda and Amazon ...Building a Real Time Dashboard with Amazon Kinesis, Amazon Lambda and Amazon ...
Building a Real Time Dashboard with Amazon Kinesis, Amazon Lambda and Amazon ...Amazon Web Services
 
Real Time Data Processing Using AWS Lambda
Real Time Data Processing Using AWS LambdaReal Time Data Processing Using AWS Lambda
Real Time Data Processing Using AWS LambdaAmazon Web Services
 
Real-time Streaming and Querying with Amazon Kinesis and Amazon Elastic MapRe...
Real-time Streaming and Querying with Amazon Kinesis and Amazon Elastic MapRe...Real-time Streaming and Querying with Amazon Kinesis and Amazon Elastic MapRe...
Real-time Streaming and Querying with Amazon Kinesis and Amazon Elastic MapRe...Amazon Web Services
 
AWS October Webinar Series - Using Spot Instances to Save up to 90% off Your ...
AWS October Webinar Series - Using Spot Instances to Save up to 90% off Your ...AWS October Webinar Series - Using Spot Instances to Save up to 90% off Your ...
AWS October Webinar Series - Using Spot Instances to Save up to 90% off Your ...Amazon Web Services
 

La actualidad más candente (20)

AWS May Webinar Series - Streaming Data Processing with Amazon Kinesis and AW...
AWS May Webinar Series - Streaming Data Processing with Amazon Kinesis and AW...AWS May Webinar Series - Streaming Data Processing with Amazon Kinesis and AW...
AWS May Webinar Series - Streaming Data Processing with Amazon Kinesis and AW...
 
Kinesis and Spark Streaming - Advanced AWS Meetup - August 2014
Kinesis and Spark Streaming - Advanced AWS Meetup - August 2014Kinesis and Spark Streaming - Advanced AWS Meetup - August 2014
Kinesis and Spark Streaming - Advanced AWS Meetup - August 2014
 
Day 5 - Real-time Data Processing/Internet of Things (IoT) with Amazon Kinesis
Day 5 - Real-time Data Processing/Internet of Things (IoT) with Amazon KinesisDay 5 - Real-time Data Processing/Internet of Things (IoT) with Amazon Kinesis
Day 5 - Real-time Data Processing/Internet of Things (IoT) with Amazon Kinesis
 
AWS Webcast - AWS Kinesis Webinar
AWS Webcast - AWS Kinesis WebinarAWS Webcast - AWS Kinesis Webinar
AWS Webcast - AWS Kinesis Webinar
 
Log Analytics with Amazon Elasticsearch Service & Kibana
Log Analytics with Amazon Elasticsearch Service & KibanaLog Analytics with Amazon Elasticsearch Service & Kibana
Log Analytics with Amazon Elasticsearch Service & Kibana
 
Build a Real-time Streaming Data Visualization System with Amazon Kinesis Ana...
Build a Real-time Streaming Data Visualization System with Amazon Kinesis Ana...Build a Real-time Streaming Data Visualization System with Amazon Kinesis Ana...
Build a Real-time Streaming Data Visualization System with Amazon Kinesis Ana...
 
Streaming data analytics (Kinesis, EMR/Spark) - Pop-up Loft Tel Aviv
Streaming data analytics (Kinesis, EMR/Spark) - Pop-up Loft Tel Aviv Streaming data analytics (Kinesis, EMR/Spark) - Pop-up Loft Tel Aviv
Streaming data analytics (Kinesis, EMR/Spark) - Pop-up Loft Tel Aviv
 
Managing Data with Voume Velocity, and Variety with Amazon ElastiCache for Redis
Managing Data with Voume Velocity, and Variety with Amazon ElastiCache for RedisManaging Data with Voume Velocity, and Variety with Amazon ElastiCache for Redis
Managing Data with Voume Velocity, and Variety with Amazon ElastiCache for Redis
 
AWS Kinesis - Streams, Firehose, Analytics
AWS Kinesis - Streams, Firehose, AnalyticsAWS Kinesis - Streams, Firehose, Analytics
AWS Kinesis - Streams, Firehose, Analytics
 
Real-Time Event Processing
Real-Time Event ProcessingReal-Time Event Processing
Real-Time Event Processing
 
Best Practices for Running MongoDB on AWS - AWS May 2016 Webinar Series
Best Practices for Running MongoDB on AWS - AWS May 2016 Webinar SeriesBest Practices for Running MongoDB on AWS - AWS May 2016 Webinar Series
Best Practices for Running MongoDB on AWS - AWS May 2016 Webinar Series
 
Data Warehousing and Analytics on Redshift and EMR
Data Warehousing and Analytics on Redshift and EMRData Warehousing and Analytics on Redshift and EMR
Data Warehousing and Analytics on Redshift and EMR
 
Hands-on Lab: Data Lake Analytics
Hands-on Lab: Data Lake AnalyticsHands-on Lab: Data Lake Analytics
Hands-on Lab: Data Lake Analytics
 
Getting Started with Amazon Kinesis
Getting Started with Amazon KinesisGetting Started with Amazon Kinesis
Getting Started with Amazon Kinesis
 
Deep Dive on Amazon Relational Database Service (November 2016)
Deep Dive on Amazon Relational Database Service (November 2016)Deep Dive on Amazon Relational Database Service (November 2016)
Deep Dive on Amazon Relational Database Service (November 2016)
 
Real-time Data Processing with Amazon DynamoDB Streams and AWS Lambda
Real-time Data Processing with Amazon DynamoDB Streams and AWS LambdaReal-time Data Processing with Amazon DynamoDB Streams and AWS Lambda
Real-time Data Processing with Amazon DynamoDB Streams and AWS Lambda
 
Building a Real Time Dashboard with Amazon Kinesis, Amazon Lambda and Amazon ...
Building a Real Time Dashboard with Amazon Kinesis, Amazon Lambda and Amazon ...Building a Real Time Dashboard with Amazon Kinesis, Amazon Lambda and Amazon ...
Building a Real Time Dashboard with Amazon Kinesis, Amazon Lambda and Amazon ...
 
Real Time Data Processing Using AWS Lambda
Real Time Data Processing Using AWS LambdaReal Time Data Processing Using AWS Lambda
Real Time Data Processing Using AWS Lambda
 
Real-time Streaming and Querying with Amazon Kinesis and Amazon Elastic MapRe...
Real-time Streaming and Querying with Amazon Kinesis and Amazon Elastic MapRe...Real-time Streaming and Querying with Amazon Kinesis and Amazon Elastic MapRe...
Real-time Streaming and Querying with Amazon Kinesis and Amazon Elastic MapRe...
 
AWS October Webinar Series - Using Spot Instances to Save up to 90% off Your ...
AWS October Webinar Series - Using Spot Instances to Save up to 90% off Your ...AWS October Webinar Series - Using Spot Instances to Save up to 90% off Your ...
AWS October Webinar Series - Using Spot Instances to Save up to 90% off Your ...
 

Destacado

HTTP/2 : why upgrading the web? - DjangoCon Europe 2016 Budapest
HTTP/2 : why upgrading the web? - DjangoCon Europe 2016 BudapestHTTP/2 : why upgrading the web? - DjangoCon Europe 2016 Budapest
HTTP/2 : why upgrading the web? - DjangoCon Europe 2016 BudapestQuentin Adam
 
System integration through queues
System integration through queuesSystem integration through queues
System integration through queuesGianluca Padovani
 
Pythian: My First 100 days with a Cassandra Cluster
Pythian: My First 100 days with a Cassandra ClusterPythian: My First 100 days with a Cassandra Cluster
Pythian: My First 100 days with a Cassandra ClusterDataStax Academy
 
Concurrent and Distributed Applications with Akka, Java and Scala
Concurrent and Distributed Applications with Akka, Java and ScalaConcurrent and Distributed Applications with Akka, Java and Scala
Concurrent and Distributed Applications with Akka, Java and ScalaFernando Rodriguez
 
[2016 체인지온] 소셜미디어 시대, 비영리단체의 콘텐츠 마케팅 성공 법칙_ᄀ...
[2016 체인지온] 소셜미디어 시대, 비영리단체의 콘텐츠 마케팅 성공 법칙_ᄀ...[2016 체인지온] 소셜미디어 시대, 비영리단체의 콘텐츠 마케팅 성공 법칙_ᄀ...
[2016 체인지온] 소셜미디어 시대, 비영리단체의 콘텐츠 마케팅 성공 법칙_ᄀ...daumfoundation
 
[2016 체인지온] NPO Media 2016: 한국 비영리 조직의 디지털 미디어 이해 및 활용도 조사 발표_주은수
[2016 체인지온] NPO Media 2016: 한국 비영리 조직의 디지털 미디어 이해 및 활용도 조사 발표_주은수[2016 체인지온] NPO Media 2016: 한국 비영리 조직의 디지털 미디어 이해 및 활용도 조사 발표_주은수
[2016 체인지온] NPO Media 2016: 한국 비영리 조직의 디지털 미디어 이해 및 활용도 조사 발표_주은수daumfoundation
 
HPC Top 5 Stories: Dec. 12, 2016
HPC Top 5 Stories: Dec. 12, 2016HPC Top 5 Stories: Dec. 12, 2016
HPC Top 5 Stories: Dec. 12, 2016NVIDIA
 
Sensors, Wearables and the Internet of Things: A Revolution in the Making
Sensors, Wearables and the Internet of Things: A Revolution in the MakingSensors, Wearables and the Internet of Things: A Revolution in the Making
Sensors, Wearables and the Internet of Things: A Revolution in the MakingMatt Turck
 
How to Harness the Power of the Pause #PresentationTips
How to Harness the Power of the Pause #PresentationTipsHow to Harness the Power of the Pause #PresentationTips
How to Harness the Power of the Pause #PresentationTipsNadine Hanafi
 
AI Is Accelerating Healthcare Transformation
AI Is Accelerating Healthcare TransformationAI Is Accelerating Healthcare Transformation
AI Is Accelerating Healthcare TransformationNVIDIA
 
StanとRでベイズ統計モデリング読書会 導入編(1章~3章)
StanとRでベイズ統計モデリング読書会 導入編(1章~3章)StanとRでベイズ統計モデリング読書会 導入編(1章~3章)
StanとRでベイズ統計モデリング読書会 導入編(1章~3章)Hiroshi Shimizu
 
臨床心理学における例数設計
臨床心理学における例数設計臨床心理学における例数設計
臨床心理学における例数設計Senshu University
 
U.S. election 2016- Debate wrap
U.S. election 2016- Debate wrapU.S. election 2016- Debate wrap
U.S. election 2016- Debate wrapBloomberg LP
 
9 Unique Traits of High-Performing Teams
9 Unique Traits of High-Performing Teams9 Unique Traits of High-Performing Teams
9 Unique Traits of High-Performing TeamsWeekdone.com
 

Destacado (20)

Apache Spark & Streaming
Apache Spark & StreamingApache Spark & Streaming
Apache Spark & Streaming
 
Perancangan bandar mapan
Perancangan bandar mapan Perancangan bandar mapan
Perancangan bandar mapan
 
Bpm biz agi
Bpm biz agiBpm biz agi
Bpm biz agi
 
HTTP/2 : why upgrading the web? - DjangoCon Europe 2016 Budapest
HTTP/2 : why upgrading the web? - DjangoCon Europe 2016 BudapestHTTP/2 : why upgrading the web? - DjangoCon Europe 2016 Budapest
HTTP/2 : why upgrading the web? - DjangoCon Europe 2016 Budapest
 
System integration through queues
System integration through queuesSystem integration through queues
System integration through queues
 
Pythian: My First 100 days with a Cassandra Cluster
Pythian: My First 100 days with a Cassandra ClusterPythian: My First 100 days with a Cassandra Cluster
Pythian: My First 100 days with a Cassandra Cluster
 
Concurrent and Distributed Applications with Akka, Java and Scala
Concurrent and Distributed Applications with Akka, Java and ScalaConcurrent and Distributed Applications with Akka, Java and Scala
Concurrent and Distributed Applications with Akka, Java and Scala
 
NoSQL Essentials: Cassandra
NoSQL Essentials: CassandraNoSQL Essentials: Cassandra
NoSQL Essentials: Cassandra
 
Apache Spark with Scala
Apache Spark with ScalaApache Spark with Scala
Apache Spark with Scala
 
[2016 체인지온] 소셜미디어 시대, 비영리단체의 콘텐츠 마케팅 성공 법칙_ᄀ...
[2016 체인지온] 소셜미디어 시대, 비영리단체의 콘텐츠 마케팅 성공 법칙_ᄀ...[2016 체인지온] 소셜미디어 시대, 비영리단체의 콘텐츠 마케팅 성공 법칙_ᄀ...
[2016 체인지온] 소셜미디어 시대, 비영리단체의 콘텐츠 마케팅 성공 법칙_ᄀ...
 
[2016 체인지온] NPO Media 2016: 한국 비영리 조직의 디지털 미디어 이해 및 활용도 조사 발표_주은수
[2016 체인지온] NPO Media 2016: 한국 비영리 조직의 디지털 미디어 이해 및 활용도 조사 발표_주은수[2016 체인지온] NPO Media 2016: 한국 비영리 조직의 디지털 미디어 이해 및 활용도 조사 발표_주은수
[2016 체인지온] NPO Media 2016: 한국 비영리 조직의 디지털 미디어 이해 및 활용도 조사 발표_주은수
 
HPC Top 5 Stories: Dec. 12, 2016
HPC Top 5 Stories: Dec. 12, 2016HPC Top 5 Stories: Dec. 12, 2016
HPC Top 5 Stories: Dec. 12, 2016
 
Flowered houses
Flowered housesFlowered houses
Flowered houses
 
Sensors, Wearables and the Internet of Things: A Revolution in the Making
Sensors, Wearables and the Internet of Things: A Revolution in the MakingSensors, Wearables and the Internet of Things: A Revolution in the Making
Sensors, Wearables and the Internet of Things: A Revolution in the Making
 
How to Harness the Power of the Pause #PresentationTips
How to Harness the Power of the Pause #PresentationTipsHow to Harness the Power of the Pause #PresentationTips
How to Harness the Power of the Pause #PresentationTips
 
AI Is Accelerating Healthcare Transformation
AI Is Accelerating Healthcare TransformationAI Is Accelerating Healthcare Transformation
AI Is Accelerating Healthcare Transformation
 
StanとRでベイズ統計モデリング読書会 導入編(1章~3章)
StanとRでベイズ統計モデリング読書会 導入編(1章~3章)StanとRでベイズ統計モデリング読書会 導入編(1章~3章)
StanとRでベイズ統計モデリング読書会 導入編(1章~3章)
 
臨床心理学における例数設計
臨床心理学における例数設計臨床心理学における例数設計
臨床心理学における例数設計
 
U.S. election 2016- Debate wrap
U.S. election 2016- Debate wrapU.S. election 2016- Debate wrap
U.S. election 2016- Debate wrap
 
9 Unique Traits of High-Performing Teams
9 Unique Traits of High-Performing Teams9 Unique Traits of High-Performing Teams
9 Unique Traits of High-Performing Teams
 

Similar a Scalable and Fault-Tolerant Apps with AWS

Self Service Agile Infrastructure for Product Teams - Pop-up Loft Tel Aviv
Self Service Agile Infrastructure for Product Teams - Pop-up Loft Tel AvivSelf Service Agile Infrastructure for Product Teams - Pop-up Loft Tel Aviv
Self Service Agile Infrastructure for Product Teams - Pop-up Loft Tel AvivAmazon Web Services
 
AWS Infrastructure as Code - September 2016 Webinar Series
AWS Infrastructure as Code - September 2016 Webinar SeriesAWS Infrastructure as Code - September 2016 Webinar Series
AWS Infrastructure as Code - September 2016 Webinar SeriesAmazon Web Services
 
Automating your Infrastructure Deployment with CloudFormation and OpsWorks –...
 Automating your Infrastructure Deployment with CloudFormation and OpsWorks –... Automating your Infrastructure Deployment with CloudFormation and OpsWorks –...
Automating your Infrastructure Deployment with CloudFormation and OpsWorks –...Amazon Web Services
 
Disaster Recovery Site on AWS - Minimal Cost Maximum Efficiency (STG305) | AW...
Disaster Recovery Site on AWS - Minimal Cost Maximum Efficiency (STG305) | AW...Disaster Recovery Site on AWS - Minimal Cost Maximum Efficiency (STG305) | AW...
Disaster Recovery Site on AWS - Minimal Cost Maximum Efficiency (STG305) | AW...Amazon Web Services
 
Deep Dive - Infrastructure as Code
Deep Dive - Infrastructure as CodeDeep Dive - Infrastructure as Code
Deep Dive - Infrastructure as CodeAmazon Web Services
 
Deployment and Management on AWS:
 A Deep Dive on Options and Tools
Deployment and Management on AWS:
 A Deep Dive on Options and ToolsDeployment and Management on AWS:
 A Deep Dive on Options and Tools
Deployment and Management on AWS:
 A Deep Dive on Options and ToolsDanilo Poccia
 
2013 05-openstack-israel-heat
2013 05-openstack-israel-heat2013 05-openstack-israel-heat
2013 05-openstack-israel-heatAlex Heneveld
 
DevOps on AWS: Deep Dive on Infrastructure as Code - Toronto
DevOps on AWS: Deep Dive on Infrastructure as Code - TorontoDevOps on AWS: Deep Dive on Infrastructure as Code - Toronto
DevOps on AWS: Deep Dive on Infrastructure as Code - TorontoAmazon Web Services
 
Infrastructure as Code: Manage your Architecture with Git
Infrastructure as Code: Manage your Architecture with GitInfrastructure as Code: Manage your Architecture with Git
Infrastructure as Code: Manage your Architecture with GitDanilo Poccia
 
AWS May Webinar Series - Deep Dive: Infrastructure as Code
AWS May Webinar Series - Deep Dive: Infrastructure as CodeAWS May Webinar Series - Deep Dive: Infrastructure as Code
AWS May Webinar Series - Deep Dive: Infrastructure as CodeAmazon Web Services
 
AWS CloudFormation Best Practices
AWS CloudFormation Best PracticesAWS CloudFormation Best Practices
AWS CloudFormation Best PracticesAmazon Web Services
 
Automating your Infrastructure Deployment with AWS CloudFormation and AWS Ops...
Automating your Infrastructure Deployment with AWS CloudFormation and AWS Ops...Automating your Infrastructure Deployment with AWS CloudFormation and AWS Ops...
Automating your Infrastructure Deployment with AWS CloudFormation and AWS Ops...Amazon Web Services
 
Deep Dive: Infrastructure as Code
Deep Dive: Infrastructure as CodeDeep Dive: Infrastructure as Code
Deep Dive: Infrastructure as CodeAmazon Web Services
 
Deep Dive: Infrastructure as Code
Deep Dive: Infrastructure as CodeDeep Dive: Infrastructure as Code
Deep Dive: Infrastructure as CodeAmazon Web Services
 
Programming the Physical World with Device Shadows and Rules Engine
Programming the Physical World with Device Shadows and Rules EngineProgramming the Physical World with Device Shadows and Rules Engine
Programming the Physical World with Device Shadows and Rules EngineAmazon Web Services
 
Deep Dive: Infrastructure as Code
Deep Dive: Infrastructure as CodeDeep Dive: Infrastructure as Code
Deep Dive: Infrastructure as CodeAmazon Web Services
 
AWS January 2016 Webinar Series - Managing your Infrastructure as Code
AWS January 2016 Webinar Series - Managing your Infrastructure as CodeAWS January 2016 Webinar Series - Managing your Infrastructure as Code
AWS January 2016 Webinar Series - Managing your Infrastructure as CodeAmazon Web Services
 

Similar a Scalable and Fault-Tolerant Apps with AWS (20)

Self Service Agile Infrastructure for Product Teams - Pop-up Loft Tel Aviv
Self Service Agile Infrastructure for Product Teams - Pop-up Loft Tel AvivSelf Service Agile Infrastructure for Product Teams - Pop-up Loft Tel Aviv
Self Service Agile Infrastructure for Product Teams - Pop-up Loft Tel Aviv
 
AWS Infrastructure as Code - September 2016 Webinar Series
AWS Infrastructure as Code - September 2016 Webinar SeriesAWS Infrastructure as Code - September 2016 Webinar Series
AWS Infrastructure as Code - September 2016 Webinar Series
 
Automating your Infrastructure Deployment with CloudFormation and OpsWorks –...
 Automating your Infrastructure Deployment with CloudFormation and OpsWorks –... Automating your Infrastructure Deployment with CloudFormation and OpsWorks –...
Automating your Infrastructure Deployment with CloudFormation and OpsWorks –...
 
Disaster Recovery Site on AWS - Minimal Cost Maximum Efficiency (STG305) | AW...
Disaster Recovery Site on AWS - Minimal Cost Maximum Efficiency (STG305) | AW...Disaster Recovery Site on AWS - Minimal Cost Maximum Efficiency (STG305) | AW...
Disaster Recovery Site on AWS - Minimal Cost Maximum Efficiency (STG305) | AW...
 
Deep Dive - Infrastructure as Code
Deep Dive - Infrastructure as CodeDeep Dive - Infrastructure as Code
Deep Dive - Infrastructure as Code
 
Deployment and Management on AWS:
 A Deep Dive on Options and Tools
Deployment and Management on AWS:
 A Deep Dive on Options and ToolsDeployment and Management on AWS:
 A Deep Dive on Options and Tools
Deployment and Management on AWS:
 A Deep Dive on Options and Tools
 
2013 05-openstack-israel-heat
2013 05-openstack-israel-heat2013 05-openstack-israel-heat
2013 05-openstack-israel-heat
 
infrastructure as code
infrastructure as codeinfrastructure as code
infrastructure as code
 
DevOps on AWS: Deep Dive on Infrastructure as Code - Toronto
DevOps on AWS: Deep Dive on Infrastructure as Code - TorontoDevOps on AWS: Deep Dive on Infrastructure as Code - Toronto
DevOps on AWS: Deep Dive on Infrastructure as Code - Toronto
 
Infrastructure as Code: Manage your Architecture with Git
Infrastructure as Code: Manage your Architecture with GitInfrastructure as Code: Manage your Architecture with Git
Infrastructure as Code: Manage your Architecture with Git
 
Infrastructure as Code
Infrastructure as CodeInfrastructure as Code
Infrastructure as Code
 
Orchestrating the Cloud
Orchestrating the CloudOrchestrating the Cloud
Orchestrating the Cloud
 
AWS May Webinar Series - Deep Dive: Infrastructure as Code
AWS May Webinar Series - Deep Dive: Infrastructure as CodeAWS May Webinar Series - Deep Dive: Infrastructure as Code
AWS May Webinar Series - Deep Dive: Infrastructure as Code
 
AWS CloudFormation Best Practices
AWS CloudFormation Best PracticesAWS CloudFormation Best Practices
AWS CloudFormation Best Practices
 
Automating your Infrastructure Deployment with AWS CloudFormation and AWS Ops...
Automating your Infrastructure Deployment with AWS CloudFormation and AWS Ops...Automating your Infrastructure Deployment with AWS CloudFormation and AWS Ops...
Automating your Infrastructure Deployment with AWS CloudFormation and AWS Ops...
 
Deep Dive: Infrastructure as Code
Deep Dive: Infrastructure as CodeDeep Dive: Infrastructure as Code
Deep Dive: Infrastructure as Code
 
Deep Dive: Infrastructure as Code
Deep Dive: Infrastructure as CodeDeep Dive: Infrastructure as Code
Deep Dive: Infrastructure as Code
 
Programming the Physical World with Device Shadows and Rules Engine
Programming the Physical World with Device Shadows and Rules EngineProgramming the Physical World with Device Shadows and Rules Engine
Programming the Physical World with Device Shadows and Rules Engine
 
Deep Dive: Infrastructure as Code
Deep Dive: Infrastructure as CodeDeep Dive: Infrastructure as Code
Deep Dive: Infrastructure as Code
 
AWS January 2016 Webinar Series - Managing your Infrastructure as Code
AWS January 2016 Webinar Series - Managing your Infrastructure as CodeAWS January 2016 Webinar Series - Managing your Infrastructure as Code
AWS January 2016 Webinar Series - Managing your Infrastructure as Code
 

Último

How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...gurkirankumar98700
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 

Último (20)

How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 

Scalable and Fault-Tolerant Apps with AWS

  • 1. Amazon Web Services Fernando Rodriguez Olivera @frodriguez Buenos Aires, Argentina, May 2013 Buenos Aires High Scalability Group Scalable and Fault-Tolerant Apps with AWS
  • 2. AWS Regions Virginia (5 AZs, 2006) California (3 AZs, 2009) Oregon (3 AZs, 2011) Ireland (3 AZs, 2007) Tokyo (3 AZs, 2011) Singapore (2 AZs, 2011) 23 Availabilty Zones + (2 GovCloud) North America South America Europe Asia Pacific São Paulo (2 AZs, 2011) Sydney (2 AZs, 2012) 23 (+ 2Gov) AZs GovCloud (2 AZs, 2011)
  • 3. Availability Zones DC1 DC2 DC3 DC4 DC5 DC6 DC7 DC8 DC9 DC10 us-east-1a us-east-1b us-east-1c “Our US East-1 Region consists of more than 10 datacenters structured into multiple Availability Zones.” [July, 2012] (http://aws.amazon.com/message/67457/) DataCenters > AZs
  • 4. Core1 EC2 - Semi Dedicated Resources Disk1 EC2 Instance EC2 Instance EC2 Instance EC2 Instance XEN Core2 Core3 Core4 Disk1 Disk1 Disk1 CPU RAM DISK Text
  • 5. EBS (Elastic Block Storage) EC2 Instance A B C EBS Volume A A B BC C EBS Cluster Local Network Shared or Dedicated (EBS Optimized) Standard or Provisioned IOPS
  • 7. Elastic Capacity Reserved Capacity On Demand Amazon Datacenter(AZ) Spot Instances (Bidding)
  • 8. EC2 Pricing (US-East) Small Instance 1 Core 1.7 GB RAM 160 GB HDD On Demand $0.060/hr       $43.20  /  month R/Light 1yr $61  +  0.034/hr $61  +  $24.48/month $29.56  /  month R/Medium 1yr $139  +  0.021/hr $139  +  $15.12/month $26.70  /  month R/Heavy 1yr $169  +  0.014/hr $169  +  $10.08/month $24.16  /  month R/Light 3yr $96  +  0.027/hr $96  +  19.44/month $22.10  /  month R/Medium 3yr $215  +  0.017/hr $215  +  12.34/month $18.21  /  month R/Heavy 3yr $257  +  0.012/hr $257  +  8.64/month $15.77  /  month Spot $0.007/hr $5.04  /  month May/2013 1 EC2 Compute Unit
  • 9. Large Instance 2 Cores 7.5 GB RAM 850 GB HDD On Demand $0.240/hr       $172  /  month R/Light 1yr $243  +  0.136/hr $243  +  $97.92/month $118.17  /  month R/Medium 1yr $554  +  0.084/hr $554  +  $60.48/month $106.64  /  month R/Heavy 1yr $676  +  0.056/hr $676  +  $40.32/month $96.65  /  month R/Light 3yr $384  +  0.108/hr $384  +  77.76/month $88.42  /  month R/Medium 3yr $860  +  0.067/hr $860  +  48.24/month $72.12  /  month R/Heavy 3yr $1028  +  0.046/hr $1028  +  33.12/month $61.67  /  month Spot $0.026/hr $18.72  /  month May/2013 4 EC2 Compute Units EC2 Pricing (US-East)
  • 10. Amazon Web Services EC2 DynamoDB SQS - SNS CloudFormation API-HTTP/REST Java Ruby PHP Node.js Python* .NET Route53 CloudFront ... ServicesSDKs CommandLineTools
  • 11. CloudFormation - EC2 Instance  "myServer":  {          "Type":  "AWS::EC2::Instance",          "Properties":  {                  "ImageId"                  :  "ami-­‐0145d268",                  "InstanceType"        :  "m1.small",                  "KeyName"                  :  "mykey",                                  "UserData"  :  {  "Fn::Base64"  :  {  "Fn::Join"  :  ["",  [                          "#!/bin/bash",                                "n",                          "apt-­‐get  -­‐y  update",                    "n",                          "apt-­‐get  -­‐y  install  apache2",  "n"                  ]]}}          }  }
  • 12. CloudFormation - Security Group  "mySecurityGroup":  {          "Type":  "AWS::EC2::SecurityGroup",          "Properties":  {                  "GroupDescription"          :  "...",                  "SecurityGroupIngress"  :  [{                            "IpProtocol"  :  "tcp",                              "FromPort"      :  "22",                              "ToPort"          :  "22",                              "CidrIp"          :  "0.0.0.0/0"                    }]          }  }
  • 13. Elastic Load Balancer (ELB) Unhealthy Instance EC2 Instance EC2 Instance EC2 Instance HTTP/S-TCP/SSL Health Checks Balancing CloudWatch Latency - Requests - Status Codes Load Balancer
  • 14. Elastic Load Balancer (ELB) EC2 Instance EC2 Instance EC2 Instance EC2 Instance Load Balancer DNSBalancing (Client-Side) (MultiAZ) Load Balancing (Server Side) AZ 1 AZ 2 LB (AZ 1) LB (AZ 2)
  • 15. Elastic Load Balancer (ELB)                    lb-­‐loadbalancer...us-­‐east-­‐1.elb.amazonaws.com    IPv4          ipv6.lb-­‐loadBalancer...us-­‐east-­‐1.elb.amazonaws.com    IPv6 dualstack.lb-­‐loadBalancer...us-­‐east-­‐1.elb.amazonaws.com    IPv4/IPv6 Region Different IPs for each AZ NameStack (DNS Name) DNS Name CNAME IPv4/IPv6
  • 16. CloudFormation - Load Balancer (1/2)    "balancer":  {          "Type":  "AWS::ElasticLoadBalancing::LoadBalancer",          "Properties":  {                    "AvailabilityZones"  :  {  "Fn::GetAZs"  :  ""  },                  "Listeners":  [{                          "Protocol"                  :  "HTTP",                          "LoadBalancerPort"  :  "80",                          "InstancePort"          :  "80"                  }],  }
  • 17. CloudFormation - Load Balancer (2/2)    "balancer":  {          "Type"  :  "AWS::ElasticLoadBalancing::LoadBalancer",          "Properties"  :  {                  "HealthCheck"  :  {                          "Interval"                      :  "25",                          "Target"                          :  "HTTP:80/",                          "Timeout"                        :  "10",                          "UnhealthyThreshold"  :  "2",                          "HealthyThreshold"      :  "2"                  }              } }
  • 18. AutoScaling Groups EC2 Instance EC2 Instance EC2 Instance AutoScaling Group Launch Config Min: 2 Max: 8Desired: 4 Cloud Watch AlarmsScaling Policy +1 Scaling Policy -1 avg  cpu  >  70 avg  cpu  <  40 EC2 Instance
  • 20. CloudFormation - AutoScaling Group  "autoScalingGroup":  {          "Type"  :  "AWS::AutoScaling::AutoScalingGroup",          "Properties"  :  {                  "AvailabilityZones"              :  {  "Fn::GetAZs"  :  ""  },                  "LaunchConfigurationName"  :  {                            "Ref"  :  "launchConfig"                    },                  "MinSize"                  :  "2",                  "MaxSize"                  :  "8",                  "DesiredCapacity"  :  "4",          }  }
  • 21. CloudFormation - Launch Config  "launchConfig":  {          "Type":  "AWS::AutoScaling::LaunchConfiguration",          "Properties"  :  {                  "ImageId"            :  "ami-­‐0145d268",                  "InstanceType"  :  "m1.small",                    ...                                  "UserData"  :  {  "Fn::Base64"  :  {  "Fn::Join"  :  ["",  [                          "#!/bin/bash",                                "n",                          "apt-­‐get  -­‐y  update",                    "n",                          "apt-­‐get  -­‐y  install  apache2",  "n"                  ]]}}          }  }
  • 22. CloudFormation - CPU Alarms (1/2)    "cpuHigh":  {          "Type":  "AWS::CloudWatch::Alarm",          "Properties":  {                "Namespace"    :  "AWS/EC2",                "MetricName"  :  "CPUUtilization",                "Statistic"    :  "Average",                "Dimensions"  :  [{                        "Name"    :  "AutoScalingGroupName",                        "Value"  :  {  "Ref"  :  "autoScalingGroup"  }                }],                ...          }  }
  • 23. CloudFormation - CPU Alarms (2/2)    "cpuHigh":  {          "Type":  "AWS::CloudWatch::Alarm",          "Properties"  :  {                "Period"                          :  "60",                "EvaluationPeriods"    :  "2",                "ComparisonOperator"  :  "GreaterThanThreshold"                "Threshold"                    :  "70",                "AlarmActions"              :  [{  "Ref":  "scaleUpPolicy"  }],                    } }
  • 24. CloudFormation - Scaling Policy    "scaleUpPolicy":  {          "Type":  "AWS::AutoScaling::ScalingPolicy",          "Properties"  :  {                  "AdjustmentType"              :  "ChangeInCapacity",                  "ScalingAdjustment"        :  "1",                                "Cooldown"                          :  "60",                  "AutoScalingGroupName"  :  {                            "Ref":  "autoScalingGroup"                    }      } }
  • 25. AutoScaling & ELB EC2 Instance EC2 Instance EC2 Instance EC2 Instance DNSBalancing (Client-Side) Health Check LB Registration Unhealthy Instance Notifications from LB LB (AZ 1) LB (AZ 2)
  • 26. CloudFormation - AutoScaling Group  "autoScalingGroup"  :  {          "Type":  "AWS::AutoScaling::AutoScalingGroup",          "Properties":  {                  ...                  "LoadBalancerNames"  :  [{                            "Ref"  :  "balancer"                    }]          }  }
  • 27. AutoScaling & Multiple Regions AutoScaling Group ue-west-1 (2 AZ) EC2 Instance EC2 Instance EC2 Instance EC2 Instance AutoScaling Group us-east-1 (2 AZ) EC2 Instance EC2 Instance EC2 Instance EC2 Instance EC2 Instance EC2 Instance ELB ELB US CA MX Route 53 Route 53 ES DE IT Latency Based Routing
  • 28. RDS (Relational Database Service) MySQL MySQL Active Stand-by AZ 1 AZ 2 Synchronous Replication MySQL MySQL MySQL Asynchronous Replication Read Replicas
  • 29. Simple Queue Service (SQS) EC2 Instance EC2 Instance Queue EC2 Instance EC2 Instance AutoScalingGroups CloudWatch Alarms Scaling Policy
  • 30. Simple Notification Service (SNS) SNSTopic HTTP Server Mail Server Subscribers
  • 31. CloudFormation - Route 53 (DNS)    "dns":  {      "Type"  :  "AWS::Route53::RecordSetGroup",      "Properties"  :  {              "HostedZoneName"  :  "example.com.",              "RecordSets"          :  [{                        "Name"                        :  "www.example.com.",                        "Type"                        :  "CNAME",                          "TTL"                          :  "300",                        "ResourceRecords"  :                              [{  "Fn::GetAtt"  :  [  "balancer",  "DNSName"  ]}]              }]        } }
  • 32. CloudFormation Templates {        "AWSTemplateFormatVersion"  :  "2010-­‐09-­‐09",        "Description"  :  "  ...  ",        "Parameters"    :  {  ...  },        "Mappings"        :  {  ...  },        "Resources"      :  {  ...  },        "Outputs"          :  {  ...  } }
  • 33. Thanks, Fernando Rodriguez Olivera @frodriguez frodriguez <at> gmail.com http://www.meetup.com/Buenos-Aires-High-Scalability-Group/