Longhorn云原生容器分布式存储 -故障排除指针
发布时间:2021-10-20 13:18:00 所属栏目:应用 来源:互联网
导读:Longhorn 云原生容器分布式存储 - 故障排除指南 当 Longhorn 卷的文件系统损坏时,Longhorn 无法重新挂载该卷。因此,workload 无法重新启动。 目录 当 Longhorn 卷文件系统损坏时,Pod 卡在 creating 状态 非标准 Kubelet 目录 Longhorn 默认设置不保留 分
Longhorn 云原生容器分布式存储 - 故障排除指南
当 Longhorn 卷的文件系统损坏时,Longhorn 无法重新挂载该卷。因此,workload 无法重新启动。
目录
当 Longhorn 卷文件系统损坏时,Pod 卡在 creating 状态
非标准 Kubelet 目录
Longhorn 默认设置不保留
分离和附加卷后,Recurring job 不会创建新 job
使用 Traefik 2.x 作为 ingress controller
使用 cURL 创建 Support Bundle
Longhorn RWX 共享挂载所有权在 consumer Pod 中显示为 nobody
由于节点上的多路径,MountVolume.SetUp for volume 失败
Longhorn-UI:WebSocket 握手期间出错:意外响应代码:200 #2265
Longhorn 卷需要很长时间才能完成安装
volume readonly or I/O error
volume pvc-xxx not scheduled
1. 当 Longhorn 卷文件系统损坏时,Pod 卡在 creating 状态
适用版本
所有 Longhorn 版本。
症状
Pod 停留在容器 Creating 中,日志中有错误。
Warning FailedMount 30s (x7 over 63s) kubelet MountVolume.SetUp failed for volume "pvc-bb8582d5-eaa4-479a-b4bf-328d1ef1785d" : rpc error: code = Internal desc = 'fsck' found errors on device /dev/longhorn/pvc-bb8582d5-eaa4-479a-b4bf-328d1ef1785d but could not correct them: fsck from util-linux 2.31.1
ext2fs_check_if_mount: Can't check if filesystem is mounted due to missing mtab file while determining whether /dev/longhorn/pvc-bb8582d5-eaa4-479a-b4bf-328d1ef1785d is mounted.
/dev/longhorn/pvc-bb8582d5-eaa4-479a-b4bf-328d1ef1785d contains a file system with errors, check forced.
/dev/longhorn/pvc-bb8582d5-eaa4-479a-b4bf-328d1ef1785d: Inodes that were part of a corrupted orphan linked list found.
/dev/longhorn/pvc-bb8582d5-eaa4-479a-b4bf-328d1ef1785d: UNEXPECTED INCONSISTENCY; RUN fsck MANUALLY.
(i.e., without -a or -p options)
原因
当 Longhorn 卷的文件系统损坏时,Longhorn 无法重新挂载该卷。因此,workload 无法重新启动。
Longhorn 无法自动修复此问题。发生这种情况时,您需要手动解决此问题。
解决方案
寻找迹象:
如果卷未处于 error 状态,则 Longhorn 卷内的文件系统可能因外部原因而损坏。
从 Longhorn UI 检查卷是否处于 error 状态。
检查 Longhorn 管理器 pod 日志以了解系统损坏错误消息。
缩减 workload。
从 UI 将卷附加到任何一个 node。
SSH 进入 node。
在 /dev/longhorn/ 下找到 Longhorn 卷对应的块设备。
运行 fsck 来修复文件系统。
从 UI 分离卷。
扩大 workload。
2. 非标准 Kubelet 目录
适用版本
所有 Longhorn 版本。
症状
当 Kubernetes 集群使用非标准的 Kubelet 目录时,longhorn-csi-plugin 无法启动。
原因
由于 Longhorn 无法检测到 Kubelet 的根目录设置在哪里。
解决方案
Longhorn 通过 longhorn.yaml 安装:
取消注释并编辑:
#- name: KUBELET_ROOT_DIR
# value: /var/lib/rancher/k3s/agent/kubelet
Longhorn 通过 Rancher - App 安装:
点击 Customize Default Settings 设置 Kubelet 根目录
相关信息
Longhorn issue:
https://github.com/longhorn/longhorn/issues/2537
更多信息可以在 OS/Distro 特定配置 下的故障排除部分找到。
(编辑:通辽站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |