如何在 kubernetes 中将 mke2fs 映像文件挂载为卷?

如何在 kubernetes 中将 mke2fs 映像文件挂载为卷?

我是 k8s 的新手,但一直在探索持久卷,实际限制容量的能力仅处于 alpha 阶段,需要按照以下方式手动启用才能工作:https://kubernetes.io/docs/concepts/storage/storage-capacity/#enabling-storage-capacity-tracking

我更愿意构建一个磁盘映像文件,例如:

fallocate -l 50M mytest.img
mke2fs -t ext4 mytest.img

然后将其作为卷挂载到 k8s 中的 pod 中,但我不确定如何操作。我尝试使用 hostPath,但在尝试作为文件和目录类型时失败。考虑到过多的卷挂载类型,希望我只是缺少正确的命令。

我知道我可以将图像挂载到主机上的某个位置,然后将 hostPath 指向该挂载点,但不需要主机挂载。

编辑:如果这不可能,有人可以建议一种替代的图像文件类型,以便我可以创建一个可在 k8s 中安装的有限(但可扩展)的文件?

答案1

这是社区 wiki 答案,总结了此问题的当前状态和解决方法。发布以提高可见性。请随意编辑和扩展它。

正式启用存储容量跟踪仍然处于它的 aplha 状态:

存储容量跟踪是一项 alpha 功能,仅当CSIStorageCapacity 特性门控storage.k8s.io/v1alpha1API 组均已启用。有关详细信息,请参阅--feature-gates--runtime-config kube-apiserver 参数

弹性卷已被弃用。

当前的解决方法是使用长角牛

Longhorn 是 Kubernetes 的分布式块存储系统。Longhorn 是云原生存储,因为它是使用 Kubernetes 和容器原语构建的。

相关内容