如果在客户端虚拟机或实例上装载或连接到 Managed Lustre 文件系统时遇到问题,请按照以下步骤诊断问题。
验证 Managed Lustre 实例是否可访问
首先,确保您的客户端实例可以访问您的 Managed Lustre 实例:
sudo lctl ping IP_ADDRESS@tcp
如需获取 IP_ADDRESS 的值,请参阅 获取实例。
成功的 ping 会返回类似于以下内容的响应:
12345-0@lo
12345-10.115.0.3@tcp
失败的 ping 会返回以下内容:
failed to ping 10.115.0.3@tcp: Input/output error
如果 ping 失败,请执行以下操作:
确保您的 Managed Lustre 实例和客户端实例位于同一 VPC 网络中。比较以下命令的输出:
gcloud compute instances describe VM_NAME \ --zone=VM_ZONE \ --format='get(networkInterfaces[0].network)' gcloud lustre instances describe INSTANCE_NAME \ --location=ZONE --format='get(network)'输出如下所示:
https://www.googleapis.com/compute/v1/projects/my-project/global/networks/my-network projects/my-project/global/networks/my-networkgcloud compute instances describe命令的输出以https://www.googleapis.com/compute/v1/为前缀;该字符串后面的所有内容都必须与gcloud lustre instances describe命令的输出匹配。检查 VPC 网络的防火墙规则和路由配置,确保它们允许客户端实例和 Managed Lustre 实例之间的流量。
检查 LNet 接受端口(旧版实例)
虽然 --gke-support-enabled 标志已废弃,并且在创建新的 Managed Lustre 实例时不再需要,但您可能拥有使用此标志创建的现有旧版实例。
如果您要连接到启用了 GKE 支持的旧版实例,则必须在所有客户端 Compute Engine 实例上配置 LNet 以使用 accept_port 6988。请参阅
为 gke-support-enabled 实例配置 LNet。
如需确定现有实例是否使用此旧版标志进行了配置,请运行以下命令:
gcloud lustre instances describe INSTANCE_NAME \
--location=LOCATION | grep gkeSupportEnabled
如果该命令返回 gkeSupportEnabled: true,则必须在客户端虚拟机上配置 LNet。
Ubuntu 内核版本与 Lustre 客户端不匹配
对于运行 Ubuntu 的 Compute Engine 实例,Ubuntu 内核版本必须与 Lustre 客户端软件包的特定版本匹配。如果 Lustre 客户端工具失败,请检查您的 Compute Engine 实例是否已自动升级到较新的内核。
如需检查内核版本,请执行以下操作:
uname -r
响应如下所示:
6.8.0-1029-gcp
如需检查 Lustre 客户端软件包版本,请执行以下操作:
dpkg -l | grep -i lustre
响应如下所示:
ii lustre-client-modules-6.8.0-1029-gcp 2.14.0-ddn198-1 amd64 Lustre Linux kernel module (kernel 6.8.0-1029-gcp)
ii lustre-client-utils 2.14.0-ddn198-1 amd64 Userspace utilities for the Lustre filesystem (client)
如果这两个命令列出的内核版本不匹配, 您必须 重新安装 Lustre 客户端软件包。
检查 dmesg 中的 Lustre 错误
许多 Lustre 警告和错误都会记录到 Linux 内核环形缓冲区中。dmesg 命令会输出内核环形缓冲区。
如需搜索特定于 Lustre 的消息,请结合使用 grep 和 dmesg:
dmesg | grep -i lustre
或者,如需查找可能相关的更一般的错误,请执行以下操作:
dmesg | grep -i error
在多 NIC 虚拟机上装载 Lustre 失败
当虚拟机具有多个网络接口控制器 (NIC),并且 Managed Lustre 实例位于连接到辅助 NIC(例如 eth1)的 VPC 上时,装载该实例可能会失败。如需解决此问题,
请按照说明使用辅助 NIC 进行装载。
无法从 172.17.0.0/16 子网范围进行连接
IP 地址在 172.17.0.0/16 子网范围内的 Compute Engine 和 GKE 客户端无法装载 Managed Lustre 实例。
无法从对等互连的项目访问 Managed Lustre
如需从对等互连的 VPC 网络中的虚拟机访问 Managed Lustre 实例,您必须使用 Network Connectivity Center (NCC)。借助 NCC,您可以将多个 VPC 网络和本地网络连接到中央 hub,从而在它们之间提供连接。
如需了解如何设置 NCC,请参阅 Network Connectivity Center 文档。
在安全强化型虚拟机(安全启动)上装载失败
Managed Lustre 无法装载在
安全强化型虚拟机上。尝试在安全启动环境中加载
Lustre 内核模块会失败,并显示以下错误:
ERROR: could not insert 'lustre': Required key not available.
支持请求中要包含的信息
如果您无法解决装载失败问题,请先收集诊断信息,然后再创建支持请求。
运行 sosreport: 此实用程序会收集系统日志和配置信息,并生成压缩的 tarball:
sudo sosreport
将 sosreport 归档和 dmesg 中的任何相关输出附加到您的支持请求。