网络拓扑概览

网络拓扑是一种可视化工具,可显示网络基础架构的拓扑:

  • 基础架构视图:显示 Virtual Private Cloud (VPC) 网络、与本地网络之间的混合连接、与 Google 代管式服务的连接及其关联的指标。
  • GKE Enterprise 视图(适用于 GKE Enterprise) 启用项目):显示了 Google Kubernetes Engine (GKE) 部署:集群、命名空间、工作负载 Pod 及其关联的指标

您还可以查看流向其他共享 VPC 网络的网络流量和区域间流量的指标和详细信息。网络拓扑在单个视图中将配置信息与实时操作数据结合在一起。此视图使您更容易理解 Google Cloud 上各种工作负载与其当前状态之间的网络关系,例如虚拟机 (VM) 实例之间的流量路径和吞吐量。

网络拓扑以格式布置信息,其中节点和线表示网络中的实体和连接。

工作原理

网络拓扑从 Google 的基础架构中收集实时遥测和配置数据,以便直观呈现您的资源。网络拓扑会捕获配置信息、指标和日志等元素,以推断项目或多个项目中各项资源之间的关系。收集每个元素之后,网络拓扑会将它们组合在一起以生成代表您的部署的图。

优势

使用网络拓扑具有以下优势:

  • 您可以查看部署的拓扑。使用网络拓扑不需要其他配置或代理。

  • 您可以使用网络拓扑图来了解 Google Cloud 基础架构。您无需查看多个日志或使用第三方工具。

  • 网络拓扑可帮助您分析网络的性能。您可以深入分析并查看各种指标,这些指标可以帮助您识别意外的模式。

  • 过滤条件可以帮助您突出显示并专注于特定资源,尤其是在需要诊断和排查问题的时候。

  • 您可以查看同一组织内跨共享 VPC 或 VPC 网络对等互连边界发送的网络流量的跨项目指标。

  • 您可以查看具有高出站流量指标值的实体的数据分析,以便进行进一步分析和问题排查。

注意事项

网络拓扑会捕获 6 周的历史记录。

仅当实体和连接在所选时间段内进行通信(发送或接收流量)时,网络拓扑才会直观呈现实体和连接。如果实体各自层次结构中的基础实体处于通信状态,则实体之间存在连接。例如,如果每个地区中至少有一个虚拟机实例彼此通信,则网络拓扑会连接地区 us-east4europe-west1。尽管可能存在其他资源,但如果它们不接收或发送流量,网络拓扑也不会显示它们。

如需了解详情,请参阅数据收集和数据时效性

资源和流量

网络拓扑图将您的资源和流量显示为实体和连接。网络拓扑会将相关资源聚合到分层实体中,其中每种资源类型都有自己的层次结构。以下各部分介绍了网络拓扑可以绘制图表的资源(实体)和流量路径(连接)。

实体

基础实体是特定层次结构的最低层级,代表着 可以通过网络与其他资源直接通信的资源, Google Kubernetes Engine (GKE) Enterprise 版本的虚拟机实例或 GKE Pod 项目。

当您有多个网络和许多基础实体时,以平面视图显示所有内容会变得很困难。为了解决此问题,网络拓扑会将基础实体聚合到可以展开或折叠的分层实体中。首次查看网络拓扑图时,它会将所有基础实体聚合到其顶级层次结构中。

例如,网络拓扑会按如下方式聚合实体:

  • 虚拟机实例整合到其实例组中,然后将实例组汇总为 Google Cloud 可用区
  • 将 GKE Pod 复制到其 GKE 工作负载中 将 GKE 工作负载聚合到 GKE 中, 然后通过 GKE 命名空间 GKE 集群。这仅适用于 启用了 GKE Enterprise 的项目。

网络拓扑会将基础或分层实体表示为图中的圆形节点。每个基础实体都有自己的层次结构。例如,负载平衡器的层次结构与虚拟机实例不同。

下表显示了基础实体及其聚合层次结构。在图中,网络拓扑使用表中显示的图标表示每个基础实体。

基础实体 图标 说明 聚合层次结构
(从上到下)
虚拟机实例 虚拟机实例的图标。 Compute Engine 虚拟机实例 区域 >
网络 >
子网 >
可用区 >
实例组 >
实例
虚拟机实例组 虚拟机实例组的图标。 可以作为单个 Pod 进行管理的虚拟机实例集合 单个实体。 区域 >
网络 >
子网 >
可用区 >
实例组 >

传统版应用负载均衡器

外部直通式网络负载均衡器

外部代理网络负载均衡器

