面向 AWS 专业人员的 Google Cloud 简介:网络

更新日期:2019 年 4 月 9 日

比较 Amazon 和 Google 在各自云端环境中提供的网络服务。网络服务可提供跨虚拟机、本地服务器和其他云服务的连接。

服务模式比较

Amazon Web Services

Amazon EC2-Classic 是 Amazon Web Services 的原始产品,自 2013 年底起已被弃用,本文档未对此进行介绍。

Amazon VPC 是目前所用的模式。该服务模式可为区域 VPC 中的各种网络功能提供支持,例如:

  • 支持创建专用地址空间和子网
  • 网络访问控制列表 (NACL)
  • 入站和出站防火墙规则
  • 路由
  • VPN

Google Cloud

Google Cloud 将网络视为跨越所有服务的全局功能。Google Cloud 网络基于 Google 的 Andromeda 架构,允许您使用软件在任何级层创建网络元素。这种软件定义网络允许 Google Cloud 服务实现符合其确切需求的网络功能,例如 Compute Engine 中虚拟机的防火墙、Cloud Bigtable 中数据库节点之间的快速连接,或 BigQuery 中的快速查询结果。

当您在 Google Cloud 项目中创建虚拟机实例时,Compute Engine 会自动将它们连接到默认的内部网络。如有需要,您还可以创建其他网络。与 Amazon VPC 一样,每个网络都是专用的,并且都支持防火墙规则、路由、VPN、专用地址空间和子网。

Google Cloud 中的大多数网络实体(例如负载平衡器、防火墙规则和路由表)都具有全局范围。更重要的是,网络本身就具有全局范围。这意味着您可以创建一个全局的专用 IP 空间,而不必连接多个专用网络并单独管理这些空间。因为这个单一网络具有全局范围,所以您可以通过 IP 地址和名称在您的网络中对 Compute Engine 实例进行寻址。

Google Cloud 提供两种网络服务层级:标准层级和优质层级。

  • 默认优质层级通过 Google 的高性能全球网络传输流量。

  • 标准层级是一种费用较低的方案,所提供的网络性能与其他公有云相当。

特性比较

IP 地址

Google Cloud 和 Amazon VPC IP 地址具有以下相似之处:

  • 为所有实例分配内部 IP。

  • 您可以请求外部 IP。默认情况下,外部 IP 是临时的,与实例的生命周期相关联。

  • 您可以请求将永久 IP 地址附加到实例。在您选择将其释放之前,此 IP 地址一直归您所有,并且可以根据需要附加到实例或与实例分离。

下表列出了有关 IP 类型的术语差异:

IP 类型 AWS Google Cloud
永久 IP 弹性 IP 静态 IP
临时 IP 公共 IP 临时 IP
内部 IP 专用 IP 内部 IP

负载平衡

负载平衡器会在多个实例之间分配传入流量。经过适当配置后,负载平衡器有助于使应用更具备容错能力,并提升应用可用性。

AWS 和 Google Cloud 负载平衡服务

AWS 和 Google Cloud 均提供多种负载平衡服务,这些服务统称为 Elastic Load Balancing (AWS) 或 Cloud Load Balancing (Google Cloud):

  • 外部第 4 层负载平衡
  • 外部第 7 层负载平衡
  • 内部负载平衡

AWS 负载平衡服务在内部和外部都可以使用。Google Cloud 服务在外部访问与内部访问之间不同。Google Cloud 的内部选项是内部负载平衡

AWS 和 Google Cloud 负载平衡比较

下表显示了外部第 4 层负载平衡选项(AWS 网络负载平衡器和 Google Cloud 网络负载平衡)的比较。

特性 AWS Google Cloud
网络负载平衡
支持的协议 TCP、TLS TCP、UDP
多个端口
端口范围
支持静态 IP 地址 支持 - 每个子网一个 支持 - 每个负载平衡器一个
DNS 故障转移 不需要,因为 GCP 故障转移使用单个任播 IP 地址
保留源 IP 地址
部署位置 区域 区域
直接服务器返回 (DSR)
目标 虚拟机实例、ECS 容器、IP 地址 虚拟机实例

下表显示了外部第 7 层负载平衡选项的比较。在 AWS 中,第 7 层负载平衡可通过应用负载平衡器实现;在 Google Cloud 中,第 7 层负载平衡可通过 HTTP(S) 负载平衡、TCP 或 SSL 代理实现。

特性 AWS Google Cloud
支持的协议 HTTP、HTTPS HTTP、HTTPS、SSL/TLS、TCP
SSL 分流
保留源 IP 地址
多个端口
端口范围
部署位置 区域 全球
WebSocket 支持
基于路径和主机的路由
IPv6 支持
HTTP/2 支持
QUIC 支持
目标 虚拟机实例、ECS 容器、IP 地址 虚拟机实例、
Google Kubernetes Engine 容器、
IP 地址

