【问题标题】:AWS and kubernetes volumes - how to share configuration across multiple Pods?AWS 和 kubernetes 卷 - 如何跨多个 Pod 共享配置?
【发布时间】:2018-10-29 02:59:45
【问题描述】:

对 K8s 相当陌生,我正在尝试找到一种可以跨 pod 共享配置文件的方法。使用 hostPath 意味着我必须

  1. 安装 NFS 驱动器
  2. 将配置文件添加到所有节点

如果我提供多个节点,那么我必须在所有节点上安装驱动器。

有没有办法(S3)我可以共享配置?或者如果 NFS 是解决它的最佳方法。

【问题讨论】:

    标签: amazon-web-services amazon-s3 deployment kubernetes


    【解决方案1】:

    共享配置文件的标准方法是使用ConfigMap。基本上,一旦您创建了一个并将其作为卷分配给 pod 规范,它将被注入到您的 pod 正在运行的所有节点中的所有 pod 中。

    here 描述的 ConfigMap 有多种使用方式。

    请注意,ConfigMap 大小上有一个 1mb limit。这是 etcd 的限制。

    如果您正在考虑存储更大的文件,NFS Volume 将是一个选项。

    IMO、S3(或任何公共云对象存储)存储配置没有意义,因为它没有最佳性能,这意味着您必须离开集群才能获取文件。此外,Kubernetes 中没有直接支持对象存储配置。

    【讨论】:

    • 有没有办法直接访问EBS?
    • 是的,但是 EBS 卷连接到单个服务器,因此您只能访问该特定节点/服务器,除非您通过 NFS 或 Ceph 等集群文件系统公开它
    【解决方案2】:

    如果这是一个相对较小的文件,您可以挂载一个 ConfigMap 值,请参见此处:

    https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-configmap/#add-configmap-data-to-a-volume

    【讨论】:

      猜你喜欢
      • 2019-09-12
      • 1970-01-01
      • 1970-01-01
      • 2019-11-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多