亚马逊AWS官方博客
在亚马逊云科技上围绕 Amazon VPC 打造内外兼修的合适架构
背景介绍
自亚马逊云科技在 2006 年提出云计算服务以来,历经十几年的发展,云计算的技术和服务愈加完善。这些服务涵盖了计算、存储、数据库、分析、网络、移动、开发工具、管理工具、物联网(IoT)、安全等各个方面。云计算通过互联网云服务平台按需提供 IT 资源,为企业带来了诸多便利。在亚马逊云科技上,客户可以非常方便的去选择最合适的服务,来打造自己的优良架构,通过自动化,弹性扩展,来提高运营和运维的效率。
在云上,客户将底层基础设施的运营交给亚马逊云科技,来减轻客户的运营负担。亚马逊云科技和客户根据安全责任共担模型担负不同的负责。原则上,亚马逊云科技负责“云本身的安全性”,包括运行这些服务的底层硬件、软件、网络等物理基础设施安全,而客户负责“云中的安全性”,基于亚马逊云科技提供的相关工具保护在云中构建的数据和资源的安全。这种责任划不是完全一层不变的,具体到每一个服务,根据服务托管层级的不同,具体责任划分也不同,如下图所示:
不同的责任划分,也意味着客户对这些服务日常管理所承担的工作量也不同。
- 对于基本的基础设施服务,例如 Amazon EC2 等服务,要求客户执行所有必要的安全配置和管理任务。 部署 Amazon EC2 实例的客户需要负责客户操作系统(包括更新和安全补丁)的管理、客户在实例上安装的任何应用程序软件或工具,以及每个实例上亚马逊云科技提供的防火墙(称为安全组 Security Group)的配置。
- 对于一些托管服务,例如 Amazon RDS, 客户可以将更多的责任和工作交给亚马逊云科技,可以进一步减轻日常工作中对后台运行实例的管理、补丁和备份等工作量。
- 无服务器化的服务,抽象程度更高,例如 Amazon Lambda 和 Amazon DynamoDB。亚马逊云科技负责运营网络基础设施层、操作系统和平台,这些服务可以直接通过终端 API 进行访问和调用,使得客户更容易打造自己的架构,并将更多的精力投入到业务创新中来。
客户可以根据自己的能力和愿意承担的责任,在亚马逊云科技上选择合适的服务来构建自己的应用。实际上,无服务器的服务是趋势和方向,但大多数客户都会同时用到这些不同程度托管的服务。为了让读者在整体上对亚马逊云科技在不同层级的抽象服务之间进行交互的设计理念有更加深刻和整体的认识,更好的提升在亚马逊云科技上的基础架构设计能力,特撰写了本系列专题。
内容概述
Amazon Virtual Private Cloud(VPC)是亚马逊云科技中一个非常重要的服务。VPC 本身就像一堵隔离墙,在网络层面上隔离了 VPC 内部和 VPC 外部的网络环境,诸如其他客户的 VPC、亚马逊云科技管理的 VPC,甚至是外部互联网。在 VPC 内部,客户可以构建自己的内部网络环境,可以直接控制 VPC 内部的资源。而 VPC 内部和外部的网络通信,通常需要通过各种网关 Gateway 进行,例如通过 IGW(Internet Gateway)连接外部互联网,通过 VGW(Virtual Private Gateway)和客户的数据中心建立 VPN 通道。
一般来说,基本的基础设施服务和容器类托管服务都运行在客户的 Amazon VPC 内部,我们统称为客户 VPC 内的服务。而无服务器的抽象服务则更多的运行在亚马逊云科技自己管理的服务专属的 VPC 中,我们称其为客户 VPC 外部的托管服务,其对应的专属 VPC,我们称为亚马逊云科技管理的 VPC。基于这个理念,我们以客户的 VPC 为视角,从多个角度对不同的类型的服务之间的交互进行分析和探讨,如下图所示:
本系列专题以上图中几个重要的交互类型为锚点,从多个角度对相关的场景进行分析,在总结中突出要点。力求在具体实验的基础上,加深对宏观设计的理解,努力帮助读者做到举一反三,这对于初学者来说非常重要。专题最后,我们对几个经典的架构进行分析,来帮助更好的理解和掌握相关内容。
本系列专题的主要内容是在亚马逊云科技中国区上如何结合客户 VPC 内部和外部的服务,内外兼修来打造合适的架构。为了使内容更具焦点,更多是在网络交互的层面上,没有考虑跨账号,跨区域,甚至是混合云的情况。本系列专题由如下几部分组成:
- 引论部分(本篇):在亚马逊云科技上围绕 Amazon VPC 打造内外兼修的合适架构。
- 第一部分:客户 Amazon VPC 内部资源和服务的相互访问。
- 第二部分:从客户 Amazon VPC 内部访问外部亚马逊云科技托管服务。
- 第三部分:从托管服务 Amazon Lambda 访问客户 Amazon VPC 内部私有资源。
- 第四部分:从托管服务 Amazon Glue 访问客户 Amazon VPC 内部私有数据存储。
- 第五部分:从托管服务 Amazon API Gateway 集成 Amazon VPC 内部私有服务。
- 第六部分:在亚马逊云科技上打造无服务器 Serverless 应用。
- 第七部分:从客户 Amazon VPC 访问其他客户 Amazon VPC 内的服务或资源。
- 第八部分(总结):在亚马逊云科技上打造合规的应用架构。
由于篇幅所限,我们不会对每个细节都提供详细的步骤,需要您在阅读本文之前对亚马逊云科技提供的服务有基本的了解。
参考链接
Shared Responsibility Model
https://aws.amazon.com/compliance/shared-responsibility-model/
How Amazon VPC works
https://docs.aws.amazon.com/zh_cn/vpc/latest/userguide/what-is-amazon-vpc.html
Amazon VPC FAQs
https://aws.amazon.com/vpc/faqs/
Serverless vs Fully Managed Services