下表显示了内部负载平衡选项的比较。 AWS 负载平衡服务在内部和外部都可以使用。 Google Cloud 为内部连接提供内部负载平衡

特性 AWS Google Cloud
支持的协议 HTTP、HTTPS、
TCP
TCP、UDP
保留源 IP 地址
多个端口
端口范围
部署位置 区域 区域
基于路径和主机的路由
目标 虚拟机实例、ECS 容器、IP 地址 虚拟机实例

AWS 负载平衡

AWS 的 Elastic Load Balancing (ELB) 服务提供以下功能:

  • 能够将流量定向到给定区域中一个或多个可用地区内的实例。

  • 对每个目标实例进行常规运行状况检查,并在检测到目标实例运行状况不佳时重定向流量。

  • 可与 AWS 的自动扩缩服务集成,在自动扩缩服务进行纵向扩容或缩减时可实现自动添加和移除实例。

在您创建 Elastic Load Balancer 时,AWS 会提供一个 CNAME,您可以向其定向流量。如果您使用 AWS 的 Route 53 服务,则可以将 Elastic Load Balancer 用作根网域。否则,您必须为 Elastic Load Balancer 使用 CNAME

AWS 为基于内容的路由和 SSL 分流提供应用负载平衡器,为高吞吐量、低延迟时间的第 4 层连接提供网络负载平衡器。如需了解详细的特性比较,请参阅 AWS 有关 Elastic Load Balancing 的比较页面

Google Cloud Load Balancing

与 ELB 一样,Compute Engine 负载平衡器可将流量定向到一个或多个区域中的后端实例。但是,与 ELB 不同,当您预配任何外部 Compute Engine 负载平衡器时,您将获得一个可在全球范围内访问的 IP 地址。此 IP 地址可用于负载平衡器的整个生命周期,因此可用于 DNS A 记录、允许列表或应用中的配置。Compute Engine 提供以下三种类型的负载平衡器:

  • 对于外部第 4 层负载平衡,网络负载平衡基于 Google 的 Maglev 技术,并支持在地区范围内同时平衡 UDP 和 TCP 流量。 流量可经过平衡后发送到多个端口或端口范围,并且负载平衡器不会位于流量的返回路径中。

  • 对于外部第 7 层负载平衡,HTTP(S) 负载平衡、TCP 代理和 SSL 代理可在全球和地区范围内使用各种协议平衡流量。流量会根据可用容量自动转发到最近的后端。

  • 内部负载平衡是一种地区负载平衡服务,支持基于 Andromeda 网络虚拟化堆栈构建的 TCP 和 UDP 流量,以便提供软件定义的负载平衡,从而将流量从客户端实例直接传输到后端实例。

费用

AWS 和 Google Cloud 负载平衡服务的价格模式略有不同。

AWS 收费依据:

  • 负载平衡器运行的各小时或部分小时。
  • 每小时使用的负载平衡器容量 (LCU) 单元数。

如需详细了解 AWS 价格以及计算 LCU 单元数的方式,请参阅 AWS 文档

Google 收费依据:

  • 通过负载平衡器处理的入站数据。
  • 指向负载平衡服务的转发规则量。

实例迁移

您偶尔需要将运行实例的主机从其数据中心中移除以进行维护或更换。

  • AWS:要从主机上手动迁移受影响的实例,用户必须重新启动实例或使用实例快照重新创建实例。

  • Google Cloud实时迁移会自动以透明的方式迁移受影响的实例。

VPC 之间的连接

AWS 和 Google Cloud 均支持 VPC 之间的网络连接。

  • AWS 提供 VPC 对等互连共享 VPC

    • VPC 对等互连可以连接到各 AWS 帐号或地区内部或之间的 VPC。

    • 共享 VPC 使多个 AWS 帐号能够使用集中管理的 VPC。子网可以与 AWS 帐号共享。子网内的安全群组由子网所有者控制,而子网与其他 VPC 资源之间的网络 ACL 是集中管理的。

  • Google Cloud 提供 VPC 网络对等互连共享 VPC

    • VPC 网络对等互连可以在属于同一组织或不同组织的 Google Cloud 项目之间建立连接。 防火墙规则和路由在每个项目中单独控制。

    • 共享 VPC 支持在组织内建立专用连接。 该服务提供了在多个项目之间共享的 VPC,并具有集中管理和控制的优势。子网可以与一个或多个个人或团队共享。所有防火墙规则和路由都在宿主项目中集中控制。

价格

使用上述服务没有固定费用。

即使资源位于同一区域或地区中,AWS 也会对对等 VPC 之间的出站流量收费。

与其他网络的专用连接

AWS 和 Google Cloud 均提供多种服务,以便与网络外部(例如您的本地环境)建立专用连接。

下表显示了 AWS 和 Google Cloud 服务的比较:

