故障排除
DirectPV 在我的 Kubernetes 中安装失败。为什么?
您需要拥有执行安装的必要权限和许可。请参阅规范文档。对于 Red Hat OpenShift,请参阅OpenShift 特定文档。
将 DirectPV 升级到 v4.x.x 后,我找不到 `direct-csi-min-io` 存储类。为什么?
旧版 DirectCSI 已弃用,包括存储类 `direct-csi-min-io`,并且不再受支持。之前创建的卷将继续正常工作。对于新的卷请求,请使用 `directpv-min-io` 存储类。
DirectPV 安装失败,并显示类似 错误;无法获取旧版驱动器;direct.csi.min.io/v1beta3 的转换 Webhook,... 或类似的错误消息。为什么?
安装 DirectPV 也会尝试升级旧版 DirectCSI。升级低于 v3.1.0 的 DirectCSI 需要 转换 Webhook 服务运行。有关合适的升级流程,请参阅 升级文档。
discover
命令的 YAML 输出中,我没有找到我的存储驱动器。为什么?
在 DirectPV 会忽略满足以下任何条件的驱动器
- 驱动器的大小小于 512MiB。
- 驱动器被隐藏。
- 驱动器为只读。
- 驱动器已分区。
- 驱动器被其他设备占用。
- 驱动器已挂载或已被 DirectPV 使用。
- 驱动器是正在使用的交换分区。
- 驱动器是 CDROM。
检查 discover --all
命令输出的最后一列,以查看哪些条件排除了驱动器。解决这些条件并重试。
您是否支持 SAN、NAS、iSCSI、网络驱动器等?
DirectPV 适用于具有直接连接存储的高性能本地卷。我们不建议使用任何远程驱动器,因为远程驱动器可能会导致性能下降。
您是否支持 LVM、Linux RAID、硬件 RAID、软件 RAID 或类似功能?
它可以工作,但我们强烈建议使用原始设备以获得更好的性能。
是否支持 LUKS 设备?
是的
我已经使用本地持久卷 (Local PV) 进行存储。为什么我需要 DirectPV?
本地持久卷是短暂的,并且与 Pod 的生命周期绑定。当 Pod 重启或删除时,这些卷将丢失,这可能导致数据丢失。
此外,本地持久卷的生命周期需要管理技能。DirectPV 按需动态配置持久卷,这些卷在 Pod/节点重启后仍然存在。DirectPV 卷的生命周期由关联的持久卷声明 (PVC) 管理,从而简化了卷管理。
未找到驱动器...
错误消息。为什么?
我在持久卷声明中看到 下表列出了可能的原因和解决方案。
原因 | 解决方案 |
---|---|
在没有将任何驱动器添加到 DirectPV 的情况下创建了卷声明。 | 添加驱动器。 |
没有驱动器有足够的可用空间来满足请求的大小。 | 添加新的驱动器或删除过时的卷。 |
未满足请求的拓扑。 | 修改持久卷声明。 |
在请求的节点上找不到请求的驱动器。 | 修改持久卷声明。 |
请求的节点不是 DirectPV 节点。 | 修改持久卷声明。 |
我看到持久卷声明已创建,但相应的 DirectPV 卷未创建。为什么?
DirectPV 带有 WaitForFirstConsumer 卷绑定模式。这意味着必须首先调度一个 Pod 来使用该卷。
Pending
状态。为什么?
我看到使用卷的 Pod 仍然处于 - 如果您尚未创建相应的持久卷声明,请创建它。
- 您可能遇到 Kubernetes 调度问题。请参阅 Kubernetes 文档 关于调度的部分
卷 XXXXX 尚未分段,但请求时出现 YYYYY
错误。为什么?
我看到 根据 CSI 规范,Kubelet
应该首先调用 StageVolume
RPC,然后调用 PublishVolume
RPC。在极少数情况下,StageVolume
RPC 未触发/调用,但 PublishVolume
RPC 已调用。重新启动您的 Kubelet 并将此问题报告给您的 Kubernetes 提供商。
udev
错误。为什么?
我看到 您可能很少看到 udev
错误
unable to find device by FSUUID xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx; either device is removed or run command `sudo udevadm control --reload-rules && sudo udevadm trigger` on the host to reload
在极少数情况下,系统中的 Udev
错过了更新 /dev
目录。运行以下命令以更新和重新加载 udev
,然后将此问题报告给您的操作系统供应商。
sudo udevadm control --reload-rules && sudo udevadm trigger