SlideShare une entreprise Scribd logo
1  sur  87
Télécharger pour lire hors ligne
From One to Many: Evolving VPC Design
Robert Alexander, AWS Solutions Architect
November 14, 2013

© 2013 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified, or distributed in whole or in part without the express consent of Amazon.com, Inc.
Disclaimer:

Do Try This at Home!
All these designs are in use
by customers
In a physical world you Design your network infrastructure…
then spend a lot of time building and deploying
With Amazon Virtual Private Cloud, build and deploy virtual
datacenters as fast as you design them

version
VPC
Tip

Get to know AWS CloudFormation
• Source control and version control your datacenter
• Deploy infrastructure with one command

• Reproduce anywhere in the globe in minutes
• Segregation of Duties (SoD) between
infrastructure and application owners
Elements of VPC Design

Amazon VPC

Router

Internet
Gateway

Customer
Gateway

Subnet

Virtual
Private
Gateway

VPN
Connection

Route Table

Elastic Network
Interface
•

•

A VPC can span all AZ’s in
an AWS Region

•
Availability Zone A

VPC is a private, isolated
section of the AWS Cloud
where you define the
networking within

Only one decision upon
VPC creation:

Availability Zone B

What IP CIDR block to assign?
•

Subnet
Availability Zone A

Subnet
Availability Zone B

•

On subnet creation only
AZ, VPC and CIDR block
designated

•

VPC CIDR: 10.1.0.0 /16

Subnets are AZ specific

Modifying a Subnet’s
Routing Table or Network
Access Control Lists is
done after creation
VPC
Tip

Plan your VPC IP space before
creating it
•

Consider future AWS region expansion

•

Consider future connectivity to corporate networks

•

Consider subnet design

•

VPC can be /16 down to /28

•

CIDR cannot be modified once created

•

Overlapping IP spaces = future headache
•

Public and Private subnets
are a common logical
isolation

•

At this point in VPC
configuration, Public and
Private are just indicators
of the subnet purpose

•

Several additional elements
must be configured before
traffic can egress the VPC

VPC CIDR: 10.1.0.0 /16

Public Subnet

Private Subnet
Availability Zone A

Public Subnet

Private Subnet
Availability Zone B
•

Subnet size should be
considered relative to
subnet purpose and not the
Layer 2 limits of traditional
switched networks

•

For subnets containing
large, dynamic workloads,
subnet size might be many
1000s of instances

•

Traditional subnet
constraints such as
broadcast domain limits do
not apply in VPC

VPC CIDR: 10.1.0.0 /16

Instance A
10.1.1.11 /24

Instance B
10.1.2.22 /24

Public Subnet

Public Subnet

Instance C
10.1.3.33 /24
Private Subnet
Availability Zone A

Instance D
10.1.4.44 /24
Private Subnet
Availability Zone B
•

By default, every subnet
can route to every other
subnet in a VPC

•

A virtual router forms this
star topology between all
VPC subnets

•

The VPC DHCP Service
hands out the virtual router
address as the default
gateway to every instance
booting in a VPC subnet

•

Virtual Router always takes
the .1 address of every
VPC subnet

VPC CIDR: 10.1.0.0 /16

Instance A
10.1.1.11 /24
Public Subnet

Instance B
10.1.2.22 /24

.1

.1

.1

.1

Instance C
10.1.3.33 /24
Private Subnet
Availability Zone A

Public Subnet

Instance D
10.1.4.44 /24
Private Subnet
Availability Zone B
VPC CIDR: 10.1.0.0 /16

Route Table

Instance A
10.1.1.11 /24
Public Subnet

Destination

Target

10.1.0.0/16

Instance B
10.1.2.22 /24

local

Public Subnet

•
Instance C
10.1.3.33 /24
Private Subnet
Availability Zone A

The local route is the first entry
in every VPC Routing Table
and enables intra subnet
routing (the star topology)

•

The local route cannot be
deleted

Instance D
10.1.4.44 /24
Private Subnet
Availability Zone B
VPC
Tip

Leave the Main Route Table Alone
VPC
Tip

Leave the Main Route Table Alone
• Upon creation, every subnet is associated with the Main
Route Table
• Only after subnet creation can you modify the Route Table
assigned to a subnet

• So leave Main Route Table with only the local route and
eliminate the possibility of a subnet being given routes it
shouldn’t
Instance A
10.1.1.11 /24

Instance B
10.1.2.22 /24

Public Subnet

Public Subnet

Instance C
10.1.3.33 /24
Private Subnet

Route Table

Availability Zone A

Destination

Target

10.1.0.0/16

local

10.1.1.0/24

Instance B

Instance D
10.1.4.44 /24
Private Subnet
Availability Zone B

•

You cannot create a route
more specific than the local
route

•

VPC CIDR: 10.1.0.0 /16

VPC Routing Tables are for
defining ways OUT of a VPC
and not for defining Intra-VPC
routes
Network ACLs vs Security Groups
Elastic Network
Instance
Security Group

NACLs

Security Groups

•
•
•
•

• Applied to instance ENI (up
to 5 per)
• Stateful
• Allow Only (whitelist)
• Rules evaluated as a whole
• SGs can reference other
SGs in same VPC

Applied to subnets (1 per)
Stateless
Allow & Deny (blacklist)
Rules processed in order
Network ACL

VPC Subnet
VPC Network ACLs: What are they good for?
• Enforcing baseline security policy
– Example:
“No TFTP, NetBIOS or SMTP shall egress this
subnet”
Instance

VPC Subnet

• Catch all for holes in instance
security groups
• Segregation of security between
network ops and dev ops
VPC Network ACLs: Best Practices
•
•
•
•

Use sparingly, keep it simple
Egress security policies are best
Create rule #’s with room to grow
Use IAM to tightly control who can alter or delete NACLs
Pushing this will Hurt!
Default Network ACL:
VPC
Tip

Create an IAM VPC Admin Group
Examples of “High Blast Radius” VPC API calls that should be restricted:

Support
Resource
Permissions

{

AttachInternetGateway
AssociateRouteTable
CreateRoute
DeleteCustomerGateway
DeleteInternetGateway
DeleteNetworkAcl
DeleteNetworkAclEntry
DeleteRoute
DeleteRouteTable
DeleteDhcpOptions
ReplaceNetworkAclAssociation
DisassociateRouteTable
Example IAM Policy for NACL Admin
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"ec2:DeleteNetworkAcl",
"ec2:DeleteNetworkAclEntry"
],
"Resource": "arn:aws:ec2:us-west-2:123456789012:network-acl/*",
"Condition": {
"StringEquals": {
Multi Factor Authentication
"ec2:ResourceTag/Environment": "prod"
},
required for Actions in Policy
"Null": {
"aws:MultiFactorAuthAge": "false"
}
}
}
]
}
VPC CIDR: 10.1.0.0 /16

Instance A
10.1.1.11 /24

Instance B
10.1.2.22 /24

Public Subnet

Public Subnet

Instance C
10.1.3.33 /24
Private Subnet
Availability Zone A

Instance D
10.1.4.44 /24
Private Subnet
Availability Zone B

Creating Ways “Out”
of a VPC
VPC CIDR: 10.1.0.0 /16

Only 1 IGW and 1 VGW
per VPC

Internet
Gateway

Instance A
10.1.1.11 /24

Instance B
10.1.2.22 /24

Public Subnet

Public Subnet

Instance C
10.1.3.33 /24

Instance D
10.1.4.44 /24

Route Table

Direct
Connect

Target
local

Corp CIDR

Private Subnet

Availability Zone A

Customer
Data Center

Destination
10.1.0.0/16

Private Subnet

VGW

Availability Zone B

Virtual
Private
Gateway

VPN
Connection

Customer
Data Center
VPC CIDR: 10.1.0.0 /16
Route
Table

Instance A
10.1.1.11 /24
Public Subnet

Instance C
10.1.3.33 /24
Private Subnet
Availability Zone A

Three Elements Required to
Egress VPC from IGW:
1.

Internet Gateway must be
associated to VPC

2.

Subnet must be
associated to a Routing
Table with a route to the
IGW

3.

Instances in the subnet
that will egress VPC must
be associated with a
Public IP

Route Table
Destination

Target

10.1.0.0/16

Instance B
local
10.1.2.22 /24

0.0.0.0/0

Public
IGW Subnet

Instance D
10.1.4.44 /24
Private Subnet
Availability Zone B
Ways to Assign Public IPs
Elastic IP (EIP)
•
•
•
•
•
•

Associated with AWS account and not a specific instance
1 Public IP to 1 Private IP static NAT mapping
Instance does not “see” an EIP associated to it
Persists independent of the instance
Can be assigned while instance is stopped or running
Can be moved, reassigned to other ENIs
Ways to Assign Public IPs
Automatic dynamic Public IP assignment
• Done on instance launch into VPC subnet
• Public IP is dynamic and could change if instance is
stopped and restarted
• Does not count against AWS Account EIP limits
• Works only on instances with a single ENI
Internet

AWS outside the VPC

AWS
region

•

Services such as S3 and
Dynamo DB are Regional
and accessible only via
Public End Points

•

Resources in a VPC
requiring access to
Regional services must be
able to egress the VPC into
the Public AWS network

Amazon S3 DynamoDB
Route
Table

Instance A
Public: 54.200.129.18
Private: 10.1.1.11 /24
Public Subnet

Instance C
10.1.3.33 /24
Private Subnet

Availability Zone A

Instance B
10.1.2.22 /24
Public Subnet

Instance D
10.1.4.44 /24
Private Subnet
Availability Zone B
Examples of AWS outside the VPC
•

•

•

AWS API Endpoints
– Think about which APIs you might be calling from instances within the
VPC
– Good examples: Amazon EC2, AWS CloudFormation, Auto Scaling,
Amazon SWF, Amazon SQS, Amazon SNS
Regional Services
– Amazon S3
– Amazon Dynamo DB
Software and Patch Repositories
– Amazon Linux repo allows access only from AWS public IP blocks
Internet

AWS
region
Amazon S3 DynamoDB
Route
Table

Instance A
Public: 54.200.129.18
Private: 10.1.1.11 /24
Public Subnet

Instance C
10.1.3.33 /24
Private Subnet

Availability Zone A

Instance B
10.1.2.22 /24
Public Subnet

Instance D
10.1.4.44 /24
Private Subnet
Availability Zone B

And what if instance C
in a private subnet
needs to reach outside
the VPC?
It has no route to the
IGW and no public IP.
Internet

AWS
region
Amazon S3 DynamoDB

NAT A
Public: 54.200.129.18
Private: 10.1.1.11 /24
Public Subnet

Deploy an instance that
functions as a
N etwork
A ddress
T ranslat(or)

Instance B
10.1.2.22 /24
Public Subnet

Route Table

Instance C
10.1.3.33 /24

Instance D
10.1.4.44 /24

Availability Zone A

Target

10.1.0.0/16
Private Subnet

Destination

local

0.0.0.0/0

NAT
instanc
e

Private Subnet
Availability Zone B
VPC
Tip

What makes up the Amazon Linux
NAT AMI?
Not much to it:
1. IP forwarding enabled
2. IP NAT Masquerading enabled in iptables
3. Source / Destination check is turned off on the instance
$echo 1 > /proc/sys/net/ipv4/ip_forward
$echo 0 > /proc/sys/net/ipv4/conf/eth0/send_redirects
$/sbin/iptables -t nat -A POSTROUTING -o eth0 –s 10.1.0.0/16 -j MASQUERADE
$/sbin/iptables-save
$aws ec2 modify-instance-attributes –instance-id i-xxxxxxxx –source-destcheck “{”Value”:false}”
Internet

AWS
region
Amazon S3 DynamoDB

Other private subnets
can share the same
routing table and use
the NAT
But…

NAT A
Public: 54.200.129.18
Private: 10.1.1.11 /24
Public Subnet

Instance C
10.1.3.33 /24
Private Subnet

Availability Zone A

Instance B
10.1.2.22 /24
Public Subnet

Instance D
10.1.4.44 /24
Private Subnet
Availability Zone B
Internet

AWS
region
Amazon S3 DynamoDB

NAT A
Public: 54.200.129.18
Private: 10.1.1.11 /24
Public Subnet

Private Subnet

Availability Zone A

Instance B
10.1.2.22 /24
Public Subnet

Private Subnet
Availability Zone B

… you could reach
a bandwidth bottleneck
if your private instances
grow and their NAT
bound traffic grows with
them.
Scalable and Available NAT
Do bandwidth intensive processes need to be
behind a NAT?
•

Separate out application components with bandwidth needs

•

Run components from public subnet instances

•

Goal is full instance bandwidth out of VPC

•

Auto Scaling with Public IP makes this easy

•

NAT still in place for remaining private instances

•

Most Common use case:
Multi-Gbps streams to Amazon S3
Internet

Customers

• Image processing app with high
outbound network to Amazon
S3

AWS
region
Amazon S3 DynamoDB

Public ELB
ELB Auto scaling Group

Public ELB Subnet

Web
Servers
Public Subnet

• Public ELB receives incoming
customer HTTP/S requests
• Auto Scaling assigns public IP
to new web servers

Public ELB Subnet

NAT

Direct to Amazon S3

Multi AZ Auto scaling Group

Private Subnet

Availability Zone A

Public Subnet

Private Subnet

Availability Zone B

• With public IPs, web servers
initiate outbound requests
directly to Amazon S3
• NAT device still in place for
private subnets
Autoscaling Support for Automatic
Public IP Assignment
Sample Launch Configuration (named “hi-bandwidth-public”):
$aws autoscaling create-launch-configuration --launch-configuration-name hi-bandwidthpublic --image-id ami-xxxxxxxx --instance-type m1.xlarge --associate-public-ip-address
Internet

Autoscale HA NAT
• Use Auto Scaling for NAT
Availability

AWS
Region
Amazon S3 DynamoDB

• Create 1 NAT per AZ
• All private subnet route tables to
point to same AZ NAT
• 1 Auto Scaling group per NAT
with min and max size set to 1

NAT

Public Subnet

Private Subnet

Availability Zone A

NAT

Public Subnet

Private Subnet
Availability Zone B

• Let Auto Scaling monitor the
health and availability of your
NATs
• If NAT fails, user data script in
Autoscaling Launch config
programmatically updates
private subnet route tables to
point to new NAT instance ID
Auto Scaling for Availability
Sample HA NAT Autoscaling group (named “ha-nat-asg”):
$aws autoscaling create-auto-scaling-group --auto-scaling-group-name hanat-asg --launch-configuration-name ha-nat-launch --min-size 1 --max-size
1 --vpc-zone-identifier subnet-xxxxxxxx
Automating HA NAT with EC2 User Data

Latest version of the HA NAT User Data script on GitHub:
https://github.com/ralex-aws/vpc
IAM EC2 Role for HA NAT Instance
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"ec2:DescribeInstances",
"ec2:ModifyInstanceAttribute",
"ec2:DescribeSubnets",
"ec2:DescribeRouteTables",
"ec2:CreateRoute",
"ec2:ReplaceRoute"
],
"Resource": "*"
}
]

}
VPC
Tip

Tag Early, Tag Often!
•

Tagging strategy should be part of early design

•

Project Code, Cost Center, Environment, Team, Business Unit

•

Tag resources right after creation

•

Tags supported for resource permissions

•

AWS Billing also supports tags

•

Tight IAM controls on the creation and editing of tags
Finally, if design requirements keep high
bandwidth streams behind NAT:
• Use the 1 HA NAT per AZ design
• Vertically scale your NAT instance type to one with a High Network
Performance rating
• Keep a close watch on your network metrics

t1.micro
Very Low

m1.small
Low

m1.large
Moderate

m1.xlarge, c1.xlarge
High
For further HA NAT design alternatives, please see:
High Availability for Amazon VPC NAT Instances
http://aws.amazon.com/articles/2781451301784570

Deploy HA NAT With Cloudformation Templates:
http://aws.amazon.com/articles/6079781443936876
One VPC, Two VPC
Considering Multiple VPCs
•

Public Facing
Web App

Internal
Corporate
App

VPN
Connection

Customer
Data Center

Public Facing Web App
deployed in own VPC

•

AWS
region

Now want to deploy an
internal only Corporate App
connected to Corporate
Datacenter via VPN

•

New VPC created in the
Region for Corporate app
to keep the external and
internal applications
isolated from each other

What’s Next?
Common Multi-VPC Customer Use Cases:
• Application isolation
• Scope of audit containment
• Risk level separation
• Separate production from non-production

• Multi tenant isolation
• Business unit alignment
Considerations for One or Many VPCs:
• Know your inter-VPC traffic
• Separate AWS accounts by definition means separate
VPCs
• IAM / resource permissions and controls
• VPC limits:
http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_Appendix_Limits.html
There is a whole talk on this one!
CPN208
Selecting the Best VPC Network Architecture
Controlling the Border
Internal Application to VPC
AWS
region

Public Facing
Web App

Internal
Corporate
App

VPN
Connection

Customer
Data Center
Internal Application to VPC

AWS
region

Route Table

Private Subnet
Availability Zone A

Destination

Virtual
Private
Gateway

Availability Zone B

VPN
Connection
Corporate
Data Center

Corporate Internal
Customers

local

Corp CIDR

Private Subnet

Target

10.1.0.0/16

Intranet
App

Intranet
App

VGW
But… app will leverage this for storing
data:

Amazon S3
And you don’t really want to do this:
Amazon
S3

AWS
region

Internet
Intranet
App

Intranet
App
Private Subnet
Availability Zone A

Virtual
Private
Gateway

Private Subnet
Availability Zone B

Corporate Border
Router

Internet
VPN
Connection
Corporate VPN

Corporate
Data Center
Control IGW Access through a Proxy Layer
• Deploy a proxy control layer between application and IGW

• Restrict all outbound HTTP/S access to only approved URL
destinations like Amazon S3
• No route to IGW for private subnets
• Control access to proxy through security groups
• Must configure proxy setting in OS of instances
Controlling the Border

AWS region

• Deploy internal ELB layer
across AZs
• Add all instances allowed
outside access to a security
group

ELB Multi AZ Auto scaling Group

Intranet
App
Private Subnet
Availability Zone A

• Use this security group as the
only source allowed access to
the proxy port in the load
balancer’s security group

ELB Private Subnet

ELB Private Subnet

Internal
ELB

Intranet
App
Private Subnet
Availability Zone B

VPN
Connection
Corporate
Data Center

Corporate Internal
Customers
VPC
Tip

Put load balancers in their own
subnets
• Elastic Load Balancing is Amazon EC2 in your
subnets
• Elastic Load Balancing is using your private
addresses
• Separate subnets = separate control
• Distinguish LB layer from app layers
Amazon
S3

AWS region

• Squid Proxy layer deployed
between internal load balancer
and the IGW border.

Multi AZ Auto scaling Group

Proxy Public Subnet

Private Subnet (s)

Proxy Public Subnet

• Only proxy subnets have route
to IGW.

ELB Private Subnet

HTTP/S

ELB Private Subnet

Intranet
App

Controlling the Border

• Proxy security group allows
inbound only from Elastic Load
Balancing security group.

Internal
ELB

• Proxy restricts which URLs may
pass. In this example,
s3.amazonaws.com is allowed.

Intranet
App
Private Subnet (s)
Availability Zone B

Availability Zone A

VPN
Connection
Corporate
Data Center

Corporate Internal
Customers

• Egress NACLs on proxy
subnets enforce HTTP/S only.
Squid.conf Sample Config:
# CIDR AND Destination Domain based Allow
# CIDR Subnet blocks for Internal ELBs
acl int_elb_cidrs src 10.1.3.0/24 10.1.4.0/24

# Destination domain for target S3 bucket
acl s3_v2_endpoints dstdomain $bucket_name.s3.amazonaws.com
# Squid does AND on both ACLs for allow match
http_access allow int_elb_cidrs s3_v2_endpoints
# Deny everything else
http_access deny all
Using Squid Proxy Instances for Web Service Access
in Amazon VPC:

http://aws.amazon.com/articles/5995712515781075
… and this design could also be an
option to our earlier NAT bandwidth
discussion if outbound traffic
requirements are HTTP only.
Directory and Name Services
in the VPC
…or what do you mean
ip-10-1-1-57.us-west-2.compute.internal isn’t
a “friendly” name?
Active Directory + DNS in the VPC
AWS
region
Domain Join +
DNS Queries

Public Facing
Web App

Domain
Controller
+ DNS

Internal
Corporate
App

New Instance:
friendly-vpc-123.corp.example.com

• Domain Controllers launched in
internal VPC
• Internal VPC instances join
domain upon launch
• Instances use Dynamic DNS to
register both A and PTR records
• Domain controller replicates
with Corporate AD servers
• VPC DNS forwarding to
corporate DNS

VPN
Connection

AD
Replication

corp.example.com
AD Controller
Corporate Data center

DNS
Forward
Requests

example.com
DNS
DNS in the VPC
• Enable automatic DNS hostname creation and
resolution with these 2 options:

• Automatic hostname creation
• Private only instances assigned private hostname
• Public instances assigned public and private
Split DNS Resolution

From outside VPC:

From inside VPC:

Private hostnames only
resolvable within VPC

•

Public hostnames will
resolve to private IP
addresses within the VPC

•

10.1.0.2 represents the
VPC Virtual DNS Service
and will always take the .2
address of your VPC CIDR
block

•

Example hostnames for Public VPC instance:
ec2-54-200-171-240.us-west-2.compute.amazonaws.com
ip-10-1-1-87.us-west-2.compute.internal

•

VPC Virtual DNS Service is
also called
“AmazonProvidedDNS”
and enables instances in a
VPC to resolve public DNS
names
DHCP Option Sets
•

Not possible to replace the
VPC DHCP service with your
own

•

But it is possible to customize
what VPC DHCP hands out

•

Default option set only
contains DNS =
“AmazonProvidedDNS”

•

1 option set assigned per VPC

•

Changing option set
dynamically applies the next
time an instance requests a
lease refresh
Domain Join + Dynamic DNS updates
Availability Zone A

New VPC
DC 1
10.1.3.10

New Instance:
friendly-vpc-123.corp.example.com

Private Subnet

Private Subnet

New Instance Domain Registration
Internal
Corporate
App

New VPC
DC 2
10.1.4.10
Private Subnet

Availability Zone B

VPN
Connection

AD + DNS
Replication

corp.example.com
AD Forest
Corporate Data center

Dynamic DNS without Microsoft DHCP:

