Cloud Monitoring 会自动收集和存储有关 Managed Lustre 实例的信息。
本文档详细介绍了可用于监控 Managed Lustre 的指标。 Google Cloud这些指标可帮助您了解 Managed Lustre 文件系统的性能、容量和运行状况,以便您发现瓶颈、排查问题并优化资源利用率。
您可以在 Cloud Monitoring 中使用这些指标来创建自定义信息中心、设置提醒,并深入了解 Managed Lustre 实例的行为。
系统会自动为 Managed Lustre 启用 Cloud Monitoring。 您可以免费收集数据或在 Google Cloud 控制台中查看指标。API 调用可能会产生费用;如需了解价格详情,请参阅 Cloud Monitoring 价格。
所需 IAM 角色
需要以下角色:
- Monitoring Viewer (
roles/monitoring.viewer) 或等效权限,用于在 Cloud Monitoring 中查看指标。 - Monitoring Editor (
roles/monitoring.editor) 或等效权限,用于配置提醒。
了解如何授予 IAM 角色。
查看指标
控制台中的两个位置提供了 Cloud Monitoring 指标:Google Cloud
Managed Lustre 实例详情页面会显示可用指标。除了此页面上列出的指标之外,该页面还计算所复制字节的带宽和所复制对象的速率。
Cloud Monitoring 页面提供了多种图表选项和自定义设置。
在实例详情页面上查看指标
如需查看特定实例的指标,请执行以下操作:
前往实例页面,在 Google Cloud 控制台中。
点击要查看其指标的实例。系统会显示实例详情 页面。
点击监控 标签。系统会显示默认信息中心。
在 Cloud Monitoring 中查看指标
如需在 Cloud Monitoring 中查看 Managed Lustre 指标,请执行以下操作:
前往Metrics Explorer页面,在 Google Cloud 控制台中。
按照 使用 Metrics Explorer 创建图表中的说明 选择和显示指标。
设置提醒
您可以在 Cloud Monitoring 中配置提醒政策,以便在 Managed Lustre 文件系统满足特定条件(例如超出存储容量或吞吐量限制)时收到通知。
前提条件
如需创建提醒政策,您必须拥有项目的 Monitoring Editor (roles/monitoring.editor) IAM 角色。
创建提醒政策
如需设置提醒,请使用指标或 PromQL 查询定义条件,并配置通知渠道。
在 Google Cloud 控制台中,前往控制台中的提醒页面。 Google Cloud
点击 + 创建政策。
选择构建器 并选择您的指标,或选择代码编辑器 以 使用 PromQL 输入查询。在指标选择器中,Managed Lustre 指标位于 Lustre 实例 和 Lustre 位置 资源下。
配置触发器逻辑,并定义您的 通知渠道和 通知设置。
点击创建政策 。
如需详细了解如何创建触发器和其他选项,请参阅:
示例:创建存储容量提醒
以下示例演示了如何创建在 Managed Lustre 实例超出其预配容量的 80% 时触发的提醒。
在 Google Cloud 控制台中,前往控制台中的提醒页面。 Google Cloud
点击 + 创建政策。
选择代码编辑器 。
在查询编辑器中,粘贴以下 PromQL 查询:
( sum by (instance_id, location) (lustre_googleapis_com:instance_capacity_bytes) - sum by (instance_id, location) (lustre_googleapis_com:instance_available_bytes) ) / sum by (instance_id, location) (lustre_googleapis_com:instance_capacity_bytes) > 0.8此查询计算所有实例的使用率:
(Total - Available) / Total。值0.8表示总字节数达到 80% 的使用率。如需在 90% 时发出提醒,请将此值更改为0.9。点击运行查询 以验证语法并查看当前使用率的图表。
点击下一步 ,并将触发器配置为任何时序违规 。
点击下一步 。在文档 部分,添加解决容量问题的建议操作。例如:
## Action Required: Lustre Capacity Warning The Managed Lustre instance is exceeding 80% capacity usage. **Metric:** Usage Ratio > 0.8 **Severity:** Warning **Recommended Actions:** 1. Check the instance details in the Google Cloud console. 2. Verify if this is expected data growth or a runaway process. 3. If valid, consider expanding the storage capacity of the instance or deleting old data to free up space. 4. Failure to address this may result in "No Space Left on Device" errors for client applications.
使用 gcloud 创建提醒政策
您可以使用 Google Cloud CLI 创建提醒政策。请注意,您 必须稍后在 Google Cloud 控制台中修改提醒,才能启用特定的 通知渠道。
以下示例使用 gcloud 创建 80% 容量提醒:
gcloud monitoring policies create \
--policy-from-file=/dev/stdin <<EOF
{
"displayName": "Lustre High Capacity Usage (>80%)",
"severity": "WARNING",
"combiner": "OR",
"conditions": [
{
"displayName": "Capacity Usage Ratio > 0.8",
"conditionPrometheusQueryLanguage": {
"query": "(sum by (instance_id, location) (lustre_googleapis_com:instance_capacity_bytes) - sum by (instance_id, location) (lustre_googleapis_com:instance_available_bytes)) / sum by (instance_id, location) (lustre_googleapis_com:instance_capacity_bytes) > 0.8",
"duration": "300s",
"evaluationInterval": "60s",
"alertRule": "AlwaysOn"
}
}
],
"documentation": {
"content": "Action Required: The Managed Lustre instance is exceeding 80% capacity usage. Please verify if storage expansion is required.",
"mimeType": "text/markdown"
}
}
EOF
指标详细信息
Managed Lustre 指标会附加到以下受监控的资源类型:
lustre.googleapis.com/Instancelustre.googleapis.com/Joblustre.googleapis.com/QuotaEntity
系统每 60 秒对数据进行一次采样。采样后,数据在最长 180 秒的时间内可能不会显示。
存储容量指标
与 Lustre 文件系统上可用和预配的存储空间相关的指标。
对于指标标签,target 的值采用
<fsname>-<TYPE><HEXA> 格式,其中 <HEXA> 是目标
在十六进制中的从零开始的索引。例如,如果您的文件系统名称为 filesys,则第
43 个 OST 为 filesys-OST002a,第 4 个 MDT 为 filesys-MDT0003。
存储容量指标会附加到 lustre.googleapis.com/Instance
资源。
| 指标 | 说明 | 详细信息 |
|---|---|---|
available_bytes |
给定对象存储目标 (OST) 或元数据目标 (MDT) 的存储空间字节数,非根用户可以使用这些字节。 | 显示名: 可用字节数 指标种类: GAUGE 值类型: INT64 单位: 字节 标签: component:目标类型:ost、
mdt 或 mgt。target:目标的名称。 |
capacity_bytes |
为给定目标预配的字节数。实例的总集群可用数据或元数据空间可以通过将给定类型的所有目标的容量相加来获得。 | 显示名: 容量字节数 指标种类: GAUGE 值类型: INT64 单位: 字节 标签: component:目标类型:ost、
mdt 或 mgt。target:目标的名称。 |
free_bytes |
给定 OST 或 MDT 的存储空间字节数,根用户可以使用这些字节。 | 显示名: 可用字节数 指标种类: GAUGE 值类型: INT64 单位: 字节 标签: component:目标类型:ost、
mdt 或 mgt。target:目标的名称。 |
Inode(对象)指标
与可用 inode(对象)数量和容量上限相关的指标。
Inode 指标会附加到 lustre.googleapis.com/Instance
资源。
| 指标 | 说明 | 详细信息 |
|---|---|---|
inodes_free |
给定目标上可用的 inode(对象)数量。 | 显示名: 可用 inode 指标种类: GAUGE 值类型: INT64 单位: inode 标签: component:目标类型。target:目标的名称。 |
inodes_maximum |
目标可以容纳的 inode(对象)数量上限。 | 显示名: inode 上限 指标种类: GAUGE 值类型: INT64 单位: inode 标签: component:目标类型。target:目标的名称。 |
I/O 性能指标
提供数据传输速率和操作延迟时间的指标。
I/O 性能指标会附加到 lustre.googleapis.com/Instance
资源。
| 指标 | 说明 | 详细信息 |
|---|---|---|
io_time_milliseconds_total |
延迟时间在分桶延迟时间范围内的读取或写入操作数。 | 显示名: 操作延迟时间 指标种类: CUMULATIVE 值类型: INT64 单位: 操作 标签: component:目标类型。operation:操作类型。size:分桶延迟时间范围。例如,512
包括耗时介于 512 毫秒和 1024
毫秒之间的操作数。target:目标的名称。
|
read_bytes_total |
从给定 OST 读取的数据字节数。 | 显示名称: 数据读取字节数 指标种类: CUMULATIVE 值类型: INT64 单位: 字节 标签: component:目标类型:始终为 ost。operation:操作类型:read。target:目标的名称。 |
read_samples_total |
对给定 OST 执行的读取操作数。 | 显示名称: 数据读取操作数 指标种类: CUMULATIVE 值类型: INT64 单位: 操作 标签: component:目标类型:始终为 ost。operation:操作类型:read。target:目标的名称。 |
write_bytes_total |
写入到给定 OST 的数据字节数。 | 显示名: 数据写入字节数 指标种类: CUMULATIVE 值类型: INT64 单位: 字节 标签: component:目标类型:始终为 ost。operation:操作类型:write。target:目标的名称。 |
write_samples_total |
对给定 OST 执行的写入操作数。 | 显示名: 数据写入操作数 指标种类: CUMULATIVE 值类型: INT64 单位: 操作 标签: component:目标类型:始终为 ost。operation:操作类型:write。target:目标的名称。 |
客户端连接指标
专门用于了解客户端连接的指标。
客户端连接指标会附加到 lustre.googleapis.com/Instance
资源。
| 指标 | 说明 | 详细信息 |
|---|---|---|
connected_clients |
当前连接到给定 MDT 的客户端数量。 | 显示名: 已连接的客户端 指标种类: GAUGE 值类型: INT64 单位: 客户端 标签: component:目标类型。此值始终为
mdt。target:MDT 的名称。 |
文件系统配额指标
借助文件系统配额指标,您可以监控特定用户、群组和项目的存储空间和 inode 使用情况。使用这些指标跟踪当前 使用量与 文件系统上配置的 软限制和硬限制的对比情况。
文件系统配额指标与
lustre.googleapis.com/QuotaEntity受监控
的资源相关联。
| 指标 | 说明 | 详细信息 |
|---|---|---|
used_bytes |
用户、群组或 项目当前使用的总字节数。 | 显示名: 配额使用字节数 指标种类: GAUGE 值类型: INT64 单位: 字节 标签: accounting_type:user、
group 或 project 之一。id:用户、群组或项目的数字 ID。target:Lustre 目标设备的名称。
|
soft_limit_bytes |
触发宽限期的存储空间使用阈值。如果在 宽限期结束后使用量仍高于此限制,则此 限制将成为强制执行的硬限制。 | 显示名: 配额软限制字节数 指标种类: GAUGE 值类型: INT64 单位: 字节 标签: accounting_type:user、
group 或 project 之一。id:用户、群组或项目的数字 ID。target:Lustre 目标设备的名称。 |
hard_limit_bytes |
用户、群组或项目允许的最大存储空间使用量。 超出此限制的写入操作将被拒绝。 | 显示名: 配额硬限制字节数 指标种类: GAUGE 值类型: INT64 单位: 字节 标签: accounting_type:user、
group 或 project 之一。id:用户、群组或项目的数字 ID。target:Lustre 目标设备的名称。 |
used_inodes |
用户、群组或项目当前使用的 inode(文件记录)总数。 | 显示名: 配额使用 inode 指标种类: GAUGE 值类型: INT64 单位: 计数 标签: accounting_type:user、
group 或 project 之一。id:用户、群组或项目的数字 ID。target:Lustre 目标设备的名称。 |
soft_limit_inodes |
触发宽限期的 inode 使用阈值。如果在宽限期结束后使用量 仍高于此限制,则此限制将成为强制执行的 硬限制。 | 显示名: 配额软限制 inode 指标种类: GAUGE 值类型: INT64 单位: 计数 标签: accounting_type:`user`、`group` 或 `project` 之一。id:用户、群组或项目的数字 ID。target:Lustre 目标设备的名称。 |
hard_limit_inodes |
用户、群组或项目允许的最大 inode 数。 超出此限制的文件创建操作将被拒绝。 | 显示名: 配额硬限制 inode 指标种类: GAUGE 值类型: INT64 单位: 计数 标签: accounting_type:user、
group 或 project 之一。id:用户、群组或项目的数字 ID。target:Lustre 目标设备的名称。 |
Jobstats 指标
根据客户端上的配置,提供每个 JobID 的读取、写入和元数据统计信息的指标。
如需收集这些指标,请使用 lctl 在 Lustre 客户端上配置 jobid_var 参数。如需了解详情,请参阅
Lustre Jobstats。
如需将客户端配置为报告特定标识符(例如
procname_uid),请使用 lctl set_param jobid_var 命令:
lctl set_param jobid_var=procname_uid
Jobstats 指标会附加到 lustre.googleapis.com/Job
资源。
| 指标 | 说明 | 详细信息 |
|---|---|---|
read_bytes_total |
作业读取的总字节数。 |
显示名称: 作业读取的数据字节数 指标种类: CUMULATIVE 值类型: INT64 单位: 字节 标签: job_id:客户端发送的 JobID。component:目标类型。target:目标的名称。instance_id:Managed Lustre 实例的 ID。
|
write_bytes_total |
作业写入的总字节数。 |
显示名: 作业写入的数据字节数 指标种类: CUMULATIVE 值类型: INT64 单位: 字节 标签: job_id:客户端发送的 JobID。component:目标类型。target:目标的名称。instance_id:Managed Lustre 实例的 ID。
|
metadata_operations_total |
作业执行的元数据操作总数。 |
显示名: 作业执行的元数据操作数 指标种类: CUMULATIVE 值类型: INT64 单位: 操作 标签: job_id:客户端发送的 JobID。component:目标类型。target:目标的名称。instance_id:Managed Lustre 实例的 ID。
|
read_samples_total |
作业执行的读取操作总数。 |
显示名称: 作业读取的数据操作数 指标种类: CUMULATIVE 值类型: INT64 单位: 操作 标签: job_id:客户端发送的 JobID。component:目标类型。target:目标的名称。instance_id:Managed Lustre 实例的 ID。
|
write_samples_total |
作业执行的写入操作总数。 |
显示名: 作业写入的数据操作数 指标种类: CUMULATIVE 值类型: INT64 单位: 操作 标签: job_id:客户端发送的 JobID。component:目标类型。target:目标的名称。instance_id:Managed Lustre 实例的 ID。
|
read_maximum_size_bytes |
作业读取操作的最大大小(以字节为单位)。 |
显示名称: 作业读取的数据大小上限 指标种类: GAUGE 值类型: INT64 单位: 字节 标签: job_id:客户端发送的 JobID。component:目标类型。target:目标的名称。instance_id:Managed Lustre 实例的 ID。
|
read_minimum_size_bytes |
作业读取操作的最小大小(以字节为单位)。 |
显示名称: 作业读取的数据大小下限 指标种类: GAUGE 值类型: INT64 单位: 字节 标签: job_id:客户端发送的 JobID。component:目标类型。target:目标的名称。instance_id:Managed Lustre 实例的 ID。
|
write_maximum_size_bytes |
作业写入操作的最大大小(以字节为单位)。 |
显示名: 作业写入的数据大小上限 指标种类: GAUGE 值类型: INT64 单位: 字节 标签: job_id:客户端发送的 JobID。component:目标类型。target:目标的名称。instance_id:Managed Lustre 实例的 ID。
|
write_minimum_size_bytes |
作业写入操作的最小大小(以字节为单位)。 |
显示名: 作业写入的数据大小下限 指标种类: GAUGE 值类型: INT64 单位: 字节 标签: job_id:客户端发送的 JobID。component:目标类型。target:目标的名称。instance_id:Managed Lustre 实例的 ID。
|