负载均衡器的图标。 外部负载平衡器组件的基础实体,例如转发规则和后端服务。 外部负载平衡 >
负载平衡器
内部负载平衡器 负载均衡器的图标。 内部负载平衡器组件的基础实体,例如转发规则和后端服务。 内部负载平衡 >
负载平衡器
Cloud NAT 网关 NAT 网关的图标。 NAT 网关 地区 >
网络 >
NAT >
NAT 网关
VPC 网络对等互连 对等网络的图标。 您无权查看对等网络时显示的 VPC 对等互连端点。如果您有权查看对等网络,则网络拓扑将显示对等网络的资源。 对等网络 >
网络
国家/地区 外部客户端所在国家/地区的图标。 网络拓扑会显示外部客户端所在的国家/地区。这些客户端不在 Google Cloud 中。它们通常是通过外部 IP 地址与网络中的资源进行通信的主机。 业务区域* >
国家/地区#
Cloud Interconnect 互连连接的图标。 网络拓扑会显示专用互连或合作伙伴互连连接。如需了解详情,请参阅 Cloud Interconnect 概览 interconnect
VLAN 连接 VLAN 连接的图标。 网络拓扑会显示专用互连或合作伙伴互连连接的 VLAN 连接。 互连 >
互连连接
Cloud VPN 网关 VPN 网关的图标。 网络拓扑会显示 Cloud VPN 网关连接。如需了解详情,请参阅 Cloud VPN 概览 网关 >
Cloud VPN VPN 网关的图标。 网络拓扑会显示 Cloud VPN 连接。 网关 >
VPN 隧道
本地 本地实体的图标。 网络拓扑会显示本地网络。本地网络可以引用 Google Cloud 网域外部的任何远程网络。 本地
路由器设备实例 路由器设备实例的图标。 网络拓扑会显示路由器设备实例。
Google 管理的服务 Google 代管式服务的图标。 网络拓扑会显示 Google 代管式服务实例。 Google 服务 >
Google 服务

*业务地区可以是以下实体之一:美洲(表示北美洲和南美洲)、亚太地区(表示亚洲和大洋洲)以及欧洲、中东和非洲地区(表示欧洲、中东和非洲)。
# Google 使用外部 IP 地址对外部客户端的来源进行分类。但是,IP 地址可能无法指示客户端的实际位置。例如,如果您通过 Cloud CDN 传送内容,则网络拓扑观察到的 IP 地址可能不是外部客户端的实际地址。

下表显示了 GKE Enterprise 视图,该视图仅适用于 GKE Enterprise 项目。图中,网络拓扑 表示每个基本实体。

基础实体 图标 说明 聚合层次结构
(从上到下)
GKE Pod GKE pod 的图标。 GKE 实体(例如集群、工作负载和命名空间)的基础实体。 区域 >
网络 >
子网 >
可用区 >
GKE 集群 >
GKE 命名空间 >
GKE 工作负载 >
GKE Pod
GKE 工作负载 GKE 工作负载的图标。 GKE 工作负载 区域 >
网络 >
子网 >
可用区 >
GKE 集群 >
GKE 命名空间 >
GKE 工作负载
GKE 命名空间 GKE 命名空间的图标。 GKE 命名空间 区域 >
网络 >
子网 >
可用区 >
GKE 集群 >
GKE 命名空间
GKE 集群 GKE 集群的图标。 GKE 集群 区域 >
网络 >
子网 >
可用区 >
GKE 集群

连接

网络拓扑以线条表示实体之间的流量,例如虚拟机实例之间的流量。如果连接的至少一侧正在发送流量,则网络拓扑将连接实体。

网络拓扑会显示层次结构各个层级的连接,只要它们的基础实体处于通信状态即可。例如,如果每个地区中的至少一个虚拟机实例正在彼此通信,则网络拓扑会显示两个地区之间的连接。

网络拓扑支持某些流量路径的 TCP、UDP、ICMP、ICMPV6、ESP 和 GRE 流量。以下列表描述了网络拓扑在实体之间直观呈现的路径:

  • VPC 网络中的流量,例如同一网络中虚拟机实例与内部负载平衡器之间的流量。
  • 跨对等互连的 VPC 网络的流量,例如对等 VPC 网络中的虚拟机实例与内部负载平衡器之间的流量。
  • Google Cloud 与互联网之间的流量,例如互联网上的客户端与实体(例如虚拟机实例或具有外部 IP 地址的外部应用负载均衡器)之间的流量。
  • 进出 Cloud VPN 网关、Cloud Interconnect 连接和路由器设备实例的流量。

以下列表介绍了网络拓扑 在 GKE Enterprise 视图中,在实体之间直观呈现 仅适用于 GKE Enterprise 项目:

  • GKE 集群内的流量,例如 多个不同 GKE 节点上的 GKE Pod 网络拓扑不会显示 集群内的 GKE 节点
  • 同一 GKE 节点中的两个 Pod 之间的流量(如果节点内) 可见性。
  • GKE 集群之间的流量与外部 IP 地址(例如服务流)之间的流量。这些连接可能会流经负载均衡器。

