【问题标题】:NFS mounts on ubuntu nodes in KubernetesNFS 挂载在 Kubernetes 的 ubuntu 节点上
【发布时间】:2017-10-17 21:55:58
【问题描述】:

如果我在 Ubuntu 机器集群上运行 Kubernetes,当 NFS 安装在每个 ubuntu 节点上时,NFS 是如何在 Kubernetes 中工作的?

我的用例是让数据库和 RabbitMQ 利用 pod 正在运行的节点上的可用存储。

我是在部署时将该 NFS 挂载为常规卷,还是应该直接从持久卷中使用 NFS,而不是在 Ubuntu 节点上挂载 NFS? NFS 如何区分正在运行的实例,卷声明是否基于 Pod/容器分开?

【问题讨论】:

    标签: ubuntu kubernetes nfs


    【解决方案1】:

    要在 Kubernetes 中使用 NFS,您必须创建一个 PV,然后通过 PVC 使用它。

    您的PVs 将决定他们支持哪个NFS 节点。因为那是您将提到服务器地址的地方。请看下面的示例。

    apiVersion: v1
    kind: PersistentVolume
    metadata:
      name: pv0003
    spec:
      capacity:
        storage: 5Gi
      accessModes:
        - ReadWriteOnce
      persistentVolumeReclaimPolicy: Recycle
      storageClassName: slow
      nfs:
        path: /tmp
        server: 172.17.0.2
    

    现在,如果您希望某些 pod 使用来自特定 PV 的存储空间,您可以在 PVC 中添加一个名为 volumeName 的字段,该字段基本上要求将 PVC 绑定到该 PV

    通常人们做事的方式是设置专门的存储节点,因为他们不想丢失数据。将数据保存在节点上可能会有风险。因为如果节点出现故障,您会丢失该节点上的所有数据,除非在某处备份。

    阅读有关持久卷的更多信息here

    【讨论】:

    • 谢谢,我去看看。我可能需要向我的托管服务提供商提出一些问题,以便一切都正确设置。
    • 您好,您需要在 NFS 服务器上导出客户端 ip。你是怎么做这个配置的。假设您的集群中有三个节点,您是否将所有三个节点的 ip 作为客户端 ip 添加到 nfs 服务器。
    猜你喜欢
    • 1970-01-01
    • 2021-02-10
    • 2021-03-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-03-25
    • 2019-06-09
    • 1970-01-01
    相关资源
    最近更新 更多