问题标签 [rook-storage]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
427 浏览

kubernetes - Rook ceph 在 Kubernetes 上坏了?

在本地 k8s 1.16 上使用 Ceph v1.14.10、Rook v1.3.8。在 10 天没有任何问题之后,我们决定排空一些节点,然后,所有移动的 pod 都无法再附加到它们的 PV,看起来 Ceph 集群坏了:

我的 ConfigMaprook-ceph-mon-endpoints引用了 2 个缺失的 mon pod IP:

这是正常的还是我必须运行一种“和解”任务来用新的 mon pod IP 更新 CM?

(可能与https://github.com/rook/rook/issues/2262有关)


我不得不手动更新:

  • 秘密车头配置
  • cm rook-ceph-mon-endpoints
  • cm rook-ceph-csi-config
0 投票
1 回答
166 浏览

kubernetes - 从磁盘恢复 Rook 集群

当从所有节点中删除所有 /var/lib/rook/ 目录时,有什么方法可以恢复数据?我已经恢复了我的集群,但 rook 没有拾取我原来的 Ceph 驱动器分区。

0 投票
1 回答
1691 浏览

kubernetes - 卷“rook-ceph-crash-collector-keyring”的 MountVolume.SetUp 失败:找不到秘密“rook-ceph-crash-collector-keyring”

我正在尝试使用 rook 在 kubernetes 集群上配置 ceph,我运行了以下命令:

我有三个带有附加卷的工作节点,并且在主节点上,除了三个节点的 rook-ceph-crashcollector pod 之外,所有创建的 pod 都在运行,当我描述这些 pod 时,我收到了这条消息

但是所有节点都在运行和工作

0 投票
1 回答
364 浏览

storage - 这个计算正确吗?(车复制)

如果 1 个 OSD 崩溃,rook-ceph 最终会尝试将丢失的数据复制到仍在工作的 OSD 上,还是等待所有 OSD 恢复健康?假设是这样,我可以解释我是如何计算的:

我开始为 kubernetes PVC 和 3 个 745 GB 的节点(总共 2.23 TB)预置 1.71 TB。Rook 的复制因子为 2 (RF=2)。

为了使复制工作,我需要 2 倍 1,71 TB(3,42 TB),所以我添加了 2 个节点,每个节点 745 GB(总共 3,72 TB)假设我使用了所有 1,71 TB 的预置。

如果我丢失了一个 OSD,我的 K8S 集群仍然运行,因为数据被复制了,但是当丢失的数据在仍然工作的 OSD 上被复制时,其他 OSD 可能会崩溃,因为假设 OSD 总是均匀分布(我知道这在很长一段时间内是不正确的)跑) :

  • 我的集群上有 290 GB 未使用空间(总共 3,72 - 3,42 PVC 配置)
  • 每个 OSD 58 GB (290 / 5)
  • 崩溃的 OSD 有 687 GB(总共 745 个磁盘 - 58 GB 未使用)
  • Ceph 尝试在剩余的每个 OSD 上复制 172 GB 缺失数据 (687/4)
  • 这太多了,因为我们只剩下 58 GB,这应该会导致 OSD 故障级联

如果我有 6 个节点而不是 5 个,我可以无限期地释放 1 个 OSD:

  • 新池为 4.5 TB (6x745)
  • 我在集群上有 1+ TB 可用空间(总共 4,5 - 3,42 PVC 配置)
  • 每个 OSD 166+ GB (~1 TB / 6)
  • 崩溃的 OSD 最大有 579+ GB 数据。(745 - 166)
  • Ceph 尝试在剩余的每个 OSD 上复制少于 100 GB 的缺失数据 (579 / 6)
  • 这小于每个 OSD 上的可用空间(166+ GB)所以复制再次工作只剩下 5 个节点但如果另一个 OSD 崩溃我注定要失败。

最初的假设是否正确?如果是这样,数学听起来对你吗?

0 投票
1 回答
2077 浏览

kubernetes - CephFS 无法附加或挂载卷:unmounted volumes=[image-store]

我无法在 cephfs 上启动和运行我的 Kube 注册表。我正在使用 rook 来设置这个集群。如您所见,我无法附加该卷。知道什么会导致这个问题吗?任何帮助表示赞赏。

kube-registry.yaml

Storagelas.yaml

