K8s 使用传统的 Ceph(非 rook-ceph)的 rbd 请教

2021-06-10 21:22:31 +08:00
 hijoker
  1. 踩中这个坑failed to create rbd image: executable file not found in $PATH, command output,解决方法是把k8s.gcr.io/kube-controller-manager镜像替换为gcr.io/google_containers/hyperkube

  2. 把 K8s 环境 reset 了,使用 kubeadm init 的时候咋指定这个单个镜像啊

  3. 上面第一步还有啥别的方法不?好像什么 Ceph-csi 也可以,有搞过的老哥没?

2496 次点击
所在节点    Kubernetes
16 条回复
hijoker
2021-06-10 22:11:22 +08:00
新坑来了,移除支持了[deprecate and remove hyperkube support in kubeadm]( https://github.com/kubernetes/kubeadm/issues/1889)
hijoker
2021-06-10 23:24:33 +08:00
在比较新的 K8s 环境:v1.20 上,也会报 failed to create rbd image: executable file not found in $PATH, command output 这个错。。
wandehul
2021-06-11 00:06:54 +08:00
可能是因为 controller manager 没有装 rbd 这个命令,可以自己进去自己进去安装。这个坑我之前踩过,看一下我之前的记录。我记得现在的新版本貌似没有这个问题了 。
https://github.com/king131/kubernetes/blob/master/kubeadm/20.3-Kubernetes%20%E7%8E%AF%E5%A2%83%E4%B8%8B%E4%BD%BF%E7%94%A8%20Ceph%20%E5%81%9A%E6%8C%81%E4%B9%85%E5%8C%96%E5%AD%98%E5%82%A8%E7%9A%84%E9%97%AE%E9%A2%98%20.md
wellsc
2021-06-11 00:32:23 +08:00
这么猛吗,生产环境敢用 k8s 搞 ceph
hijoker
2021-06-11 00:51:39 +08:00
@wandehul 不,v1.20 都还有这个问题,大哥,你是咋进入 controller-manager 的,kubectl exec -it pod-controller-manager -- sh, -- /bin/bash 都不行啊
hijoker
2021-06-11 00:52:45 +08:00
@wellsc sb 客户要搞,最开始用的 rook-ceph,要交付了,特么的说要用的是传统的非 K8s 环境的 ceph 。。。。。
superchijinpeng
2021-06-11 07:41:18 +08:00
3. node 节点安装 ceph-common 这个包就可以了
superchijinpeng
2021-06-11 07:43:14 +08:00
上家公司 Jupyter Lab 存储用的 Ceph RBD,这个坑就是这样解决的,注意版本不要 1.10 最好 1.12+,否则会出现 mount 超时
plko345
2021-06-11 08:30:35 +08:00
@wellsc 有什么风险,正想这么搞
hijoker
2021-06-11 09:02:32 +08:00
@superchijinpeng 不行,这个环境是 kubeadm 容器化安装的,在 node 上安装 ceph-common 这个包没用,应该是 controller-manager 这个组件的镜像里面没有打相关的工具早成的
xin053
2021-06-11 09:27:27 +08:00
jingslunt
2021-06-11 09:32:58 +08:00
wandehul
2021-06-11 12:18:16 +08:00
@hijoker 要+ namespace
hijoker
2021-06-11 12:31:01 +08:00
@wandehul 哦,失误了,谢谢
hijoker
2021-06-11 12:31:39 +08:00
@xin053 @jingslunt 另一个同事在搞 csi,看看能不能多搞几套方案,给 SB 客户
Judoon
2021-06-11 14:42:12 +08:00
推荐 ceph-csi,现在 csi 已经算好用了,不像一两年前。现在可以动态扩容 pvc,创建 snapshot 等等
主要这样的架构更符合 k8s 设计规范,维护更新也方便。
你用旧的方式,似乎没有动态扩容等功能,再者文档过时,你交给客户的话,出问题维护难度变大

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/782747

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX