如何在 kubernetes pod 之间共享一些值?

Vic*_*nin 0 kubernetes

我有几个属于同一服务的 Pod。我需要在该服务的所有 Pod 之间共享一个值。

根据我的理解,共享卷不会很好地工作,因为 Pod 最终可能位于不同的节点上。

将任何类型的数据库(即使是最轻量级的)作为服务公开来共享此值都将是矫枉过正的(但是,可能这是我的备份计划)。

我想知道是否有一些 k8s 原生的方式来分享价值。

wei*_*eld 5

将值放入ConfigMap并将其挂载到 Pod 中。您可以将 ConfigMap 的值作为卷环境变量包含在 Pod 的容器中。

请参阅Kubernetes 文档中的配置 Pod 以使用 ConfigMap 。

如果 Pod 需要更新共享值,它们可以写入 ConfigMap(需要Kubernetes API 权限)。但是,在这种情况下,ConfigMap 必须作为卷包含在内,因为当 ConfigMap 更改时,ConfigMap 中的环境变量值不会更新。