我有一个专有的文件系统,我想用它来为我的 K8S pod 提供文件存储。我目前正在运行 K8S v1.5.1,但如果需要,可以升级到 1.6。
我想利用动态配置,以便根据需要创建卷。我浏览了 kubernetes.io 上的官方文档,这是我目前所理解的:
- 我需要为我的专有文件系统编写一个 Kubernetes 自定义卷插件。
- 我需要创建一个 StorageClass,它使用从我的专有文件系统提供卷的供应商
- 然后我创建一个引用我的 StorageClass 的 PVC
- 然后,我创建我的 Pod,按名称引用我的存储类。
我无法弄清楚的是:
- Storage Class 和 K8S Volume Plugin 引用的 Provisoner 是不是一回事?如果它们不同,如何?
- K8S 文档中提到了 External Provisoner 。这是否意味着我可以为我的文件系统树外(K8S 代码之外)编写 K8S 卷插件?
- 我的文件系统提供 REST API 来创建文件系统卷。我可以在我的供应商/音量插件中调用它们吗?
- 如果我编写了一个 out-of-tree 插件,我如何将它加载到我的 K8S 集群中,以便它可以用于使用 Storage Class 来配置卷?
感谢您回答上述任何或所有问题的任何帮助。
谢谢!