我们正在运行一个由 x 个节点组成的集群。
集群中的每个节点都会从远程存储中提取一些文件。不幸的是,远程服务器超载了。因此,我们正在探索一种解决方案,其中只有一部分节点提取文件并提供给其余节点(只读 - 其他节点不需要写入)。一些节点子集可以经常进行维护并且可以脱机。
我尝试在副本集中以 pod 形式运行 NFS,并为每个 NFS pod 提供一个服务(固定 IP)。如果一个带有 NFS-pod 的节点发生故障,k8 将负责在另一个具有相同粘性 IP 的节点中启动 NFS-pod。
但这个新的 NFS 仍然需要在其他节点上重新安装。
对于这个存储问题有没有更好的解决方案?
请注意,我们理想情况下不想使用远程存储,因为这会增加额外的延迟。
答案1
我认为你可以考虑这些选择https://kubernetes.io/docs/concepts/storage/persistent-volumes/#expanding-persistent-volumes-claims
如果您选择一些本地管理的,则维护起来可能会有开销,但您仍然可以选择。