Google 管理的服务

网络拓扑还可以直观呈现进出 Google 代管式服务的流量。Google Cloud 用户可以使用网络拓扑来审核其网络配置,并排查与使用中的各种 Google 服务相关的网络问题。

网络拓扑通过使用将下一个跃点用作 default-internet-gateway专用 Google 访问通道的默认路由,支持虚拟机直接访问 Google 代管式服务。它不支持对 Google 代管式服务的以下访问方法:

  • 通过来自互联网的外部流量
  • 从虚拟机直接访问 Google
  • 来自本地主机的专用 Google 访问通道

网络拓扑不会显示进出某些 Google 代管式服务(例如 App Engine Memcache、Filestore、Memorystore、Cloud SQL 以及合作伙伴和市场解决方案)的流量。

IP 地址注意事项

对于 Google Cloud 中使用外部 IP 地址进行通信的虚拟机实例之间的流量,网络拓扑不会直接在虚拟机之间显示单个连接。相反,网络拓扑会使用两个连接来显示流量,就好像流量往返于外部位置一样:一个连接位于第一个虚拟机和第二个虚拟机所在的国家/地区之间,另一个连接位于第二个虚拟机和第一个虚拟机所在的国家/地区之间。

网络接口注意事项

网络拓扑仅会直观呈现进出虚拟机的第一个网络接口 (nic0) 的流量。

对于使用内部 IP 地址进行通信的虚拟机,只有当两个虚拟机同时使用第一个网络接口(nic0nic0)进行通信时,网络拓扑才会显示连接。

对于使用外部 IP 地址进行通信的虚拟机,网络拓扑通常会显示两个连接,如 IP 地址注意事项中所述。但是,如果仅有一个虚拟机使用的是 nic0,则网络拓扑仅显示该虚拟机的连接。例如,如果一个虚拟机通过 nic0 进行通信,而另一个虚拟机通过 nic1 进行通信,则网络拓扑仅显示 nic0 虚拟机与某个国家/地区之间的连接。

实体指标

网络拓扑会显示所选小时内的平均流量。您还可以查看许多实体类型的一小时平均丢包率和延迟时间中位数 (RTT)。

时间轴上所选小时时段的指标包括:

  • 适用于大多数实体的平均每小时吞吐量
  • 适用于 Google Cloud 区域和可用区内流量的平均每小时丢包率
  • 适用于许多实体类型的每小时延迟时间中位数 (RTT)

在 GKE Enterprise 视图中 GKE Enterprise 项目中,所选小时的指标 时间表还包括以下内容:

  • 适用于大多数实体的平均每小时吞吐量
  • 具有 GKE 集群的 Google Cloud 区域和可用区中的流量可用的延迟时间中位数
  • 显示具有 所选集群的丢弃和转发次数最多的流量流

您还能以 CSV 格式下载离群值表格, 高出站流量网络判定流量数据分析。

具有高指标值的实体的数据分析

除了平均每小时指标之外,网络拓扑还会显示生成最高出站流量的虚拟机或实例组的排名。网络拓扑提供对资源进行排序的专门视图,您可以从此处开始进行问题排查和分析。

在“基础架构”视图中,时间轴上所选小时的指标数据分析包括:

  • 高出站流量实例:各种类型的出站流量的每小时汇总值
  • 高出站流量实例组:各种类型的出站流量的每小时汇总值

在 GKE Enterprise 视图中 GKE Enterprise 项目、 时间轴上选定的时段包括:

  • 高出站流量 GKE 工作负载:针对 GKE 工作负载的各种出站流量 GKE Enterprise 视图

根据流量类型过滤流量

您可以根据以下流量类型进一步过滤流量:

  • 某个实体的所有出站流量
  • 跨可用区出站流量:适合用于分析计费流量
  • 流向互联网的出站流量:用于分析计费流量以及分析到达外部端点的流量
  • 混合出站流量:用于分析流向本地的流量,包括 Cloud Interconnect、Cloud VPN 和路由器设备连接。

在 GKE Enterprise 视图中,您可以进一步过滤流量 进行迁移:

  • 来自所选实体的所有测量的出站流量
  • 跨可用区的出站流量:用于分析 Google Cloud 可用区之间的可计费流量

多个项目

Network Topology 直观呈现项目中的资源,或者您可以使用 Cloud Monitoring(可直观呈现多个 Google Cloud 项目的指标)。将 Cloud Monitoring 配置为有权访问多个项目的指标时,网络拓扑可以显示跨多个项目的网络流量。

例如,假设您在两个不同的项目中有两个虚拟机实例。vm-aproject-a 中,而 vm-bproject-b 中。这两个虚拟机实例彼此通信,并且位于某个共享 VPC 网络中。如果您只能看到 project-b,则网络拓扑将显示 vm-b,但不会显示它与 vm-a 进行了通信。但是,如果您配置 Cloud Monitoring 以查看两个项目的指标,则网络拓扑将显示 vm-avm-b 及其通信。