example.com
DNS
Sample Powershell user-data for AD instance add and
rename:
<powershell>
$secstr = convertto-securestring -string "Password123" -AsPlainText -Force
$cred = new-object -typename System.Management.Automation.PSCredential -argumentlist domain-add, $secstr
$instanceId = (Invoke-WebRequest -Uri http://169.254.169.254/latest/meta-data/instance-id).Content
$servername = (Get-EC2Tag -Region us-west-2 | Where-Object {$_.ResourceId -eq $instanceId -and $_.Key
-eq "Name"}).Value
Add-Computer -DomainName ”corp.example.com" -NewName $servername -Credential $cred -Restart
</powershell>
DNS Query Path
Availability Zone A

VPC DNS 1
10.1.3.10

DNS query:
www.xyz.com

Private Subnet

Private Subnet

Internal
Corporate
App

VPC DNS 2
10.1.4.10
Private Subnet

Availability Zone B

VPN
Connection

VPC DNS
Forwards to
Example DNS
DNS Forwards on to root
DNS servers if required
corp.example.com
AD Forest

example.com
DNS

Internet
Corporate Data center
For AWS CloudFormation templates and guides to setting up
Microsoft AD domains in VPC, please see:
Deploy a Microsoft SharePoint 2010 Server Farm in the AWS Cloud in 6
Simple Steps:
http://aws.amazon.com/articles/9982940049271604
Implementing Microsoft Windows Server Failover Clustering (WSFC)
and SQL Server 2012 AlwaysOn Availability Groups in the AWS Cloud
http://aws.amazon.com/whitepapers/microsoft-wsfc-sql-alwayson/
Microsoft Exchange Server 2010 in the AWS Cloud: Planning &
Implementation Guide:
http://media.amazonwebservices.com/AWS_Exchange_Planning_I
mplementation_Guide.pdf
Bringing It All Back Home
AWS region

Public Facing
Web App

Internal
Corporate
App

VPN
Connection

What’s Next
???

AD Domain extended into VPC

example.com
AD Controller
Corporate Data center

example.com
DNS
AWS region

Public Facing
Web App

Internal
Corporate
App #1

Corporate Data center

Internal
Corporate
App #2

HA Pair VPN
Endpoints

Internal
Corporate
App #3

Internal
Corporate
App #4

Customer Gateways (CGW):
• 1 per VPN tunnel
• 1 public IP per CGW
• AWS provides 2 tunnel
destinations per region
VPN Hub and Spoke an option…
AWS
region

• Amazon EC2 VPN instances to
central virtual private gateway
Internal
Corporate
App #2

Internal
Corporate
App #3

• Control VPC contains common
services for all app VPCs

Services
VPC

Public Facing
Web App
Internal
Corporate
App #1

• For HA, 2 Amazon EC2-based
VPN endpoints in each spoke

Internal
Corporate
App #4

• Dynamic Routing protocol (BGP,
OSPF) between Spokes and
Hub
• If multi Gbps traffic flow to
Corporate Datacenter, then
IPSec tunnels could become
bandwidth bottleneck

HA Pair VPN
Endpoints
Corporate Data center
… or simplify with AWS Direct Connect
AWS region

Public Facing
Web App

Internal
Corporate
App #1

Internal
Corporate
App #2

Internal
Corporate
App #3

Internal
Corporate
App #4

AWS Direct Connect Private Virtual
Interface (PVI) connects to VGW on
VPC
•
•

1 PVI per VPC
802.1Q VLAN Tags isolate traffic
across AWS Direct Connect

AWS Direct Connect
Location

Private Fiber Connection
One or Multiple
50 – 500 Mbps,
1 Gbps or 10 Gbps pipes

Customer
Data Center
A few bits on AWS Direct Connect…
•

Dedicated, private pipes into AWS

•

Create private (VPC) or public interfaces to AWS

•

Cheaper data out rates than Internet (data in still free)

•

Consistent network performance compared to Internet

•

At Least 1 location to each AWS region (even GovCloud!)

•

Recommend redundant connections

•

Multiple AWS accounts can share a connection
Customer Interface 0/1.101

Private Virtual Interface 1

VLAN Tag

101

VLAN Tag

101

BGP ASN

65001

BGP ASN

7224

BGP Announce

Customer Internal

BGP Announce

10.1.0.0/16

Interface IP

169.254.251.6/30

Interface IP

169.254.251.5/30

Customer Internal
Network

Multiple VPCs Over AWS Direct Connect

VGW 1

VPC 1
10.1.0.0/16
VGW 2

VPC 2
10.2.0.0/16

Route Table

Destination

Target

10.1.0.0/16

PVI 1

10.2.0.0/16

PVI 2

10.3.0.0/16

PVI 3

10.4.0.0/16

PVI 4

VLAN 101
VLAN 102
VGW 3
Customer
Switch + Router

VPC 3

VLAN 103

10.3.0.0/16

VLAN 104

VGW 4

VPC 4
10.4.0.0/16
VPC
Tip

Know Your Routing Database
Before:

After:

Enable:
VPC
Tip

Know Your Routing Database
• Keep track of all incoming BGP announcements into your VPCs
• Create a new Routing Table, unassigned to any subnet, and
enable Route Propagation
• Routing Table will show all routes the VGW has learned through
BGP announcements

• See what the VGW sees
Customer Interface 0/1.501

Public Virtual Interface 1

VLAN Tag

501

VLAN Tag

501

BGP ASN

65501 (or Public)

BGP ASN

7224

BGP Announce

Customer Public

BGP Announce

AWS Regional
Public CIDRs

Interface IP

Public /30 Provided

Interface IP

Public /30 Provided

Customer Internal
Network

Public AWS + VPCs Over AWS Direct Connect

VGW 1

VPC 1
10.1.0.0/16
VGW 2

VPC 2
10.2.0.0/16

Route Table
Destination

Target

VLAN 101

10.1.0.0/16

PVI 1

VLAN 102

10.2.0.0/16

PVI 2

10.3.0.0/16

PVI 3

10.4.0.0/16

PVI 4

Public AWS

PVI 5

VGW 3

VLAN 103
Customer
Switch + Router

VLAN 501

VPC 3
10.3.0.0/16

NAT / PAT
Security Layer

Public AWS
Region
AWS Direct Connect
Location
Customer Routers

AWS DX Routers

AWS
region

Customer Internal
Network

•
•
•
•

Multiple Physical connections:
Active / Active links via BGP multi-pathing
Active / Passive also an option
BGP MEDs or local preference can influence
route
Bidirectional Forwarding Detection (BFD)
supported
AWS Direct Connect
Location:
Virginia or NYC

Going Global

US-East-1
AWS
region
Customer
Routers

Customer Global
MPLS Backbone
Network

AWS Direct Connect
Routers

AWS Direct Connect
Location:
Ireland or London

EU-West-1
AWS
region
Customer
Routers

AWS DX
Routers
With AWS regions just another spoke on your global network,
it’s easy to bring the cloud down to you as you expand around the world.
US-East-1 region

AWS Direct
Connect PoP
Virginia or NYC

EU-West-1 region

US Corporate
Data Center

Corporate MPLS
Backbone

EU Corporate
Data Center

AWS Direct
Connect PoP
Ireland or London
Evolving VPC Design: Recap
•
•
•
•
•
•

Elements of VPC Design
Scalable and Available NAT
One VPC, Two VPC
Controlling the Border
Directory and Name Services in the VPC
Bringing It All Back Home
Related re:Invent Sessions:
ARC202 High Availability Application Architectures in
Amazon VPC
ARC304 Cloud Architectures with AWS Direct Connect
CPN205 Securing Your Amazon EC2 Environment with
AWS IAM Roles and Resource-Based Permissions
CPN208 Selecting the Best VPC Network Architecture
DMG201 Zero to Sixty: AWS CloudFormation
DMG303 AWS CloudFormation under the Hood
Please give us your feedback on this
presentation

ARC401
As a thank you, we will select prize
winners daily for completed surveys!

Contenu connexe

Tendances

Webinar AWS 201 - Using Amazon Virtual Private Cloud (VPC)
Webinar AWS 201 - Using Amazon Virtual Private Cloud (VPC)Webinar AWS 201 - Using Amazon Virtual Private Cloud (VPC)
Webinar AWS 201 - Using Amazon Virtual Private Cloud (VPC)Amazon Web Services
 
AWS re:Invent 2016: From One to Many: Evolving VPC Design (ARC302)
AWS re:Invent 2016: From One to Many: Evolving VPC Design (ARC302)AWS re:Invent 2016: From One to Many: Evolving VPC Design (ARC302)
AWS re:Invent 2016: From One to Many: Evolving VPC Design (ARC302)Amazon Web Services
 
Amazon Virtual Private Cloud VPC Architecture AWS Web Services
Amazon Virtual Private Cloud VPC Architecture AWS Web ServicesAmazon Virtual Private Cloud VPC Architecture AWS Web Services
Amazon Virtual Private Cloud VPC Architecture AWS Web ServicesRobert Wilson
 
(ARC401) Black-Belt Networking for the Cloud Ninja | AWS re:Invent 2014
(ARC401) Black-Belt Networking for the Cloud Ninja | AWS re:Invent 2014(ARC401) Black-Belt Networking for the Cloud Ninja | AWS re:Invent 2014
(ARC401) Black-Belt Networking for the Cloud Ninja | AWS re:Invent 2014Amazon Web Services
 
Securing your AWS Resources with Amazon VPC - AWS Summit 2012 - NYC
Securing your AWS Resources with Amazon VPC - AWS Summit 2012 - NYCSecuring your AWS Resources with Amazon VPC - AWS Summit 2012 - NYC
Securing your AWS Resources with Amazon VPC - AWS Summit 2012 - NYCAmazon Web Services
 
(NET405) Build a Remote Access VPN Solution on AWS
(NET405) Build a Remote Access VPN Solution on AWS(NET405) Build a Remote Access VPN Solution on AWS
(NET405) Build a Remote Access VPN Solution on AWSAmazon Web Services
 
Deep Dive - Amazon Virtual Private Cloud (VPC)
Deep Dive - Amazon Virtual Private Cloud (VPC)Deep Dive - Amazon Virtual Private Cloud (VPC)
Deep Dive - Amazon Virtual Private Cloud (VPC)Amazon Web Services
 
Using Virtual Private Cloud (vpc)
Using Virtual Private Cloud (vpc)Using Virtual Private Cloud (vpc)
Using Virtual Private Cloud (vpc)Amazon Web Services
 
Vpc (virtual private cloud)
Vpc (virtual private cloud)Vpc (virtual private cloud)
Vpc (virtual private cloud)RashmiDhanve
 
Cohesive Networks Support Docs: VNS3 Configuration for Amazon VPC
Cohesive Networks Support Docs: VNS3 Configuration for Amazon VPC Cohesive Networks Support Docs: VNS3 Configuration for Amazon VPC
Cohesive Networks Support Docs: VNS3 Configuration for Amazon VPC Cohesive Networks
 
(SDD302) A Tale of One Thousand Instances - Migrating from Amazon EC2-Classic...
(SDD302) A Tale of One Thousand Instances - Migrating from Amazon EC2-Classic...(SDD302) A Tale of One Thousand Instances - Migrating from Amazon EC2-Classic...
(SDD302) A Tale of One Thousand Instances - Migrating from Amazon EC2-Classic...Amazon Web Services
 
Deep Dive: Amazon Virtual Private Cloud
Deep Dive: Amazon Virtual Private CloudDeep Dive: Amazon Virtual Private Cloud
Deep Dive: Amazon Virtual Private CloudAmazon Web Services
 
AWS Network Topology/Architecture
AWS Network Topology/ArchitectureAWS Network Topology/Architecture
AWS Network Topology/Architecturewlscaudill
 
Deep Dive: Amazon Virtual Private Cloud (March 2017)
Deep Dive: Amazon Virtual Private Cloud (March 2017)Deep Dive: Amazon Virtual Private Cloud (March 2017)
Deep Dive: Amazon Virtual Private Cloud (March 2017)Julien SIMON
 
Deep Dive: Amazon Virtual Private Cloud
Deep Dive: Amazon Virtual Private CloudDeep Dive: Amazon Virtual Private Cloud
Deep Dive: Amazon Virtual Private CloudAmazon Web Services
 
Selecting the Best VPC Network Architecture (CPN208) | AWS re:Invent 2013
Selecting the Best VPC Network Architecture (CPN208) | AWS re:Invent 2013Selecting the Best VPC Network Architecture (CPN208) | AWS re:Invent 2013
Selecting the Best VPC Network Architecture (CPN208) | AWS re:Invent 2013Amazon Web Services
 
Double Redundancy with AWS Direct Connect - Pop-up Loft Tel Aviv
Double Redundancy with AWS Direct Connect - Pop-up Loft Tel AvivDouble Redundancy with AWS Direct Connect - Pop-up Loft Tel Aviv
Double Redundancy with AWS Direct Connect - Pop-up Loft Tel AvivAmazon Web Services
 
VPC Fundamentals & Connectivity - Pop-up Loft Tel Aviv
VPC Fundamentals & Connectivity - Pop-up Loft Tel AvivVPC Fundamentals & Connectivity - Pop-up Loft Tel Aviv
VPC Fundamentals & Connectivity - Pop-up Loft Tel AvivAmazon Web Services
 
AWS VPC best practices 2016 by Bogdan Naydenov
AWS VPC best practices 2016 by Bogdan NaydenovAWS VPC best practices 2016 by Bogdan Naydenov
AWS VPC best practices 2016 by Bogdan NaydenovBogdan Naydenov
 

Tendances (19)

Webinar AWS 201 - Using Amazon Virtual Private Cloud (VPC)
Webinar AWS 201 - Using Amazon Virtual Private Cloud (VPC)Webinar AWS 201 - Using Amazon Virtual Private Cloud (VPC)
Webinar AWS 201 - Using Amazon Virtual Private Cloud (VPC)
 
AWS re:Invent 2016: From One to Many: Evolving VPC Design (ARC302)
AWS re:Invent 2016: From One to Many: Evolving VPC Design (ARC302)AWS re:Invent 2016: From One to Many: Evolving VPC Design (ARC302)
AWS re:Invent 2016: From One to Many: Evolving VPC Design (ARC302)
 
Amazon Virtual Private Cloud VPC Architecture AWS Web Services
Amazon Virtual Private Cloud VPC Architecture AWS Web ServicesAmazon Virtual Private Cloud VPC Architecture AWS Web Services
Amazon Virtual Private Cloud VPC Architecture AWS Web Services
 
(ARC401) Black-Belt Networking for the Cloud Ninja | AWS re:Invent 2014
(ARC401) Black-Belt Networking for the Cloud Ninja | AWS re:Invent 2014(ARC401) Black-Belt Networking for the Cloud Ninja | AWS re:Invent 2014
(ARC401) Black-Belt Networking for the Cloud Ninja | AWS re:Invent 2014
 
Securing your AWS Resources with Amazon VPC - AWS Summit 2012 - NYC
Securing your AWS Resources with Amazon VPC - AWS Summit 2012 - NYCSecuring your AWS Resources with Amazon VPC - AWS Summit 2012 - NYC
Securing your AWS Resources with Amazon VPC - AWS Summit 2012 - NYC
 
(NET405) Build a Remote Access VPN Solution on AWS
(NET405) Build a Remote Access VPN Solution on AWS(NET405) Build a Remote Access VPN Solution on AWS
(NET405) Build a Remote Access VPN Solution on AWS
 
Deep Dive - Amazon Virtual Private Cloud (VPC)
Deep Dive - Amazon Virtual Private Cloud (VPC)Deep Dive - Amazon Virtual Private Cloud (VPC)
Deep Dive - Amazon Virtual Private Cloud (VPC)
 
Using Virtual Private Cloud (vpc)
Using Virtual Private Cloud (vpc)Using Virtual Private Cloud (vpc)
Using Virtual Private Cloud (vpc)
 
Vpc (virtual private cloud)
Vpc (virtual private cloud)Vpc (virtual private cloud)
Vpc (virtual private cloud)
 
Cohesive Networks Support Docs: VNS3 Configuration for Amazon VPC
Cohesive Networks Support Docs: VNS3 Configuration for Amazon VPC Cohesive Networks Support Docs: VNS3 Configuration for Amazon VPC
Cohesive Networks Support Docs: VNS3 Configuration for Amazon VPC
 
(SDD302) A Tale of One Thousand Instances - Migrating from Amazon EC2-Classic...
(SDD302) A Tale of One Thousand Instances - Migrating from Amazon EC2-Classic...(SDD302) A Tale of One Thousand Instances - Migrating from Amazon EC2-Classic...
(SDD302) A Tale of One Thousand Instances - Migrating from Amazon EC2-Classic...
 
Deep Dive: Amazon Virtual Private Cloud
Deep Dive: Amazon Virtual Private CloudDeep Dive: Amazon Virtual Private Cloud
Deep Dive: Amazon Virtual Private Cloud
 
AWS Network Topology/Architecture
AWS Network Topology/ArchitectureAWS Network Topology/Architecture
AWS Network Topology/Architecture
 
Deep Dive: Amazon Virtual Private Cloud (March 2017)
Deep Dive: Amazon Virtual Private Cloud (March 2017)Deep Dive: Amazon Virtual Private Cloud (March 2017)
Deep Dive: Amazon Virtual Private Cloud (March 2017)
 
Deep Dive: Amazon Virtual Private Cloud
Deep Dive: Amazon Virtual Private CloudDeep Dive: Amazon Virtual Private Cloud
Deep Dive: Amazon Virtual Private Cloud
 
Selecting the Best VPC Network Architecture (CPN208) | AWS re:Invent 2013
Selecting the Best VPC Network Architecture (CPN208) | AWS re:Invent 2013Selecting the Best VPC Network Architecture (CPN208) | AWS re:Invent 2013
Selecting the Best VPC Network Architecture (CPN208) | AWS re:Invent 2013
 
Double Redundancy with AWS Direct Connect - Pop-up Loft Tel Aviv
Double Redundancy with AWS Direct Connect - Pop-up Loft Tel AvivDouble Redundancy with AWS Direct Connect - Pop-up Loft Tel Aviv
Double Redundancy with AWS Direct Connect - Pop-up Loft Tel Aviv
 
VPC Fundamentals & Connectivity - Pop-up Loft Tel Aviv
VPC Fundamentals & Connectivity - Pop-up Loft Tel AvivVPC Fundamentals & Connectivity - Pop-up Loft Tel Aviv
VPC Fundamentals & Connectivity - Pop-up Loft Tel Aviv
 
AWS VPC best practices 2016 by Bogdan Naydenov
AWS VPC best practices 2016 by Bogdan NaydenovAWS VPC best practices 2016 by Bogdan Naydenov
AWS VPC best practices 2016 by Bogdan Naydenov
 

En vedette

Continuous Delivery in Ruby
Continuous Delivery in RubyContinuous Delivery in Ruby
Continuous Delivery in RubyBrian Guthrie
 
CIS13: Bootcamp: Ping Identity OAuth and OpenID Connect In Action with PingFe...
CIS13: Bootcamp: Ping Identity OAuth and OpenID Connect In Action with PingFe...CIS13: Bootcamp: Ping Identity OAuth and OpenID Connect In Action with PingFe...
CIS13: Bootcamp: Ping Identity OAuth and OpenID Connect In Action with PingFe...CloudIDSummit
 
AWS Architecting for the Cloud - matt tavis
AWS Architecting for the Cloud - matt tavisAWS Architecting for the Cloud - matt tavis
AWS Architecting for the Cloud - matt tavisAmazon Web Services
 
OpenID Connect - An Emperor or Just New Cloths?
OpenID Connect - An Emperor or Just New Cloths?OpenID Connect - An Emperor or Just New Cloths?
OpenID Connect - An Emperor or Just New Cloths?Oliver Pfaff
 
Hadoop Summit 2012 | Optimizing MapReduce Job Performance
Hadoop Summit 2012 | Optimizing MapReduce Job PerformanceHadoop Summit 2012 | Optimizing MapReduce Job Performance
Hadoop Summit 2012 | Optimizing MapReduce Job PerformanceCloudera, Inc.
 
(APP304) AWS CloudFormation Best Practices | AWS re:Invent 2014
(APP304) AWS CloudFormation Best Practices | AWS re:Invent 2014(APP304) AWS CloudFormation Best Practices | AWS re:Invent 2014
(APP304) AWS CloudFormation Best Practices | AWS re:Invent 2014Amazon Web Services
 
(WEB302) Best Practices for Running WordPress on AWS | AWS re:Invent 2014
(WEB302) Best Practices for Running WordPress on AWS | AWS re:Invent 2014(WEB302) Best Practices for Running WordPress on AWS | AWS re:Invent 2014
(WEB302) Best Practices for Running WordPress on AWS | AWS re:Invent 2014Amazon Web Services
 
(GAM301) Real-Time Game Analytics with Amazon Kinesis, Amazon Redshift, and A...
(GAM301) Real-Time Game Analytics with Amazon Kinesis, Amazon Redshift, and A...(GAM301) Real-Time Game Analytics with Amazon Kinesis, Amazon Redshift, and A...
(GAM301) Real-Time Game Analytics with Amazon Kinesis, Amazon Redshift, and A...Amazon Web Services
 
Core MIDI and Friends
Core MIDI and FriendsCore MIDI and Friends
Core MIDI and FriendsChris Adamson
 
Hybrid MongoDB and RDBMS Applications
Hybrid MongoDB and RDBMS ApplicationsHybrid MongoDB and RDBMS Applications
Hybrid MongoDB and RDBMS ApplicationsSteven Francia
 
Ruby For Java Programmers
Ruby For Java ProgrammersRuby For Java Programmers
Ruby For Java ProgrammersMike Bowler
 
Optimizing Hive Queries
Optimizing Hive QueriesOptimizing Hive Queries
Optimizing Hive QueriesOwen O'Malley
 
How To Solder V3.5
How To Solder V3.5How To Solder V3.5
How To Solder V3.5JasonDeMoe
 
Powering Interactive Data Analysis at Pinterest by Amazon Redshift
Powering Interactive Data Analysis at Pinterest by Amazon RedshiftPowering Interactive Data Analysis at Pinterest by Amazon Redshift
Powering Interactive Data Analysis at Pinterest by Amazon RedshiftJie Li
 
Callbacks, Promises, and Coroutines (oh my!): Asynchronous Programming Patter...
Callbacks, Promises, and Coroutines (oh my!): Asynchronous Programming Patter...Callbacks, Promises, and Coroutines (oh my!): Asynchronous Programming Patter...
Callbacks, Promises, and Coroutines (oh my!): Asynchronous Programming Patter...Domenic Denicola
 
(DVO401) Deep Dive into Blue/Green Deployments on AWS
(DVO401) Deep Dive into Blue/Green Deployments on AWS(DVO401) Deep Dive into Blue/Green Deployments on AWS
(DVO401) Deep Dive into Blue/Green Deployments on AWSAmazon Web Services
 
Designing Puppet: Roles/Profiles Pattern
Designing Puppet: Roles/Profiles PatternDesigning Puppet: Roles/Profiles Pattern
Designing Puppet: Roles/Profiles PatternPuppet
 
10+ Deploys Per Day: Dev and Ops Cooperation at Flickr
10+ Deploys Per Day: Dev and Ops Cooperation at Flickr10+ Deploys Per Day: Dev and Ops Cooperation at Flickr
10+ Deploys Per Day: Dev and Ops Cooperation at FlickrJohn Allspaw
 
High Availability in the Cloud - Architectural Best Practices
High Availability in the Cloud - Architectural Best PracticesHigh Availability in the Cloud - Architectural Best Practices
High Availability in the Cloud - Architectural Best PracticesRightScale
 

En vedette (19)

Continuous Delivery in Ruby
Continuous Delivery in RubyContinuous Delivery in Ruby
Continuous Delivery in Ruby
 
CIS13: Bootcamp: Ping Identity OAuth and OpenID Connect In Action with PingFe...
CIS13: Bootcamp: Ping Identity OAuth and OpenID Connect In Action with PingFe...CIS13: Bootcamp: Ping Identity OAuth and OpenID Connect In Action with PingFe...
CIS13: Bootcamp: Ping Identity OAuth and OpenID Connect In Action with PingFe...
 
AWS Architecting for the Cloud - matt tavis
AWS Architecting for the Cloud - matt tavisAWS Architecting for the Cloud - matt tavis
AWS Architecting for the Cloud - matt tavis
 
OpenID Connect - An Emperor or Just New Cloths?
OpenID Connect - An Emperor or Just New Cloths?OpenID Connect - An Emperor or Just New Cloths?
OpenID Connect - An Emperor or Just New Cloths?
 
Hadoop Summit 2012 | Optimizing MapReduce Job Performance
Hadoop Summit 2012 | Optimizing MapReduce Job PerformanceHadoop Summit 2012 | Optimizing MapReduce Job Performance
Hadoop Summit 2012 | Optimizing MapReduce Job Performance
 
(APP304) AWS CloudFormation Best Practices | AWS re:Invent 2014
(APP304) AWS CloudFormation Best Practices | AWS re:Invent 2014(APP304) AWS CloudFormation Best Practices | AWS re:Invent 2014
(APP304) AWS CloudFormation Best Practices | AWS re:Invent 2014
 
(WEB302) Best Practices for Running WordPress on AWS | AWS re:Invent 2014
(WEB302) Best Practices for Running WordPress on AWS | AWS re:Invent 2014(WEB302) Best Practices for Running WordPress on AWS | AWS re:Invent 2014
(WEB302) Best Practices for Running WordPress on AWS | AWS re:Invent 2014
 
(GAM301) Real-Time Game Analytics with Amazon Kinesis, Amazon Redshift, and A...
(GAM301) Real-Time Game Analytics with Amazon Kinesis, Amazon Redshift, and A...(GAM301) Real-Time Game Analytics with Amazon Kinesis, Amazon Redshift, and A...
(GAM301) Real-Time Game Analytics with Amazon Kinesis, Amazon Redshift, and A...
 
Core MIDI and Friends
Core MIDI and FriendsCore MIDI and Friends
Core MIDI and Friends
 
Hybrid MongoDB and RDBMS Applications
Hybrid MongoDB and RDBMS ApplicationsHybrid MongoDB and RDBMS Applications
Hybrid MongoDB and RDBMS Applications
 
Ruby For Java Programmers
Ruby For Java ProgrammersRuby For Java Programmers
Ruby For Java Programmers
 
Optimizing Hive Queries
Optimizing Hive QueriesOptimizing Hive Queries
Optimizing Hive Queries
 
How To Solder V3.5
How To Solder V3.5How To Solder V3.5
How To Solder V3.5
 
Powering Interactive Data Analysis at Pinterest by Amazon Redshift
Powering Interactive Data Analysis at Pinterest by Amazon RedshiftPowering Interactive Data Analysis at Pinterest by Amazon Redshift
Powering Interactive Data Analysis at Pinterest by Amazon Redshift
 
Callbacks, Promises, and Coroutines (oh my!): Asynchronous Programming Patter...
Callbacks, Promises, and Coroutines (oh my!): Asynchronous Programming Patter...Callbacks, Promises, and Coroutines (oh my!): Asynchronous Programming Patter...
Callbacks, Promises, and Coroutines (oh my!): Asynchronous Programming Patter...
 
(DVO401) Deep Dive into Blue/Green Deployments on AWS
(DVO401) Deep Dive into Blue/Green Deployments on AWS(DVO401) Deep Dive into Blue/Green Deployments on AWS
(DVO401) Deep Dive into Blue/Green Deployments on AWS
 
Designing Puppet: Roles/Profiles Pattern
Designing Puppet: Roles/Profiles PatternDesigning Puppet: Roles/Profiles Pattern
Designing Puppet: Roles/Profiles Pattern
 
10+ Deploys Per Day: Dev and Ops Cooperation at Flickr
10+ Deploys Per Day: Dev and Ops Cooperation at Flickr10+ Deploys Per Day: Dev and Ops Cooperation at Flickr
10+ Deploys Per Day: Dev and Ops Cooperation at Flickr
 
High Availability in the Cloud - Architectural Best Practices
High Availability in the Cloud - Architectural Best PracticesHigh Availability in the Cloud - Architectural Best Practices
High Availability in the Cloud - Architectural Best Practices
 

Similaire à From One to Many: Evolving VPC Design (ARC401) | AWS re:Invent 2013

AWS Summit London 2014 | From One to Many - Evolving VPC Design (400)
AWS Summit London 2014 | From One to Many - Evolving VPC Design (400)AWS Summit London 2014 | From One to Many - Evolving VPC Design (400)
AWS Summit London 2014 | From One to Many - Evolving VPC Design (400)Amazon Web Services
 
Criando o seu datacenter virtual vpc e conectividade
Criando o seu datacenter virtual  vpc e conectividadeCriando o seu datacenter virtual  vpc e conectividade
Criando o seu datacenter virtual vpc e conectividadeAmazon Web Services LATAM
 
From One to Many: Evolving VPC Design
From One to Many: Evolving VPC DesignFrom One to Many: Evolving VPC Design
From One to Many: Evolving VPC DesignAmazon Web Services
 
Amazon Virtual Private Cloud - VPC 2
Amazon Virtual Private Cloud - VPC 2Amazon Virtual Private Cloud - VPC 2
Amazon Virtual Private Cloud - VPC 2AWS Riyadh User Group
 
Creating Your Virtual Data Center
Creating Your Virtual Data CenterCreating Your Virtual Data Center
Creating Your Virtual Data CenterMonica Trantow
 
AWS VPC NOTES _ LEARN AWS EFFECTIVELY and Easily
AWS VPC NOTES _ LEARN AWS EFFECTIVELY and EasilyAWS VPC NOTES _ LEARN AWS EFFECTIVELY and Easily
AWS VPC NOTES _ LEARN AWS EFFECTIVELY and Easilyakramemohemat
 
AWS Connectivity, VPC Design and Security Pro Tips
AWS Connectivity, VPC Design and Security Pro TipsAWS Connectivity, VPC Design and Security Pro Tips
AWS Connectivity, VPC Design and Security Pro TipsShiva Narayanaswamy
 
Amazon Virtual Private Cloud (VPC) - Networking Fundamentals and Connectivity...
Amazon Virtual Private Cloud (VPC) - Networking Fundamentals and Connectivity...Amazon Virtual Private Cloud (VPC) - Networking Fundamentals and Connectivity...
Amazon Virtual Private Cloud (VPC) - Networking Fundamentals and Connectivity...Amazon Web Services
 
PLNOG 17 - Tomasz Stachlewski - Infrastruktura sieciowa w chmurze AWS
PLNOG 17 - Tomasz Stachlewski - Infrastruktura sieciowa w chmurze AWSPLNOG 17 - Tomasz Stachlewski - Infrastruktura sieciowa w chmurze AWS
PLNOG 17 - Tomasz Stachlewski - Infrastruktura sieciowa w chmurze AWSPROIDEA
 
AWS re:Invent 2016: Creating Your Virtual Data Center: VPC Fundamentals and C...
AWS re:Invent 2016: Creating Your Virtual Data Center: VPC Fundamentals and C...AWS re:Invent 2016: Creating Your Virtual Data Center: VPC Fundamentals and C...
AWS re:Invent 2016: Creating Your Virtual Data Center: VPC Fundamentals and C...Amazon Web Services
 
Creating Your Virtual Data Center - AWS Summit Bahrain 2017
Creating Your Virtual Data Center - AWS Summit Bahrain 2017Creating Your Virtual Data Center - AWS Summit Bahrain 2017
Creating Your Virtual Data Center - AWS Summit Bahrain 2017Amazon Web Services
 
AWS Hybrid Cloud Connectivity - VPN Solutions
AWS Hybrid Cloud Connectivity - VPN SolutionsAWS Hybrid Cloud Connectivity - VPN Solutions
AWS Hybrid Cloud Connectivity - VPN SolutionsKent Plummer
 
ENT202 Creating Your Virtual Data Center: VPC Fundamentals and Connectivity O...
ENT202 Creating Your Virtual Data Center: VPC Fundamentals and Connectivity O...ENT202 Creating Your Virtual Data Center: VPC Fundamentals and Connectivity O...
ENT202 Creating Your Virtual Data Center: VPC Fundamentals and Connectivity O...Amazon Web Services
 
打破時空藩籬,輕鬆存取您的雲端工作負載
打破時空藩籬,輕鬆存取您的雲端工作負載打破時空藩籬,輕鬆存取您的雲端工作負載
打破時空藩籬,輕鬆存取您的雲端工作負載Amazon Web Services
 
打破時空藩籬-輕鬆存取您的雲端工作負載
打破時空藩籬-輕鬆存取您的雲端工作負載打破時空藩籬-輕鬆存取您的雲端工作負載
打破時空藩籬-輕鬆存取您的雲端工作負載Amazon Web Services
 
Introduction to AWS VPC, Guidelines, and Best Practices
Introduction to AWS VPC, Guidelines, and Best PracticesIntroduction to AWS VPC, Guidelines, and Best Practices
Introduction to AWS VPC, Guidelines, and Best PracticesGary Silverman
 

Similaire à From One to Many: Evolving VPC Design (ARC401) | AWS re:Invent 2013 (20)

AWS Summit London 2014 | From One to Many - Evolving VPC Design (400)
AWS Summit London 2014 | From One to Many - Evolving VPC Design (400)AWS Summit London 2014 | From One to Many - Evolving VPC Design (400)
AWS Summit London 2014 | From One to Many - Evolving VPC Design (400)
 
Criando o seu datacenter virtual vpc e conectividade
Criando o seu datacenter virtual  vpc e conectividadeCriando o seu datacenter virtual  vpc e conectividade
Criando o seu datacenter virtual vpc e conectividade
 
From One to Many: Evolving VPC Design
From One to Many: Evolving VPC DesignFrom One to Many: Evolving VPC Design
From One to Many: Evolving VPC Design
 
Amazon Virtual Private Cloud
Amazon Virtual Private CloudAmazon Virtual Private Cloud
Amazon Virtual Private Cloud
 
Amazon Virtual Private Cloud - VPC 2
Amazon Virtual Private Cloud - VPC 2Amazon Virtual Private Cloud - VPC 2
Amazon Virtual Private Cloud - VPC 2
 
Creating Your Virtual Data Center
Creating Your Virtual Data CenterCreating Your Virtual Data Center
Creating Your Virtual Data Center
 
Creating a Virtual Data Center
Creating a Virtual Data CenterCreating a Virtual Data Center
Creating a Virtual Data Center
 
AWS VPC NOTES _ LEARN AWS EFFECTIVELY and Easily
AWS VPC NOTES _ LEARN AWS EFFECTIVELY and EasilyAWS VPC NOTES _ LEARN AWS EFFECTIVELY and Easily
AWS VPC NOTES _ LEARN AWS EFFECTIVELY and Easily
 
AWS VPC
AWS VPCAWS VPC
AWS VPC
 
AWS Connectivity, VPC Design and Security Pro Tips
AWS Connectivity, VPC Design and Security Pro TipsAWS Connectivity, VPC Design and Security Pro Tips
AWS Connectivity, VPC Design and Security Pro Tips
 
Amazon Virtual Private Cloud (VPC) - Networking Fundamentals and Connectivity...
Amazon Virtual Private Cloud (VPC) - Networking Fundamentals and Connectivity...Amazon Virtual Private Cloud (VPC) - Networking Fundamentals and Connectivity...
Amazon Virtual Private Cloud (VPC) - Networking Fundamentals and Connectivity...
 
Getting Started on AWS
Getting Started on AWS Getting Started on AWS
Getting Started on AWS
 
PLNOG 17 - Tomasz Stachlewski - Infrastruktura sieciowa w chmurze AWS
PLNOG 17 - Tomasz Stachlewski - Infrastruktura sieciowa w chmurze AWSPLNOG 17 - Tomasz Stachlewski - Infrastruktura sieciowa w chmurze AWS
PLNOG 17 - Tomasz Stachlewski - Infrastruktura sieciowa w chmurze AWS
 
AWS re:Invent 2016: Creating Your Virtual Data Center: VPC Fundamentals and C...
AWS re:Invent 2016: Creating Your Virtual Data Center: VPC Fundamentals and C...AWS re:Invent 2016: Creating Your Virtual Data Center: VPC Fundamentals and C...
AWS re:Invent 2016: Creating Your Virtual Data Center: VPC Fundamentals and C...
 
Creating Your Virtual Data Center - AWS Summit Bahrain 2017
Creating Your Virtual Data Center - AWS Summit Bahrain 2017Creating Your Virtual Data Center - AWS Summit Bahrain 2017
Creating Your Virtual Data Center - AWS Summit Bahrain 2017
 
AWS Hybrid Cloud Connectivity - VPN Solutions
AWS Hybrid Cloud Connectivity - VPN SolutionsAWS Hybrid Cloud Connectivity - VPN Solutions
AWS Hybrid Cloud Connectivity - VPN Solutions
 
ENT202 Creating Your Virtual Data Center: VPC Fundamentals and Connectivity O...
ENT202 Creating Your Virtual Data Center: VPC Fundamentals and Connectivity O...ENT202 Creating Your Virtual Data Center: VPC Fundamentals and Connectivity O...
ENT202 Creating Your Virtual Data Center: VPC Fundamentals and Connectivity O...
 
打破時空藩籬,輕鬆存取您的雲端工作負載
打破時空藩籬,輕鬆存取您的雲端工作負載打破時空藩籬,輕鬆存取您的雲端工作負載
打破時空藩籬,輕鬆存取您的雲端工作負載
 
打破時空藩籬-輕鬆存取您的雲端工作負載
打破時空藩籬-輕鬆存取您的雲端工作負載打破時空藩籬-輕鬆存取您的雲端工作負載
打破時空藩籬-輕鬆存取您的雲端工作負載
 
Introduction to AWS VPC, Guidelines, and Best Practices
Introduction to AWS VPC, Guidelines, and Best PracticesIntroduction to AWS VPC, Guidelines, and Best Practices
Introduction to AWS VPC, Guidelines, and Best Practices
 

Plus de Amazon Web Services

Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Amazon Web Services
 
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Amazon Web Services
 
Esegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateEsegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateAmazon Web Services
 
Costruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSAmazon Web Services
 
Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Amazon Web Services
 
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Amazon Web Services
 
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...Amazon Web Services
 
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsMicrosoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsAmazon Web Services
 
Database Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareDatabase Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareAmazon Web Services
 
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSCrea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSAmazon Web Services
 
API moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAPI moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAmazon Web Services
 
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareDatabase Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareAmazon Web Services
 
Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWSAmazon Web Services
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckAmazon Web Services
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without serversAmazon Web Services
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...Amazon Web Services
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceAmazon Web Services
 

Plus de Amazon Web Services (20)

Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
 
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
 
Esegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateEsegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS Fargate
 
Costruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWS
 
Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot
 
Open banking as a service
Open banking as a serviceOpen banking as a service
Open banking as a service
 
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
 
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
 
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsMicrosoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
 
Computer Vision con AWS
Computer Vision con AWSComputer Vision con AWS
Computer Vision con AWS
 
Database Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareDatabase Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatare
 
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSCrea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
 
API moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAPI moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e web
 
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareDatabase Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
 
Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWS
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch Deck
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without servers
 
Fundraising Essentials
Fundraising EssentialsFundraising Essentials
Fundraising Essentials
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container Service
 

Dernier

unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxBkGupta21
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersRaghuram Pandurangan
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 

Dernier (20)

unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptx
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information Developers
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 

From One to Many: Evolving VPC Design (ARC401) | AWS re:Invent 2013

  • 1. From One to Many: Evolving VPC Design Robert Alexander, AWS Solutions Architect November 14, 2013 © 2013 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified, or distributed in whole or in part without the express consent of Amazon.com, Inc.
  • 2. Disclaimer: Do Try This at Home! All these designs are in use by customers
  • 3. In a physical world you Design your network infrastructure… then spend a lot of time building and deploying
  • 4. With Amazon Virtual Private Cloud, build and deploy virtual datacenters as fast as you design them version
  • 5. VPC Tip Get to know AWS CloudFormation • Source control and version control your datacenter • Deploy infrastructure with one command • Reproduce anywhere in the globe in minutes • Segregation of Duties (SoD) between infrastructure and application owners
  • 6. Elements of VPC Design Amazon VPC Router Internet Gateway Customer Gateway Subnet Virtual Private Gateway VPN Connection Route Table Elastic Network Interface
  • 7. • • A VPC can span all AZ’s in an AWS Region • Availability Zone A VPC is a private, isolated section of the AWS Cloud where you define the networking within Only one decision upon VPC creation: Availability Zone B What IP CIDR block to assign?
  • 8. • Subnet Availability Zone A Subnet Availability Zone B • On subnet creation only AZ, VPC and CIDR block designated • VPC CIDR: 10.1.0.0 /16 Subnets are AZ specific Modifying a Subnet’s Routing Table or Network Access Control Lists is done after creation
  • 9. VPC Tip Plan your VPC IP space before creating it • Consider future AWS region expansion • Consider future connectivity to corporate networks • Consider subnet design • VPC can be /16 down to /28 • CIDR cannot be modified once created • Overlapping IP spaces = future headache
  • 10. • Public and Private subnets are a common logical isolation • At this point in VPC configuration, Public and Private are just indicators of the subnet purpose • Several additional elements must be configured before traffic can egress the VPC VPC CIDR: 10.1.0.0 /16 Public Subnet Private Subnet Availability Zone A Public Subnet Private Subnet Availability Zone B
  • 11. • Subnet size should be considered relative to subnet purpose and not the Layer 2 limits of traditional switched networks • For subnets containing large, dynamic workloads, subnet size might be many 1000s of instances • Traditional subnet constraints such as broadcast domain limits do not apply in VPC VPC CIDR: 10.1.0.0 /16 Instance A 10.1.1.11 /24 Instance B 10.1.2.22 /24 Public Subnet Public Subnet Instance C 10.1.3.33 /24 Private Subnet Availability Zone A Instance D 10.1.4.44 /24 Private Subnet Availability Zone B
  • 12. • By default, every subnet can route to every other subnet in a VPC • A virtual router forms this star topology between all VPC subnets • The VPC DHCP Service hands out the virtual router address as the default gateway to every instance booting in a VPC subnet • Virtual Router always takes the .1 address of every VPC subnet VPC CIDR: 10.1.0.0 /16 Instance A 10.1.1.11 /24 Public Subnet Instance B 10.1.2.22 /24 .1 .1 .1 .1 Instance C 10.1.3.33 /24 Private Subnet Availability Zone A Public Subnet Instance D 10.1.4.44 /24 Private Subnet Availability Zone B
  • 13. VPC CIDR: 10.1.0.0 /16 Route Table Instance A 10.1.1.11 /24 Public Subnet Destination Target 10.1.0.0/16 Instance B 10.1.2.22 /24 local Public Subnet • Instance C 10.1.3.33 /24 Private Subnet Availability Zone A The local route is the first entry in every VPC Routing Table and enables intra subnet routing (the star topology) • The local route cannot be deleted Instance D 10.1.4.44 /24 Private Subnet Availability Zone B
  • 14. VPC Tip Leave the Main Route Table Alone
  • 15. VPC Tip Leave the Main Route Table Alone • Upon creation, every subnet is associated with the Main Route Table • Only after subnet creation can you modify the Route Table assigned to a subnet • So leave Main Route Table with only the local route and eliminate the possibility of a subnet being given routes it shouldn’t
  • 16. Instance A 10.1.1.11 /24 Instance B 10.1.2.22 /24 Public Subnet Public Subnet Instance C 10.1.3.33 /24 Private Subnet Route Table Availability Zone A Destination Target 10.1.0.0/16 local 10.1.1.0/24 Instance B Instance D 10.1.4.44 /24 Private Subnet Availability Zone B • You cannot create a route more specific than the local route • VPC CIDR: 10.1.0.0 /16 VPC Routing Tables are for defining ways OUT of a VPC and not for defining Intra-VPC routes
  • 17. Network ACLs vs Security Groups Elastic Network Instance Security Group NACLs Security Groups • • • • • Applied to instance ENI (up to 5 per) • Stateful • Allow Only (whitelist) • Rules evaluated as a whole • SGs can reference other SGs in same VPC Applied to subnets (1 per) Stateless Allow & Deny (blacklist) Rules processed in order Network ACL VPC Subnet
  • 18. VPC Network ACLs: What are they good for? • Enforcing baseline security policy – Example: “No TFTP, NetBIOS or SMTP shall egress this subnet” Instance VPC Subnet • Catch all for holes in instance security groups • Segregation of security between network ops and dev ops
  • 19. VPC Network ACLs: Best Practices • • • • Use sparingly, keep it simple Egress security policies are best Create rule #’s with room to grow Use IAM to tightly control who can alter or delete NACLs Pushing this will Hurt! Default Network ACL:
  • 20. VPC Tip Create an IAM VPC Admin Group Examples of “High Blast Radius” VPC API calls that should be restricted: Support Resource Permissions { AttachInternetGateway AssociateRouteTable CreateRoute DeleteCustomerGateway DeleteInternetGateway DeleteNetworkAcl DeleteNetworkAclEntry DeleteRoute DeleteRouteTable DeleteDhcpOptions ReplaceNetworkAclAssociation DisassociateRouteTable
  • 21. Example IAM Policy for NACL Admin { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ec2:DeleteNetworkAcl", "ec2:DeleteNetworkAclEntry" ], "Resource": "arn:aws:ec2:us-west-2:123456789012:network-acl/*", "Condition": { "StringEquals": { Multi Factor Authentication "ec2:ResourceTag/Environment": "prod" }, required for Actions in Policy "Null": { "aws:MultiFactorAuthAge": "false" } } } ] }
  • 22. VPC CIDR: 10.1.0.0 /16 Instance A 10.1.1.11 /24 Instance B 10.1.2.22 /24 Public Subnet Public Subnet Instance C 10.1.3.33 /24 Private Subnet Availability Zone A Instance D 10.1.4.44 /24 Private Subnet Availability Zone B Creating Ways “Out” of a VPC
  • 23. VPC CIDR: 10.1.0.0 /16 Only 1 IGW and 1 VGW per VPC Internet Gateway Instance A 10.1.1.11 /24 Instance B 10.1.2.22 /24 Public Subnet Public Subnet Instance C 10.1.3.33 /24 Instance D 10.1.4.44 /24 Route Table Direct Connect Target local Corp CIDR Private Subnet Availability Zone A Customer Data Center Destination 10.1.0.0/16 Private Subnet VGW Availability Zone B Virtual Private Gateway VPN Connection Customer Data Center
  • 24. VPC CIDR: 10.1.0.0 /16 Route Table Instance A 10.1.1.11 /24 Public Subnet Instance C 10.1.3.33 /24 Private Subnet Availability Zone A Three Elements Required to Egress VPC from IGW: 1. Internet Gateway must be associated to VPC 2. Subnet must be associated to a Routing Table with a route to the IGW 3. Instances in the subnet that will egress VPC must be associated with a Public IP Route Table Destination Target 10.1.0.0/16 Instance B local 10.1.2.22 /24 0.0.0.0/0 Public IGW Subnet Instance D 10.1.4.44 /24 Private Subnet Availability Zone B
  • 25. Ways to Assign Public IPs Elastic IP (EIP) • • • • • • Associated with AWS account and not a specific instance 1 Public IP to 1 Private IP static NAT mapping Instance does not “see” an EIP associated to it Persists independent of the instance Can be assigned while instance is stopped or running Can be moved, reassigned to other ENIs
  • 26. Ways to Assign Public IPs Automatic dynamic Public IP assignment • Done on instance launch into VPC subnet • Public IP is dynamic and could change if instance is stopped and restarted • Does not count against AWS Account EIP limits • Works only on instances with a single ENI
  • 27. Internet AWS outside the VPC AWS region • Services such as S3 and Dynamo DB are Regional and accessible only via Public End Points • Resources in a VPC requiring access to Regional services must be able to egress the VPC into the Public AWS network Amazon S3 DynamoDB Route Table Instance A Public: 54.200.129.18 Private: 10.1.1.11 /24 Public Subnet Instance C 10.1.3.33 /24 Private Subnet Availability Zone A Instance B 10.1.2.22 /24 Public Subnet Instance D 10.1.4.44 /24 Private Subnet Availability Zone B
  • 28. Examples of AWS outside the VPC • • • AWS API Endpoints – Think about which APIs you might be calling from instances within the VPC – Good examples: Amazon EC2, AWS CloudFormation, Auto Scaling, Amazon SWF, Amazon SQS, Amazon SNS Regional Services – Amazon S3 – Amazon Dynamo DB Software and Patch Repositories – Amazon Linux repo allows access only from AWS public IP blocks
  • 29. Internet AWS region Amazon S3 DynamoDB Route Table Instance A Public: 54.200.129.18 Private: 10.1.1.11 /24 Public Subnet Instance C 10.1.3.33 /24 Private Subnet Availability Zone A Instance B 10.1.2.22 /24 Public Subnet Instance D 10.1.4.44 /24 Private Subnet Availability Zone B And what if instance C in a private subnet needs to reach outside the VPC? It has no route to the IGW and no public IP.
  • 30. Internet AWS region Amazon S3 DynamoDB NAT A Public: 54.200.129.18 Private: 10.1.1.11 /24 Public Subnet Deploy an instance that functions as a N etwork A ddress T ranslat(or) Instance B 10.1.2.22 /24 Public Subnet Route Table Instance C 10.1.3.33 /24 Instance D 10.1.4.44 /24 Availability Zone A Target 10.1.0.0/16 Private Subnet Destination local 0.0.0.0/0 NAT instanc e Private Subnet Availability Zone B
  • 31. VPC Tip What makes up the Amazon Linux NAT AMI? Not much to it: 1. IP forwarding enabled 2. IP NAT Masquerading enabled in iptables 3. Source / Destination check is turned off on the instance $echo 1 > /proc/sys/net/ipv4/ip_forward $echo 0 > /proc/sys/net/ipv4/conf/eth0/send_redirects $/sbin/iptables -t nat -A POSTROUTING -o eth0 –s 10.1.0.0/16 -j MASQUERADE $/sbin/iptables-save $aws ec2 modify-instance-attributes –instance-id i-xxxxxxxx –source-destcheck “{”Value”:false}”
  • 32. Internet AWS region Amazon S3 DynamoDB Other private subnets can share the same routing table and use the NAT But… NAT A Public: 54.200.129.18 Private: 10.1.1.11 /24 Public Subnet Instance C 10.1.3.33 /24 Private Subnet Availability Zone A Instance B 10.1.2.22 /24 Public Subnet Instance D 10.1.4.44 /24 Private Subnet Availability Zone B
  • 33. Internet AWS region Amazon S3 DynamoDB NAT A Public: 54.200.129.18 Private: 10.1.1.11 /24 Public Subnet Private Subnet Availability Zone A Instance B 10.1.2.22 /24 Public Subnet Private Subnet Availability Zone B … you could reach a bandwidth bottleneck if your private instances grow and their NAT bound traffic grows with them.
  • 35. Do bandwidth intensive processes need to be behind a NAT? • Separate out application components with bandwidth needs • Run components from public subnet instances • Goal is full instance bandwidth out of VPC • Auto Scaling with Public IP makes this easy • NAT still in place for remaining private instances • Most Common use case: Multi-Gbps streams to Amazon S3
  • 36. Internet Customers • Image processing app with high outbound network to Amazon S3 AWS region Amazon S3 DynamoDB Public ELB ELB Auto scaling Group Public ELB Subnet Web Servers Public Subnet • Public ELB receives incoming customer HTTP/S requests • Auto Scaling assigns public IP to new web servers Public ELB Subnet NAT Direct to Amazon S3 Multi AZ Auto scaling Group Private Subnet Availability Zone A Public Subnet Private Subnet Availability Zone B • With public IPs, web servers initiate outbound requests directly to Amazon S3 • NAT device still in place for private subnets
  • 37. Autoscaling Support for Automatic Public IP Assignment Sample Launch Configuration (named “hi-bandwidth-public”): $aws autoscaling create-launch-configuration --launch-configuration-name hi-bandwidthpublic --image-id ami-xxxxxxxx --instance-type m1.xlarge --associate-public-ip-address
  • 38. Internet Autoscale HA NAT • Use Auto Scaling for NAT Availability AWS Region Amazon S3 DynamoDB • Create 1 NAT per AZ • All private subnet route tables to point to same AZ NAT • 1 Auto Scaling group per NAT with min and max size set to 1 NAT Public Subnet Private Subnet Availability Zone A NAT Public Subnet Private Subnet Availability Zone B • Let Auto Scaling monitor the health and availability of your NATs • If NAT fails, user data script in Autoscaling Launch config programmatically updates private subnet route tables to point to new NAT instance ID
  • 39. Auto Scaling for Availability Sample HA NAT Autoscaling group (named “ha-nat-asg”): $aws autoscaling create-auto-scaling-group --auto-scaling-group-name hanat-asg --launch-configuration-name ha-nat-launch --min-size 1 --max-size 1 --vpc-zone-identifier subnet-xxxxxxxx
  • 40. Automating HA NAT with EC2 User Data Latest version of the HA NAT User Data script on GitHub: https://github.com/ralex-aws/vpc
  • 41. IAM EC2 Role for HA NAT Instance { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ec2:DescribeInstances", "ec2:ModifyInstanceAttribute", "ec2:DescribeSubnets", "ec2:DescribeRouteTables", "ec2:CreateRoute", "ec2:ReplaceRoute" ], "Resource": "*" } ] }
  • 42. VPC Tip Tag Early, Tag Often! • Tagging strategy should be part of early design • Project Code, Cost Center, Environment, Team, Business Unit • Tag resources right after creation • Tags supported for resource permissions • AWS Billing also supports tags • Tight IAM controls on the creation and editing of tags
  • 43. Finally, if design requirements keep high bandwidth streams behind NAT: • Use the 1 HA NAT per AZ design • Vertically scale your NAT instance type to one with a High Network Performance rating • Keep a close watch on your network metrics t1.micro Very Low m1.small Low m1.large Moderate m1.xlarge, c1.xlarge High
  • 44. For further HA NAT design alternatives, please see: High Availability for Amazon VPC NAT Instances http://aws.amazon.com/articles/2781451301784570 Deploy HA NAT With Cloudformation Templates: http://aws.amazon.com/articles/6079781443936876
  • 46. Considering Multiple VPCs • Public Facing Web App Internal Corporate App VPN Connection Customer Data Center Public Facing Web App deployed in own VPC • AWS region Now want to deploy an internal only Corporate App connected to Corporate Datacenter via VPN • New VPC created in the Region for Corporate app to keep the external and internal applications isolated from each other What’s Next?
  • 47. Common Multi-VPC Customer Use Cases: • Application isolation • Scope of audit containment • Risk level separation • Separate production from non-production • Multi tenant isolation • Business unit alignment
  • 48. Considerations for One or Many VPCs: • Know your inter-VPC traffic • Separate AWS accounts by definition means separate VPCs • IAM / resource permissions and controls • VPC limits: http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_Appendix_Limits.html
  • 49. There is a whole talk on this one! CPN208 Selecting the Best VPC Network Architecture
  • 51. Internal Application to VPC AWS region Public Facing Web App Internal Corporate App VPN Connection Customer Data Center
  • 52. Internal Application to VPC AWS region Route Table Private Subnet Availability Zone A Destination Virtual Private Gateway Availability Zone B VPN Connection Corporate Data Center Corporate Internal Customers local Corp CIDR Private Subnet Target 10.1.0.0/16 Intranet App Intranet App VGW
  • 53. But… app will leverage this for storing data: Amazon S3
  • 54. And you don’t really want to do this: Amazon S3 AWS region Internet Intranet App Intranet App Private Subnet Availability Zone A Virtual Private Gateway Private Subnet Availability Zone B Corporate Border Router Internet VPN Connection Corporate VPN Corporate Data Center
  • 55. Control IGW Access through a Proxy Layer • Deploy a proxy control layer between application and IGW • Restrict all outbound HTTP/S access to only approved URL destinations like Amazon S3 • No route to IGW for private subnets • Control access to proxy through security groups • Must configure proxy setting in OS of instances
  • 56. Controlling the Border AWS region • Deploy internal ELB layer across AZs • Add all instances allowed outside access to a security group ELB Multi AZ Auto scaling Group Intranet App Private Subnet Availability Zone A • Use this security group as the only source allowed access to the proxy port in the load balancer’s security group ELB Private Subnet ELB Private Subnet Internal ELB Intranet App Private Subnet Availability Zone B VPN Connection Corporate Data Center Corporate Internal Customers
  • 57. VPC Tip Put load balancers in their own subnets • Elastic Load Balancing is Amazon EC2 in your subnets • Elastic Load Balancing is using your private addresses • Separate subnets = separate control • Distinguish LB layer from app layers
  • 58. Amazon S3 AWS region • Squid Proxy layer deployed between internal load balancer and the IGW border. Multi AZ Auto scaling Group Proxy Public Subnet Private Subnet (s) Proxy Public Subnet • Only proxy subnets have route to IGW. ELB Private Subnet HTTP/S ELB Private Subnet Intranet App Controlling the Border • Proxy security group allows inbound only from Elastic Load Balancing security group. Internal ELB • Proxy restricts which URLs may pass. In this example, s3.amazonaws.com is allowed. Intranet App Private Subnet (s) Availability Zone B Availability Zone A VPN Connection Corporate Data Center Corporate Internal Customers • Egress NACLs on proxy subnets enforce HTTP/S only.
  • 59. Squid.conf Sample Config: # CIDR AND Destination Domain based Allow # CIDR Subnet blocks for Internal ELBs acl int_elb_cidrs src 10.1.3.0/24 10.1.4.0/24 # Destination domain for target S3 bucket acl s3_v2_endpoints dstdomain $bucket_name.s3.amazonaws.com # Squid does AND on both ACLs for allow match http_access allow int_elb_cidrs s3_v2_endpoints # Deny everything else http_access deny all
  • 60. Using Squid Proxy Instances for Web Service Access in Amazon VPC: http://aws.amazon.com/articles/5995712515781075
  • 61. … and this design could also be an option to our earlier NAT bandwidth discussion if outbound traffic requirements are HTTP only.
  • 62. Directory and Name Services in the VPC
  • 63. …or what do you mean ip-10-1-1-57.us-west-2.compute.internal isn’t a “friendly” name?
  • 64. Active Directory + DNS in the VPC AWS region Domain Join + DNS Queries Public Facing Web App Domain Controller + DNS Internal Corporate App New Instance: friendly-vpc-123.corp.example.com • Domain Controllers launched in internal VPC • Internal VPC instances join domain upon launch • Instances use Dynamic DNS to register both A and PTR records • Domain controller replicates with Corporate AD servers • VPC DNS forwarding to corporate DNS VPN Connection AD Replication corp.example.com AD Controller Corporate Data center DNS Forward Requests example.com DNS
  • 65. DNS in the VPC • Enable automatic DNS hostname creation and resolution with these 2 options: • Automatic hostname creation • Private only instances assigned private hostname • Public instances assigned public and private
  • 66. Split DNS Resolution From outside VPC: From inside VPC: Private hostnames only resolvable within VPC • Public hostnames will resolve to private IP addresses within the VPC • 10.1.0.2 represents the VPC Virtual DNS Service and will always take the .2 address of your VPC CIDR block • Example hostnames for Public VPC instance: ec2-54-200-171-240.us-west-2.compute.amazonaws.com ip-10-1-1-87.us-west-2.compute.internal • VPC Virtual DNS Service is also called “AmazonProvidedDNS” and enables instances in a VPC to resolve public DNS names
  • 67. DHCP Option Sets • Not possible to replace the VPC DHCP service with your own • But it is possible to customize what VPC DHCP hands out • Default option set only contains DNS = “AmazonProvidedDNS” • 1 option set assigned per VPC • Changing option set dynamically applies the next time an instance requests a lease refresh
  • 68. Domain Join + Dynamic DNS updates Availability Zone A New VPC DC 1 10.1.3.10 New Instance: friendly-vpc-123.corp.example.com Private Subnet Private Subnet New Instance Domain Registration Internal Corporate App New VPC DC 2 10.1.4.10 Private Subnet Availability Zone B VPN Connection AD + DNS Replication corp.example.com AD Forest Corporate Data center Dynamic DNS without Microsoft DHCP: example.com DNS
  • 69. Sample Powershell user-data for AD instance add and rename: <powershell> $secstr = convertto-securestring -string "Password123" -AsPlainText -Force $cred = new-object -typename System.Management.Automation.PSCredential -argumentlist domain-add, $secstr $instanceId = (Invoke-WebRequest -Uri http://169.254.169.254/latest/meta-data/instance-id).Content $servername = (Get-EC2Tag -Region us-west-2 | Where-Object {$_.ResourceId -eq $instanceId -and $_.Key -eq "Name"}).Value Add-Computer -DomainName ”corp.example.com" -NewName $servername -Credential $cred -Restart </powershell>
  • 70. DNS Query Path Availability Zone A VPC DNS 1 10.1.3.10 DNS query: www.xyz.com Private Subnet Private Subnet Internal Corporate App VPC DNS 2 10.1.4.10 Private Subnet Availability Zone B VPN Connection VPC DNS Forwards to Example DNS DNS Forwards on to root DNS servers if required corp.example.com AD Forest example.com DNS Internet Corporate Data center
  • 71. For AWS CloudFormation templates and guides to setting up Microsoft AD domains in VPC, please see: Deploy a Microsoft SharePoint 2010 Server Farm in the AWS Cloud in 6 Simple Steps: http://aws.amazon.com/articles/9982940049271604 Implementing Microsoft Windows Server Failover Clustering (WSFC) and SQL Server 2012 AlwaysOn Availability Groups in the AWS Cloud http://aws.amazon.com/whitepapers/microsoft-wsfc-sql-alwayson/ Microsoft Exchange Server 2010 in the AWS Cloud: Planning & Implementation Guide: http://media.amazonwebservices.com/AWS_Exchange_Planning_I mplementation_Guide.pdf
  • 72. Bringing It All Back Home
  • 73. AWS region Public Facing Web App Internal Corporate App VPN Connection What’s Next ??? AD Domain extended into VPC example.com AD Controller Corporate Data center example.com DNS
  • 74. AWS region Public Facing Web App Internal Corporate App #1 Corporate Data center Internal Corporate App #2 HA Pair VPN Endpoints Internal Corporate App #3 Internal Corporate App #4 Customer Gateways (CGW): • 1 per VPN tunnel • 1 public IP per CGW • AWS provides 2 tunnel destinations per region
  • 75. VPN Hub and Spoke an option… AWS region • Amazon EC2 VPN instances to central virtual private gateway Internal Corporate App #2 Internal Corporate App #3 • Control VPC contains common services for all app VPCs Services VPC Public Facing Web App Internal Corporate App #1 • For HA, 2 Amazon EC2-based VPN endpoints in each spoke Internal Corporate App #4 • Dynamic Routing protocol (BGP, OSPF) between Spokes and Hub • If multi Gbps traffic flow to Corporate Datacenter, then IPSec tunnels could become bandwidth bottleneck HA Pair VPN Endpoints Corporate Data center
  • 76. … or simplify with AWS Direct Connect AWS region Public Facing Web App Internal Corporate App #1 Internal Corporate App #2 Internal Corporate App #3 Internal Corporate App #4 AWS Direct Connect Private Virtual Interface (PVI) connects to VGW on VPC • • 1 PVI per VPC 802.1Q VLAN Tags isolate traffic across AWS Direct Connect AWS Direct Connect Location Private Fiber Connection One or Multiple 50 – 500 Mbps, 1 Gbps or 10 Gbps pipes Customer Data Center
  • 77. A few bits on AWS Direct Connect… • Dedicated, private pipes into AWS • Create private (VPC) or public interfaces to AWS • Cheaper data out rates than Internet (data in still free) • Consistent network performance compared to Internet • At Least 1 location to each AWS region (even GovCloud!) • Recommend redundant connections • Multiple AWS accounts can share a connection
  • 78. Customer Interface 0/1.101 Private Virtual Interface 1 VLAN Tag 101 VLAN Tag 101 BGP ASN 65001 BGP ASN 7224 BGP Announce Customer Internal BGP Announce 10.1.0.0/16 Interface IP 169.254.251.6/30 Interface IP 169.254.251.5/30 Customer Internal Network Multiple VPCs Over AWS Direct Connect VGW 1 VPC 1 10.1.0.0/16 VGW 2 VPC 2 10.2.0.0/16 Route Table Destination Target 10.1.0.0/16 PVI 1 10.2.0.0/16 PVI 2 10.3.0.0/16 PVI 3 10.4.0.0/16 PVI 4 VLAN 101 VLAN 102 VGW 3 Customer Switch + Router VPC 3 VLAN 103 10.3.0.0/16 VLAN 104 VGW 4 VPC 4 10.4.0.0/16
  • 79. VPC Tip Know Your Routing Database Before: After: Enable:
  • 80. VPC Tip Know Your Routing Database • Keep track of all incoming BGP announcements into your VPCs • Create a new Routing Table, unassigned to any subnet, and enable Route Propagation • Routing Table will show all routes the VGW has learned through BGP announcements • See what the VGW sees
  • 81. Customer Interface 0/1.501 Public Virtual Interface 1 VLAN Tag 501 VLAN Tag 501 BGP ASN 65501 (or Public) BGP ASN 7224 BGP Announce Customer Public BGP Announce AWS Regional Public CIDRs Interface IP Public /30 Provided Interface IP Public /30 Provided Customer Internal Network Public AWS + VPCs Over AWS Direct Connect VGW 1 VPC 1 10.1.0.0/16 VGW 2 VPC 2 10.2.0.0/16 Route Table Destination Target VLAN 101 10.1.0.0/16 PVI 1 VLAN 102 10.2.0.0/16 PVI 2 10.3.0.0/16 PVI 3 10.4.0.0/16 PVI 4 Public AWS PVI 5 VGW 3 VLAN 103 Customer Switch + Router VLAN 501 VPC 3 10.3.0.0/16 NAT / PAT Security Layer Public AWS Region
  • 82. AWS Direct Connect Location Customer Routers AWS DX Routers AWS region Customer Internal Network • • • • Multiple Physical connections: Active / Active links via BGP multi-pathing Active / Passive also an option BGP MEDs or local preference can influence route Bidirectional Forwarding Detection (BFD) supported
  • 83. AWS Direct Connect Location: Virginia or NYC Going Global US-East-1 AWS region Customer Routers Customer Global MPLS Backbone Network AWS Direct Connect Routers AWS Direct Connect Location: Ireland or London EU-West-1 AWS region Customer Routers AWS DX Routers
  • 84. With AWS regions just another spoke on your global network, it’s easy to bring the cloud down to you as you expand around the world. US-East-1 region AWS Direct Connect PoP Virginia or NYC EU-West-1 region US Corporate Data Center Corporate MPLS Backbone EU Corporate Data Center AWS Direct Connect PoP Ireland or London
  • 85. Evolving VPC Design: Recap • • • • • • Elements of VPC Design Scalable and Available NAT One VPC, Two VPC Controlling the Border Directory and Name Services in the VPC Bringing It All Back Home
  • 86. Related re:Invent Sessions: ARC202 High Availability Application Architectures in Amazon VPC ARC304 Cloud Architectures with AWS Direct Connect CPN205 Securing Your Amazon EC2 Environment with AWS IAM Roles and Resource-Based Permissions CPN208 Selecting the Best VPC Network Architecture DMG201 Zero to Sixty: AWS CloudFormation DMG303 AWS CloudFormation under the Hood
  • 87. Please give us your feedback on this presentation ARC401 As a thank you, we will select prize winners daily for completed surveys!