借助流量分析器(预览版),您无需编写复杂的 SQL 查询来分析 VPC 流量日志,即可快速高效地了解 VPC 流量流。借助流量分析器,您可以执行具有 5 元组粒度(源 IP、目标 IP、源端口、目标端口和协议)的主观网络流量分析。
流量分析器是使用 Log Analytics 开发的,由 BigQuery 提供支持,可深入分析虚拟机实例的入站和出站流量。借助该工具,您可以监控、排查问题和优化网络部署,从而提高性能并增强安全性,从而帮助确保合规性并节省成本。
Flow Analyzer 会分析存储在日志存储桶中的 VPC 流日志数据(记录格式)。如需使用流量分析器,您必须选择一个包含 VPC 流日志的日志存储桶的项目。如需了解详情,请参阅 VPC 流日志概览。VPC 流日志可用于网络监控、取证、实时安全分析和费用优化。
流量分析器会对 VPC 流日志中包含的字段运行查询。如需了解详情,请参阅 VPC 流日志的关键属性。
借助 Flow Analyzer,您可以执行以下任务:
- 构建并运行针对 VPC 流日志的简单查询
- 为对 VPC 流日志的查询构建 SQL 过滤条件(使用 WHERE 语句)
- 使用所选字段整理结果,并使用总流量和汇总数据包对查询结果进行排序
- 查看所选时间间隔内的流量
- 以图形方式查看一段时间内与其他流量相比,流量最多的前五个流量流
- 以表格形式查看在所选时段内流量最高的资源
- 从查询结果中查看特定来源和目的地对之间的流量详细信息
- 使用 VPC 流日志中提供的其余字段对查询结果进行展开
工作原理
VPC 流日志会记录 VPC 资源(例如虚拟机实例和 Google Kubernetes Engine 节点)发送和接收的网络流样本。
您可以在 Cloud Logging 中查看流日志,并将其导出到 Logging 导出功能支持的任何目标位置。您可以使用 Log Analytics 运行用于分析日志数据的查询,然后以图表和表格形式显示查询结果。
流量分析器使用 Log Analytics 让您能够对 VPC 流日志运行查询,并通过提供最高数据流量图表和详细说明所有数据流的表格等信息,详细了解流量流向。
查询组件
如需分析和了解流量流向,您必须对 VPC 流日志运行查询。流量分析器可帮助您构建查询、自定义显示选项,以及展开细目以查看和监控流量流。
流量汇总
如需分析 VPC 流量,您必须确定汇总方法,以滤除资源之间的流量。流量分析器会按以下方式整理流量日志以进行汇总:
- 来源和目标:此选项使用 VPC 流日志中包含的 SRC 和 DEST 信息。此视图会汇总从来源到目的地的流量。
- 客户端和服务器:此选项会尝试查找连接的发起方。端口号较小的资源被视为服务器。它还会将具有 gke_service 定义的资源视为服务器,因为服务不会发起请求。此视图会汇总两个方向的流量。
时间范围选择器
默认时间范围为 1 小时,但您可以从预设时间选项中进行选择、指定自定义开始时间和结束时间,也可以使用时间范围选择器将时间范围以特定时间戳为中心。例如,如果您想查看过去一周的数据,请从时间范围选择器中选择过去 1 周。
您还可以使用时间范围选择器设置时区偏好设置。
基础过滤器
您可以通过按两个方向的资源整理数据流来构建查询。
如需使用过滤条件,请从列表中选择字段,然后为这些字段指定值。
您可以添加多个过滤表达式,对符合选定键值对的流进行过滤。如果您为同一字段选择多个过滤条件,系统会使用 OR 运算符。如果您为不同的字段选择过滤条件,系统会使用 AND 运算符。
例如,如果您选择“1.2.3.4
”和“10.20.10.30
”这两个 IP 地址值,以及“US
”和“France
”这两个国家/地区值,系统会将以下过滤逻辑应用于查询:
(IP=1.2.3.4
OR IP=10.20.10.30
) AND (Country=US
OR Country=France
)
如果您尝试修改端点过滤条件或更改流量选项,结果可能会有所不同。您必须再次运行查询才能查看更新后的结果。
如需使用基本过滤条件构建和运行查询,请参阅构建和运行查询。
SQL 过滤器
如需构建复杂的查询,您可以使用 SQL 过滤条件。使用复杂查询,您可以执行以下任务:
- 比较字段值
- 使用 AND/OR 和嵌套 OR 运算构建复杂的布尔逻辑
- 使用 BigQuery 函数对 IP 地址执行复杂操作
SQL 过滤条件查询使用 BigQuery SQL 语法。如需了解详情,请参阅 BigQuery SQL 语法。
如需查看过滤表达式语法和示例,请点击过滤表达式语法和示例。
如需使用 SQL 过滤条件构建和运行查询,请参阅构建和运行 SQL 查询。
查询结果
查询结果包含以下组件:
- “数据流量最高”图表:显示一段时间内流量最高的前五位以及其他流量。您可以使用此图表发现流量激增等趋势。
- “所有数据流”表:显示所选时段内汇总的热门流量(最多 10,000 行)。此表格会显示在定义查询过滤条件时选择用于整理数据流的字段。
显示选项
运行查询后,您可以使用各种显示选项进一步优化结果。图表和表格都会更新,以反映新选择的选项。如需选择自定义选项并运行查询,请参阅自定义显示选项。
指标类型
您可以选择查看以下指标类型之一。
已发送的字节数:包含有关载荷量的相关信息,不包含标头。此指标值可以为零,因为有些数据包只有标头,不包含任何载荷。
发送的数据包数:表示从来源发送到目的地的数据包数量。
对于这两种指标类型,您都可以选择其他指标汇总。
指标聚合
您可以通过以下方式查看指标汇总。
如果您选择发送的字节数作为指标,并选择来源和目的地作为流量汇总,则可以使用以下选项:
- 总流量:默认情况下,此维度始终处于启用状态,并显示所选时间段内的总流量。
- 平均流量速率:显示所选时间段的平均流量速率(以每秒字节数为单位),仅针对观察到流量的对齐时间段进行计算。如需了解详情,请参阅校准时间段。
- 中位数流量速率:显示所选时间段的中位数流量速率(以每秒字节数为单位),仅针对观察到流量的对齐周期进行计算。如需了解详情,请参阅校准时间段。
- P95 流量速率:显示所选时间段内第 95 个百分位的流量速率(以字节/秒为单位),仅针对观察到流量的对齐周期进行计算。如需了解详情,请参阅校准时间段。
- 最大流量速率:显示所选时间段内的最大流量速率(以每秒字节为单位)。
如果您选择发送的数据包数作为指标,并选择来源和目的地作为流量汇总,则可以使用以下选项:
- 汇总数据包:显示所选时间段内发送的数据包数量。默认处于启用状态。
- 平均数据包速率:显示所选时间段内的平均数据包速率,仅针对观察到流量的对齐周期计算。如需了解详情,请参阅校准时间段。
- 数据包速率中位数:显示所选时间段内的数据包速率中位数,仅针对观察到流量的对齐周期进行计算。如需了解详情,请参阅校准时间段。
- P95 数据包速率:显示所选时间段内的第 95 百分位数据包速率,仅针对观察到流量的对齐周期进行计算。如需了解详情,请参阅校准时间段。
- 数据包速率上限:显示所选时间段内的数据包速率上限。
校准时间段
您可以选择 5 秒到 1 天之间的时间范围,以查看图表中详细信息的时间范围。自动模式会根据所选期限的长度来选择最佳校准时间段。
时间轴上的每个数据点都代表特定时间段的汇总数据。此时间段的长度称为校准期。
随着对齐周期值的降低,性能会下降。校准时间段的值越高,图表的精细程度就越低。您可能无法查看值较高的短时峰值。
对于较长的时间段,较短的校准时间段没有帮助。例如,如果您选择 30 天的时间段,并将校准时间设置为 1 分钟,则流量分析器会生成超过 43,000 个数据点。由于这比 4K 显示屏像素多了 10 倍,因此您将无法查看所有详细信息,并且部分选项会在较长时间内处于停用状态。
如需详细了解如何执行采样以及如何确定校准时间段以显示查询结果,请参阅指标和校准时间段。
采样点
对于虚拟机到虚拟机网络通信,发送和接收流量的虚拟机都会提供流日志(应用了抽样)。如果两个端点虚拟机都在启用了 VPC 流日志的子网中,系统会报告同一流两次。您可以选择以下四种方法之一来确定哪些 VPC 流日志会贡献到计算的指标以及如何评估这些指标:
- 来源端点:在流的来源端点报告的已发送字节数或已发送数据包数
- 目标端点:在流的目标端点处报告的已发送字节数或已发送数据包数
- 来源和目标端点的汇总流量:流的两个端点报告的发送字节数或发送数据包数的总和
- 来源和目的地端点的平均值:如果 VPC 流日志中同时包含来源和目的地信息,则为流的两个端点报告的已发送字节数或已发送数据包数的平均值
流量去重
为防止在来源虚拟机和目标虚拟机中报告的流量被重复统计,您可以选择来源端点和目标端点的平均值采样选项。流量分析器会识别每个对齐周期内的等效流量,并计算报告的指标值(字节数和数据包数)的平均值。
对于在 SRC 和 DEST 同时报告等效流量的对齐周期,系统会将归因于给定对齐周期的所有流量除以 2。
查看流程详情
在所有数据流表格中,点击任何数据流的显示详细信息。系统随即会显示流程详情面板。此面板会提供来源、目标位置、流量和可能的展开选项等信息。
您可以使用额外字段拆分所选的流量,以便展开细目。例如,如果某个数据流包含有关从 Google Cloud 可用区 X 到可用区 Y 的 1,000 GiB 流量的一般详细信息,您可以使用其他字段(例如来源 IP 地址)进行展开细目。结果包括构成原始流的多个 IP 地址。
选择显示在展开式组件中的字段如下所示:
- 当您访问数据流详情时,Flow Analyzer 会运行多个查询。每个查询都会尝试使用 VPC 流日志中可用且原始查询中尚未使用的字段来展开所选流。例如,如果已执行的查询已包含 IP 地址详细信息,您无需再次使用此字段运行查询,也无法使用此字段展开细目。
- 如果任何其他查询返回单个字段值,即使之前未提取该值,系统也会将其添加到“来源和目的地详情”部分。
- 如果任何查询结果包含多个字段值,相应的字段会显示在展开列表中。
当您在展开式列表中选择某个字段时,展开式表格和图表会更新,以显示前三位流量数据流。
您还可以使用与过去的效果进行比较切换开关。选择此功能可查看六条线:三条实线代表细分后的前三位发言人,三条虚线代表相应颜色的过往流量。
如需使用更多字段对流量流进行展开细目,请参阅展开细目流量流。
在 Log Analytics 中探索
您可以在 Log Analytics 中查看原始 SQL 查询。
对于高级分析,您可以直接修改用于可视化流量的 SQL 代码。在 Log Analytics 中探索功能会将您定向至包含预先填充的查询的 Log Analytics 页面。