传统的网络设计与部署,是线缆、是路由、是交换、是负载、是安全、是一大票诸如此类的硬件设备拼凑在一起的复杂环境。而且网络与机房、网络与电气、网络与环境都密不可分,其职场环境和抗压管理都具有一定挑战。
云计算领域的基础网络环境,如果能将“软件定义网络”的能力彰显极致,那么这势必对传统网络有着深远影响。云化虚拟网络的设计与落地,一定是可管理、可控制的大型集成系统,这是云的根基。
图中所述,这是一个AWS虚拟网络VPC的实例,本图VPC是一个自定义的IPv4网络(10.0.0.0/16),并且拥有抽象后的互联网网关(左边区域)和虚拟私有网关(右边区域)分别用于访问Internet和物理机房。因此这里面有两个子网,其左边区域10.0.0.0/24是一个公有子网,相当于传统网络的DMZ可以直接访问互联网;右边区域10.0.1.0/24是一个私有子网,就相当于传统网络的“内网区域”,我们可以看到右边私有网络的路由下一跳是VPG(私有网关),而且访问外网是通过公有子网的NAT实例(10.0.0.8/24),保证了内网访问安全,而且私有子网与当前存在的物理网络有路由目的地址(17.16.0.0/16)。在子网级别有访问控制NACL,在虚拟机级别有防火墙的安全组(Security Group),这些都是传统经典网络的概念重现。
借助 Amazon Virtual Private Cloud (Amazon VPC),您可以在 AWS 云中预置一个逻辑隔离的部分,从而在自己定义的虚拟网络中启动 AWS 资源。您可以完全掌控您的虚拟联网环境,包括选择自己的 IP 地址范围、创建子网以及配置路由表和网络网关。您在 VPC 中可以使用 IPv4 和 IPv6,因此能够轻松安全地访问资源和应用程序。
我们可以轻松自定义 Amazon VPC 的网络配置。例如,您可以为可访问 Internet 的 Web 服务器创建公有子网,而将数据库或应用程序服务器等后端系统放在不能访问 Internet 的私有子网中。您可以利用安全组和网络访问控制列表等多种安全层,对各个子网中 Amazon EC2 实例的访问进行控制。AWS的VPC具有如下特点:
1、安全
Amazon VPC 提供了安全组和网络访问控制列表等高级安全功能,可在实例级别和子网级别启用入站和出站筛选功能。此外,您还可以在 Amazon S3 中存储数据并限制访问,使得只能从 VPC 中的实例访问这些数据。另外,您还可以选择启动专用实例,它在单个客户的专用硬件上运行,可让您获得额外的隔离。
2、简单
您可以通过 AWS 管理控制台快速又方便地创建 VPC。您可以选择一种最符合您需求的常用网络设置,再按“启动 VPC 向导”。 系统将为您自动创建子网、IP 范围、路由表和安全组,从而让您可以专心创建要在 VPC 中运行的应用程序。
3、良好的扩展性和可靠性
Amazon VPC 具备其余 AWS 产品和服务所具有的全部优势。您可以即时扩展或缩减您的资源,选择适合您应用程序的 Amazon EC2 实例类型和大小,并且只需为所使用的资源付费 – 一切尽在 Amazon 最为可靠的基础设施中。
在AWS网络技术栈中,VPC可以覆盖一个区域(Region)里的多个可用区(AZ),但不能覆盖跨越多个区域;再者,一个子网只能在一个可用区内,不能跨越多个可用区。而且VPC与用户自己的物理机房互联时,地址段不能重复,而且要有路由信息。在一个VPC中的多个子网中,我们可以通过ACL(访问控制列表)保障子网的安全和访问权限,设置相应的端口和访问级别;同时在主机层面(EC2实例)可以设置安全组,控制入站和出站的规则,这就是VPC的强大之处,可以保证灵活性额同时最大限度的保证网络安全。
举个例子,如果在一个没有公网路由的子网里,给一个EC2分配固定公网IP(EIP),并且NACL和安全组都允许这台EC2实例,结果会发现这个网络的示例仍然无法上网,原因就在于没有路由,需要在VPC中添加相应的路由信息。
对于AWS用户经常会遇到一个问题,就是“应该建立多少个VPC,创建多少个子网。”其实,这主要取决于用户网络的内部管理策略和应用架构设计,往往VPC的构建都是从简到繁的过程。此外,多个VPC往往也会有比较严格的权限管理需求,这就需要AWS的IAM服务(身份访问管理),这是一个非常重要的策略型服务,可以限定某一个或一类用户的操作权限。
|