功能 AWS Google Cloud
虚拟专用网 VPC-VPN Cloud VPN
与 VPC 的专用连接 Direct Connect 专用互连
合作伙伴互连
与其他云服务的高速连接 Direct Connect 直接对等互连
运营商对等互连
CDN 连接 不适用 CDN Interconnect

虚拟专用网

AWS 和 Google Cloud 可提供虚拟专用网 (VPN) 服务,用于创建从外部网络到内部 Amazon EC2 或 Compute Engine 网络的隧道,然后通过该隧道建立专用连接。

  • Google Cloud:Cloud Router 可以在 Compute Engine 网络和非 Google 网络之间实现动态 BGP 路由更新。

  • AWS:Amazon VPC 提供类似的路由服务。

与 VPC 的专用连接

在某些情况下,VPN 无法提供特定工作负载所需的速度,或者需要有专用的容量。通过专用连接服务,您可以租用具有专用容量级别的网络线路,从而使用 RFC 1918 地址直接连接到 VPC。

  • AWS 提供 Direct Connect,用于创建从合作伙伴运营商设施到 AWS 的专用租用线路。您可以 1 Gbps 或 10 Gbps 的速度直接连接此设施,也可与 AWS 合作伙伴合作,以 50 Mbit/s 或更高的速度连接到您的本地。您可以通过 Direct Connect 网关访问远程地区。

  • Google Cloud 提供专用互连,用于创建从合作伙伴设施到您的 GCP VPC 环境的直接物理连接(以 10 Gbps 为单位递增)。通过合作伙伴互连,您可以使用合作伙伴服务,获得 50 Mbit/s 或更高速度的连接。通过 Cloud Router,您可以选择想要在区域内访问 VPC 还是在全球访问 VPC。

与其他云服务的高速连接

在访问 VPC 之外的云服务时,AWS 和 Google Cloud 均可实现高速连接。

Google Cloud 提供以下服务:

AWS 提供 Direct Connect,可通过一个单独的虚拟接口访问所有 AWS 服务。

内容分发网络 (CDN) 连接

CDN 连接为 CDN 提供商提供云资源的出站流量折扣费率。

  • Google Cloud 通过 CDN Interconnect 为多个 CDN 提供商提供出站流量折扣费率。

  • Amazon 仅为其自己的 CDN 服务(即 Amazon CloudFront)提供出站流量折扣费率。

连接服务的费用

AWS 和 Google Cloud 均按小时费率收取 VPN 服务费。

Google Cloud 和 AWS 针对其直接专用连接服务每月按端口收费:AWS 的 Direct Connect 及 Google Cloud 的专用互连和合作伙伴互连。Google Cloud 和 AWS 都通过这些服务提供折扣价的出站流量带宽。如果您使用合作伙伴连接,还需要直接向合作伙伴支付单独的费用。

Google Cloud 不对以下服务收费:

  • 直接对等互连或运营商对等互连。Google Cloud 不对这些服务收费,但合作伙伴需为运营商对等互连付费。

  • CDN Interconnect。Google Cloud 不对此服务收费,但合作伙伴 CDN 会设置自己的费率并直接向客户收费。对于 CDN Interconnect,Google Cloud 为发送到 CDN 合作伙伴的流量提供互联网出站流量费率折扣。

网络遥测

AWS 通过 VPC 流日志提供网络遥测数据。 通过该服务,您可以收集有关在不同地址和接口之间流动的流量的信息。 Google Cloud 通过 VPC 流日志启用相同的功能,但以 JSON 格式提供数据,其中包含注释,例如外部实体的地理位置或 TCP 往返时间。

费用

Google Cloud 和 AWS 均根据生成的数据量收费。

DNS

DNS 服务将人类可读的域名转换为 IP 地址,供服务器用于相互连接。托管式 DNS 服务,例如 Amazon Route 53 (AWS) 和 Cloud DNS (Google Cloud),在云端提供可扩缩的托管式 DNS 服务。

Cloud DNS 和 Amazon Route 53 具有以下相似之处:

  • 支持几乎所有 DNS 记录类型
  • 基于 Anycast 的服务
  • 域名注册

Amazon Route 53 支持 Cloud DNS 所不支持的两种路由:基于地理位置的路由和基于延迟时间的路由。基于地理位置的路由允许您将内容限制在世界的某些地理区域内。 基于延迟时间的路由允许您根据 DNS 服务测量的延迟时间来定向流量。

下表将 Amazon Route 53 与 Cloud DNS 特性一一对应:

功能 Amazon Route 53 Cloud DNS
地区 托管区域 托管地区
支持大多数 DNS 记录类型
基于 Anycast 的服务
基于延迟时间的路由
基于地理位置的路由
DNS 服务的 DNSSEC
专用地区/水平分割

费用

Amazon Route 53 和 Cloud DNS 均根据每月托管地区数量和每月查询数量来收费。Route 53 对基于地理位置的路由查询和基于延迟时间的路由查询收取较高的费用。

后续步骤

查看其他“面向 AWS 专业人员的 Google Cloud”文章: