©2014Amazon.com,Inc.anditsaffiliates.Allrightsreserved.Maynotbecopied,modified,ordistributedinwholeorinpartwithouttheexpressconsentofAmazon.com,Inc.从一到多:发展中的VPC设计王顺,云支持工程师12月12日,2014设计数据中心…然后花大量时间构建和实施您设计的虚拟数据中心可立即构建、实施路由表弹性网络接口亚马逊VPC路由器Internet网关客户网关虚拟专用网关VPN连接子网VPC设计的元素可用区A可用区B子网可用区A子网可用区BVPCCIDR:10.1.0.0/16公有子网私有子网公有子网可用区B私有子网VPCCIDR:10.1.0.0/16可用区A公有子网私有子网公有子网可用区B私有子网实例A10.1.1.11/24实例C10.1.3.33/24实例B10.1.2.22/24实例D10.1.4.44/24VPCCIDR:10.1.0.0/16可用区A公有子网可用区A私有子网公有子网可用区B私有子网实例A10.1.1.11/24实例C10.1.3.33/24I实例B10.1.2.22/24实例D10.1.4.44/24VPCCIDR:10.1.0.0/16.1.1.1.1公有子网私有子网公有子网可用区B私有子网实例A10.1.1.11/24实例C10.1.3.33/24实例B10.1.2.22/24实例D10.1.4.44/24VPCCIDR:10.1.0.0/16路由表目的目标10.1.0.0/16local可用区A公有子网可用区A私有子网公有子网可用区B私有子网实例A10.1.1.11/24实例C10.1.3.33/24实例B10.1.2.22/24实例D10.1.4.44/24VPCCIDR:10.1.0.0/16创造方法“走出”VPC公有子网可用区A私有子网公有子网可用区B私有子网实例A10.1.1.11/24实例C10.1.3.33/24实例B10.1.2.22/24实例D10.1.4.44/24VPCCIDR:10.1.0.0/16RouteTable路由表目的目标10.1.0.0/16local0.0.0.0/0IGW弹性IP地址(EIP)自动分配公有IP公有子网可用区A私有子网公有子网可用区B私有子网实例A公有:54.200.129.18私有:10.1.1.11/24实例C10.1.3.33/24实例B10.1.2.22/24实例D10.1.4.44/24路由表互联网亚马逊S3亚马逊DynamoDBAWS区域公有子网可用区A私有子网公有子网可用区B私有子网实例A10.1.1.11/24实例C10.1.3.33/24实例B10.1.2.22/24实例D10.1.4.44/24VPCCIDR:10.1.0.0/16虚拟专用网关互联网网关每个VPC只有一个IGW和一个VGWVPN连接用户数据中心用户数据中心AWSDirectConnect路由表目的目标10.1.0.0/16local内部CIDRVGW公有子网可用区A私有子网公有子网可用区B私有子网实例A公有:54.200.129.18私有:10.1.1.11/24实例C10.1.3.33/24实例B10.1.2.22/24实例D10.1.4.44/24路由表互联网亚马逊S3AWS区域亚马逊DynamoDB公有子网可用区A私有子网公有子网可用区B私有子网NATA公有:54.200.129.18私有:10.1.1.11/24实例C10.1.3.33/24实例B10.1.2.22/24实例D10.1.4.44/24互联网亚马逊S3AWS区域路由表目的目标10.1.0.0/16local0.0.0.0/0NAT实例亚马逊DynamoDB部署一个实例实现:网络N地址A翻译T公有子网可用区A私有子网公有子网可用区B私有子网NATA公有:54.200.129.18私有:10.1.1.11/24实例C10.1.3.33/24实例B10.1.2.22/24实例D10.1.4.44/24互联网亚马逊S3AWS区域其它私有子网可共享同一个路由表,使用同一个NAT但是…亚马逊DnyamoDB公有子网可用区A私有子网公有子网可用区B私有子网NATA公有:54.200.129.18私有:10.1.1.11/24实例B10.1.2.22/24互联网亚马逊S3AWS区域…私有实例增长并且对应的NAT-流量随它们一起增长时,您将遇到带宽瓶颈.亚马逊DynamoDB*分离出有带宽需求的应用组件*从公有子网实例上运行组件*目标是获得整个实例带宽*公有IP的AutoScaling使之可行*NAT仍为私有实例提供服务*最常见使用案例:多Gbps数据流至S3可用区A可用区B私有子网互联网亚马逊S3亚马逊动态DBAWS区域公有子网公有子网NAT用户公共负载均衡器网络服务器•高输出网络至S3的图像处理应用直接访问S3私有子网公有ELB子网多AZ自动缩放组•公共弹性负载均衡器接受进来的用户HTTP/S请求•自动缩放组分配公有IP给新网络服务器•在公有IPs下,网络服务器直接向亚马逊S3发起外出请求•NAT实例仍为私有子网服务可用区A私有子网可用区B私有子网互联网亚马逊S3AWS区域公有子网公有子网NAT•为NAT可用性使用AutoScaling•每一可用区创建1NAT•所有私有子网路由表指向同一AZNAT实例•每个NAT实例放在一个AutoScaling组,并将最大值和最小值均设置为1•让AutoScaling监控您的NATs的健康和可用性•NAT实例故障时,AutoScaling启动配置的userdata脚本以编程方式更新私有子网路由表指向新的NAT实例IDAutoScaleHANATNAT亚马逊DynamoDB创造它之前先计划您的VPCIP空间•考虑将来AWS区域扩张•考虑将来连接您的内部网络•考虑子网设计•VPC范围可以是从/28至/16•CIDR创造后不能修改•重叠IP空间=将来头疼的事情保留主路由表网络ACL与安全组NACL•应用于子网(1对1)•无状态的•允许和拒绝(黑名单)•按顺序处理规则安全组•应用于实例ENI(多至5个)•基于状态的•只允许(白名单)•作为整体评价规则•可以引用同一VPC中的其它安全组VPC子网灵活的网络界面安全组网络ACLVPC网络ACL:最佳实践•节约使用,保持简洁•避免允许临时端口范围•创造规则#,使其有成长空间•使用IAM控制能修改或删除NACL的人员按下它会删除!默认网络ACL:创造一个IAMVPC管理组应该被限制的“大爆炸半径”VPCAPIs示例:AttachInternetGatewayAssociateRouteTableCreateRouteDeleteCustomerGatewayDeleteInternetGatewayDeleteNetworkAclDeleteNetworkAclEntryDeleteRouteDeleteRouteTableDeleteDhcpOptionsReplaceNetworkAclAssociationDisassociateRouteTable{支持资源权限亚马逊LinuxNATAMI由什么组成?$echo1/proc/sys/net/ipv4/ip_forward$echo0/proc/sys/net/ipv4/conf/eth0/send_redirects$/sbin/iptables-tnat-APOSTROUTING-oeth0–s10.1.0.0/16-jMASQUERADE$/sbin/iptables-save$awsec2modify-instance-attributes–instance-idi-xxxxxxxx–source-dest-check“{\”Value\”:false}”组成不多:1.IP转发功能2.IPNAT为VPCCIDR块在iptables中启用伪装3.在主网卡ENI上关闭来源/目的地址检查如果设计要求在NAT后保持高带宽流:•每个可用区设计使用1HANAT•垂直扩展您的NAT实例类型至一个高网络性能评价类型•密切监视您的网络指标m1.small低m1.large中等m1.xlarge,c3.2xlarge高t1.micro非常低利用增强网络•仅适用于VPC•更高的PPS,更低延迟,更低jitter•C3,I2,R3实例类型支持•内置于亚马逊Linux,但支持许多其他系统(包括Windows)个VPC,2个VPC通用用户使用情况:•应用程序隔离•审计范围控制•风险水平分离•生产环境与非生产环境分离•多租户隔离•业务单元对齐考虑1个或多个VPC:•了解您的VPC之间的流量•分离AWS账户•IAM/资源权限和控制•VPC限制:区域面向公共网络应用程序面向公司内部应用程序#1HA的一对VPN端点面向公司内部应用程序#2面向公司内部应用程序#3面向内部公司应用程序#4用户数据中心用户网关(CGW):•与VPNtunnel一对一•与公用IP一对一•每一区域提供2个tunnel端点面向公共网络应用程序公司内部应用程序#2HA的一对VPN端点用户数据中心公司内部应用程序#3公司内部应用程序#4公司内部应用程序#1公司内部Dev公司内部QAAWS区域备份AD,DNS监控日志VPCPeering功能10.1.0.0/1610.0.0.0/16•同一区域中的VPCpeer请求peer接收•相同或不同账户•IP空间不能重叠•在任何2个VPC之间只有1个10.1.0.0/1610.0.0.0/1610.0.0.0/16✔10.1.0.0/1610.0.0.0/16路由表目的目标10.1.0.0/16local10.0.0.0/16PCX-1路由表目的目标10.0.0.0/16local10.1.0.0/16PCX-1PCX-1•无IGW或VGW要求AB•无SPoF•无带宽瓶颈10.0.0.0/1610.0.0.0/16PCX-1PCX-2子网110.1.1.0/24子网210.1.2.0/2410.1.0.0/16路由表子网1目的目标10.1.0.0/16local10.0.0.0/16PCX-1路由表子网2目的目标10.1.0.0/16local10.0.0.0/16PCX-2ABC子网3路由表子网3目的目标10.0.0.0/16local10.1.1.0/24PCX-110.0.1.1110.1.0.0/1610.0.0.0/1610.0.0.0/1610.3.0.0/16172.16.0.0/16192.168.0.0/1610.2.0.0/16172.17.0.0/16CA10.1.0.0/1610.0.0.0/1610.0.0.0/1610.3.0.0/16172.16.0.0/16192.168.0.0/1610.2.0.0/16172.17.0.0/16公司数据中心10.10.0.0/16全部带回家客户数据中心AWSDirectConnect地点AWSDirectConnect专用虚拟接口(PVI)连接VPC上的VGW•每一VPC对应1个PVI•通过VLANTags隔离AWSDirectConnect的不同业务专用光纤连接1或多50–500Mbps,1Gbps或10Gbps通道使用AWSDirectConnect进行简化面向公共网络应用程序AWS区域ProdQADev一些关于AWSDirectConnect的信息…•专用、私有通道接入AWS•创建私有(VPC)或公共接口至AWS•比互联网(传入数据免费)更便宜的数据输