Kubernetes NFS 挂载选项

Posted

技术标签:

【中文标题】Kubernetes NFS 挂载选项【英文标题】:Kubernetes NFS Mount Options 【发布时间】:2018-10-02 23:53:24 【问题描述】:

我最近开始为我的本地集群使用 NFS 卷。这对我来说是最简单和最好的解决方案,但在实际安装选项方面似乎非常有限。

是否可以在 volume.yml 文件中的节点/集群上设置挂载选项?

NFSv3 NFSv4/4.1 查找缓存 不定时 rsize,wsize

我的应用程序需要特定版本以及这些挂载选项以提高性能。

apiVersion: v1
kind: PersistentVolume
metadata:
  name: nfs
spec:
  capacity:
    storage: 1Mi
  accessModes:
    - ReadWriteMany
  nfs:
    # FIXME: use the right IP
    server: 10.244.1.4
    path: "/"

这里还有挂载标志吗?

【问题讨论】:

【参考方案1】:

如果有人在 2021 年寻找答案,这对我有用。

  mountOptions:
    - hard
    - timeo=600
    - retrans=3
    - proto=tcp
    - nfsvers=4.2
    - port=2050
    - rsize=4096
    - wsize=4096
    - noacl
    - nocto
    - noatime
    - nodiratime

【讨论】:

【参考方案2】:

可能的,并且自 1.8 以来它已在 Kubernetes 中成为 GA。

apiVersion: v1
kind: PersistentVolume
metadata:
  name: pv0003
spec:
  capacity:
    storage: 5Gi
  volumeMode: Filesystem
  accessModes:
    - ReadWriteOnce
  persistentVolumeReclaimPolicy: Recycle
  storageClassName: slow
  mountOptions:
    - hard
    - nfsvers=4.1
  nfs:
    path: /tmp
    server: 172.17.0.2

https://kubernetes.io/docs/concepts/storage/persistent-volumes/#mount-options

https://github.com/kubernetes/enhancements/issues/168#issuecomment-317748159

【讨论】:

【参考方案3】:

不是真的。 Kubernetes 尚不支持。

如果您现在确实需要非常具体的 NFS 选项,我建议您使用 hostPath

通过这种方式,您可以将 NFS 卷挂载到主机上的特定挂载点上,并让 Kubernetes pod 使用它。

【讨论】:

嗯,我以为是这样。我想在节点上建立一些自动化现在可以做到这一点。猜猜我会按照 github 请求。感谢您的澄清!

以上是关于Kubernetes NFS 挂载选项的主要内容,如果未能解决你的问题,请参考以下文章

NFS/hostPath 在 kubernetes 中挂载为非 root

KUBERNETES05_NFS坏境搭建PVPVC挂载目录ConfigMap挂载文件Secret挂载敏感信息

KUBERNETES05_NFS坏境搭建PVPVC挂载目录ConfigMap挂载文件Secret挂载敏感信息

在kubernetes中部署kubersphere

Amazon EKS (NFS) 到 Kubernetes pod。无法挂载卷

如何修复 kubernetes nfs 挂载错误没有这样的文件或目录