首页 > 解决方案 > 将共享文件夹挂载到 k8 中的所有状态完整集副本

问题描述

上下文

我们有一个 Apache Nifi 集群作为有状态集部署在 Kubernetes 中,并且卷声明模板用于 Nifi 存储库。

我们正在使用的 Nifi helm 图表

有一个用例,文件处理由 Nifi 完成。因此,文件提要被放入共享文件夹中,nifi 将从共享文件夹中读取它。当 Nifi 的多个节点存在时,所有三个节点都会从共享文件夹中读取。

在非 kubernetes 环境中,我们使用 NFS 文件共享。

在 AWS 中,我们使用 AWS S3 进行存储,Nifi 具有从 S3 读取的处理器。

问题

Nifi 已经部署为 statefulset 并使用存储库的卷声明模板。我们如何将这个 NFS 共享挂载到所有 nifi 副本的文件馈送。

或者换句话说,以一般的方式提出问题,

我们如何将单个 NFS 共享文件夹挂载到所有 statefulset 副本?

尝试的解决方案

我们尝试将单独的 pvc 声明文件夹链接到 nfs 共享,但看起来像是一种解决方法。

有人可以帮忙吗。任何提示将不胜感激。

标签: kubernetesapache-nifinfskubernetes-statefulset

解决方案


像往常一样把它放在 pod 模板中。NFS 是一种“ReadWriteMany”卷类型,因此您可以创建一个 PVC,然后在每个 pod 上同时使用它。您也可以直接在 pod 数据中配置 NFS 卷,但使用 PVC 可能更好。

听起来你所拥有的是正确的:)


推荐阅读