对于资源或网络可能位于不同项目中的共享 VPC 和 VPC 网络对等互连场景,Cloud Monitoring 特别有用。如需了解详情,请参阅查看多个 Cloud 项目的指标

项目聚合

在网络拓扑图中查看多个项目时,可以按项目然后按其标准层次结构聚合 Google Cloud 实体。通过此选项,您可以按项目查看资源。Google Cloud 外部的实体(例如外部客户端)不包括在项目聚合中。

例如,如果按项目进行聚合然后展开一个项目,该图将显示每个包含虚拟机实例的地区的地区实体。如果您不使用项目聚合,该图将显示所有实体,就像它们在同一项目中一样。如需启用项目聚合,请参阅按项目聚合实体

更改项目范围

如需在网络拓扑中查看多个项目,请配置指标范围并向其添加受监控的项目。

将项目添加到某个指标范围后,便可通过该指标范围监控范围项目以及受监控项目的数据。借助该指标范围,您可以访问范围项目和受监控项目的组合指标。如需了解详情,请参阅查看多个项目的指标

如需使用现有指标范围并在单个视图中监控多个 Google Cloud 项目,请使用 Google Cloud 控制台项目选择器或使用更改范围按钮选择范围项目。您还可以使用上述方法选择一个监控项目。

数据收集和数据时效性

网络拓扑会捕获 6 周的历史记录。

网络拓扑历史记录被划分为每小时的快照,这些快照均从一个小时的开头开始。对于每个小时快照,该图会显示基础实体及其在该小时内发生的通信。例如,如果两个实例相互通信,然后在这个小时内被删除,即使它们不再存在,也会出现在该小时内。

实体及其连接的直观呈现信息包含适用连接的叠加指标。网络拓扑还会显示单独的时间序列图表,其中显示各种指标,例如通信实体之间的流量吞吐量或虚拟机实例的 CPU 利用率。时间 系列图表与直观图表没有相同的每小时限制 实体、连接和叠加指标

如需详细了解如何查看指标,请参阅使用网络拓扑监控网络配置

当前快照

当您查看当前时间时,网络拓扑图将显示前一个小时的小时快照。每次加载图时,网络拓扑都会显示最新的可用快照。

如需详细了解当前段内的每个组件及其数据,请参阅下表。

针对此组件 数据来自于此时间段 目前可用 示例
实体和连接 前一个小时 紧跟在每小时后1 如果当前时间是下午 01:19,则该图将直观呈现从零点到下午 01:00 进行通信的实体,但该图可能会发生变化。在下午 01:20,该图是固定的,不会发生变化。
叠加指标值 前一个小时2 当实体和连接可用时 如果当前时间是上午 10:37,且所选时间 指标为 Traffic,叠加值是平均值 上午 09:55 至 10:00。
时间序列图表 实时(包含您指定的时间范围内的历史数据)。默认时间范围显示过去一小时内每分钟的指标值。可用时间范围介于 1 hour6 weeks 之间3 一项活动后最多 7 分钟 如果当前时间是上午 10:37,并且您打开虚拟机的时间序列图表,则会看到从上午 09:37 到上午 10:37 这一小时内每分钟的指标值。

1 该图可能会在一小时结束后长达 20 分钟的时间内发生变化。
2 流量和数据包 损失指标使用所选小时的平均值,而延迟时间则使用 计算中位数。
3 聚合时间间隔(数据的采样频率)取决于时间范围。例如,1 hour 时间范围的聚合时间间隔为 1 分钟,而 1 day 时间范围的聚合时间间隔为 1 小时。

以往快照

查看以往快照时,如需详细了解每个组件及其数据,请参阅下表。

针对此组件 数据来自于此时间段 示例
实体和连接 从过去时间选择的 1 小时 前一天的上午 11:00 到中午 12:00
叠加指标值 所选小时1 如果您选择从上午 11:00 至 前一天中午 12:00,所选指标为 Traffic,叠加值是 上午 11:55 至中午 12:00 点。
时间序列图表 实时(包含您指定的时间范围内的历史数据)。默认时间范围显示过去一小时内每分钟的指标值。可用时间范围介于 1 hour6 weeks 之间2 如果您将时间序列图表的时间范围设置为 1 day,则该图表会使用 5 分钟的聚合时间间隔显示从当前时间到 24 小时前的指标值。

1流量和丢包率指标使用最后一小时的平均值,而延迟时间则使用中间值。
2 聚合时间间隔(数据的采样频率)取决于时间范围。例如,1 hour 时间范围的聚合时间间隔为 1 分钟,而 1 day 时间范围的聚合时间间隔为 1 小时。

后续步骤