如何设计租户VPC网络-AWS

如何设计租户VPC

AWS VPC 提供了丰富的网络虚拟化能力,基于此能力用户可以通过多种选择来设计与实现租户网络。但是,如何使用这些丰富的网络虚拟化能力设计出一个理想的租户网络有一定的难度,特别是很多企业并没有专业的网络人员情况下。因此这篇文章提供了VPC网络设计的最佳实践,包括设计原则、配置规则。

通用最佳实践

网络设计有一些传统的通用原则,在VPC网络内继续生效。如:本地私有网络的子网地址与远程子网地址不要重叠、地址规划时候需要为扩容做预留等。下面是一些VPC网络设计最佳实践:

  • 确保VPC网络地址范围(CIDR)与企业其他私有网络的地址范围不重合;如果是多Region场景,不同Region之间的网络CIDR建议不要有重合,否则在跨Region VPC互通时候会存在问题
  • 不要一次分配完所有地址,要确保为未来预留足够的地址数量
  • VPC网络地址范围需要考虑一个Region多AZ,为多个AZ预留地址
  • 为有不同网络流量需求的服务器单独划分子网(如典型的 public subnet vs. private subnet)
  • VPC 网络地址范围(CIDR)大小需要考虑未来业务增长
  • VPC 网络地址符合IANA规范,不能与Internet地址范围重合 (译者增加,原文没有) ``` IP地址由IANA(Internet地址分配机构)管理和分配,任何一个IP地址要能够在Internet上使用就必须由IANA分配,IANA 分配的能够在Internet上正常使用的IP地址称之为公共IP地址;IANA保留了一部份IP地址没有分配给任何机构和个人,这部份IP地址不能在 Internet上使用,此类IP地址就称之为私有IP地址。为什么私有IP地址不能在Internet上使用呢?因为Internet上没有私有IP地 址的路由。私有IP地址范围包括:

A类:10.0.0.0/8

B类:172.16.0.0/12 即172.16.0.1-172.31.255.254共16个B类网络

C类:192.168.0.0/16即192.168.0.1-192.168.255.254共256个C类网络 ```

AWS VPC 实践

当你着手在AWS上设计租户VPC网络,你需要考虑两个点,一个是外部(用户,后端系统,网络路由规则)如何与AWS VPC网络交互,另外一个是当前以及未来的网络规模大小预估。时刻牢记你可以很容易的更改VPC网络设计,从一种配置改为另一种配置,如增加一个独立的Internet子网;同时也需要时刻牢记,你不能更改VPC或子网网络大小。

要设计一个恰当的VPC网络,首先需要明确哪些人、哪些系统需要与VPC网络内的资源交互,以及他们交互的路由路径是什么。所有的VPC网络设计模式,都是遵从这三条准则。

  • 用户访问:谁需要访问VPC内的资源(内部用户、外部用户、还是全部?)
  • 系统访问:VPC内的工作负载需要与那些系统交互(内部系统、外部系统?)
  • 路由规则:不同的主机是否需要配置不同的路由规则(如内网访问、Internet访问?)

可访问Internet的VPC

这种网络模式适用于VPC网络与企业内部网络隔离的场景。

  • 用户访问:所有用户必须通过Internet访问VPC内资源。
  • 系统访问:VPC内的资源可以访问Internet服务。
  • 路由规则:VPC内的所有资源共享相同的路由规则。
  • 注意事项:VPC内的资源无法访问企业内部网络内的系统与资源。

公网路由与内网路由隔离的VPC

这种网络模式可同时支持VPC内网系统与Internet系统之间交互,这种模式通常用于多层结构的系统,需要访问Internet与不需要访问Internet资源之间隔离开。

  • 用户访问:VPC内用户与Internet用户都有访问VPC内资源的能力,具体使用哪种方式根据业务情况决定。
  • 系统访问:VPC内的资源可以访问VPC内系统与Internet系统,具体使用哪方式根据业务情况决定。
  • 路由规则:VPC内需要访问外网与不需要访问外网的资源的路由规则单独配置,可以通过划分不同子网的方式配置独立路由规则。
  • 注意事项:这种模式下需要对VPC内部需要访问外网的资源加以保护,参考 Controlling VPC Egress Traffic

公网路由与内网路由隔离的VPC,并通过硬VPN连接托管数据中心

这种网络模式支持公有云上的资源与托管数据中心资源连通。

  • 用户访问:VPC内用户与Internet用户、托管数据中心内用户都有访问VPC内资源的能力,具体使用哪种方式根据业务情况决定。
  • 系统访问:VPC内的资源可以访问VPC内系统与Internet系统、托管数据中心内的系统,具体使用哪方式根据业务情况决定。
  • 路由规则:VPC内需要访问外网与不需要访问外网的资源、以及托管数据中心到VPC的路由规则单独配置,可以通过划分不同子网的方式配置独立路由规则。
  • 注意事项:这种模式下需要对VPC内部需要访问外网的资源加以保护,参考 Controlling VPC Egress Traffic

仅内网VPC,并通过硬VPN连接托管数据中心

这种网络设计模式VPC内的资源只能从托管数据中心访问,这种模式通常是企业复用托管数据中心的已有互联网出口出公网。

  • 用户访问:任何用户需要访问VPC内的资源,只能通过企业托管数据中心来访问。
  • 系统访问:VPC内的资源可以访问企业托管数据中心内的资源,同时可以通过企业托管数据中心出Internet访问公网系统。
  • 路由规则:VPC内所有资源都使用VPN或专线路由规则与企业托管数据中心交互。
  • 注意事项:VPC内的EC2通过AWS VPC endpoints可以访问S3;但是访问其他通过公网地址暴露的AWS服务,则需要绕道托管数据中心的Internet出口访问。

Reference

AWS SINGLE VPC DESIGN AWS Single VPC Design AWS Answers CIDR Calculator

关注公众号获得更多云最佳实践