kubectl 描述 pod --namespace=kube-system kube-registry-58659ff99b-j2b4d

ceph 配置程序日志,我重新启动了我的集群,所以名称会不同但输出是相同的

0 投票
1 回答
116 浏览

windows - Minikube 服务未显示

您好,我目前正在使用在 Windows 10 上运行的 minikube 设置 rook-cephfs 测试环境。到目前为止,我已经运行了 crds.yaml、common.yaml、operator.yaml 和 cluster-test.yaml。我按照https://github.com/kubernetes/kubernetes/tree/release-1.9/cluster/addons/registry上的指南设置存储。在本指南中,我创建了 ReplicationController 和服务。我遇到的问题是,当我运行 kubectl get svc 时,我看不到该服务。知道为什么它没有出现吗?谢谢

服务.yaml

Docker 注册表

0 投票
2 回答
222 浏览

kubernetes - 裸机上的 Rook ceph 块存储 - 如何从 pod 中导出文件?

我正在尝试研究如何从 ceph 块存储中传输文件,例如数据库备份。

我已经按照此处的示例进行操作: https ://github.com/rook/rook/blob/master/Documentation/ceph-block.md ,这样我就可以使用 Wordpress 和 mysql 了rook-ceph-block

然后如何从正在运行的 pod 传输文件。例如,如果我想将数据库备份下载到另一台主机上?

0 投票
1 回答
1119 浏览

kubernetes - RookIO AttachVolume.Attach 卷失败

我有 Kubernetes 1.18 和 rookio 设置,这个 pod 运行了一段时间。Ready由于某种原因,其中一个节点失去了状态。我重新启动了节点,现在它处于Ready状态。

但是 Pod 停留在ContainerCreating状态上。它正在等待安装 rookio PVC

吊舱状态

豆荚事件

PVC 附加状态设置为false

我尝试将 pod 移动到不同的节点,仍然是同样的问题。

PV和PVC状态

如何解决这个挂载问题?

谢谢

0 投票
0 回答
3118 浏览

ceph - pvc 卡在等待创建卷的等待中,无论是通过外部配置程序“rook-ceph.rbd.csi.ceph.com”还是手动创建

我使用 rook 构建了一个 ceph 集群。但是我的 pvc 卡在了待处理状态。当我使用 kubectl describe pvc 时,我发现了来自 persistentvolume-controller 的事件:

我所有的 pod 都处于运行状态:

这里是kubectl logs -n rook-ceph csi-cephfsplugin-provisioner-c68f789b8-dt4jf csi-provisioner

这是工具箱容器中的 ceph 状态:

我想是因为集群的health是health_err,但是我不知道怎么解决……我目前使用raw partitions来构建ceph集群:一个节点上的一个partition,另一个node上的两个partition。

我发现重启几次的pod很少,所以我检查了他们的日志。至于csi-rbdplugin-provisioner pod,在csi-resizer,csi attacher和csi-snapshotter容器中存在相同的错误:

,以及 csi-snapshotter 中的重复错误:

至于mgr pod,有一条重复记录:

mon pod 的名称是 at、av 和 aw 而不是 a、b 和 c 也很奇怪。似乎 mon pod 被删除和创建了好几次,但我不知道为什么。

感谢您的任何建议。

0 投票
0 回答
68 浏览

kubernetes - 计算机进入睡眠状态后,Rook Ceph 监视器和 osd 失败

我想我会发布一个在 K8s 上本地运行 Rook Ceph 的问题。我暂时不期待答案,但我认为这些信息可能有用。


环境:

  • 带有 MicroK8s 的 WSL2
  • 测试集群设置为 1 mon 和 osd 的 Rook Ceph
  • 为 OSD 挂载的 VHDX
  • /var/lib/rook/mon-{a,b,c}监视器的路径。

如何重现

  • 将具有上述设置的 rook-ceph 部署到您的 K8s 集群。
  • 在所有 pod 运行后,让您的机器进入睡眠状态。
  • 恢复机器并检查 rook-ceph 命名空间中的 pod
  • 看到 osd 是 missig 并检查监控日志是否有错误。

如何手动修复

  • 删除/var/rook/mon-{a,b,c}目录
  • 删除监控器
  • 删除 rook ceph operator pod
  • 一切都应该重新启动并再次工作

我希望这对某人有所帮助,我们会找到更好的解决方法。