将数据写回已安装的 kubernetes 卷(configmap 或任何其他类型)

Writing back data to a mounted kubernetes volume (configmap or any other type)

我有一个 configmap,我已将其作为卷安装到 pod 上,并且我能够从 pod 内部使用它的内容。现在,我想从 pod 内部向此 configmap 写回一些内容,并且我希望它在 pod 外部检查时反映在 configmap 中。

这可能吗?

当谈到docker时,我们可以从主机访问数据,反之亦然。 K8s 卷也是如此吗?

谢谢

ConfigMaps 总是挂载为 read-only 所以你不能写回任何东西。另一种方法是使用某种日志记录代理或将该输出写入某个地方,它会在 pod 生命周期之后持续存在。

默认情况下,如果容器由于某种原因重新启动,kubelet 将只保留一个终止的容器及其日志。如果 pod 被驱逐,里面的容器连同它们的日志都会消失。因此,无论您的应用 return 是什么,商店都将消失。

在生产系统中,您需要使用集中式、集群范围的日志记录解决方案,这样您的所有日志都会收集并永久存储在中央位置。

用于提供容器日志集中存储的组件必须由其他组件提供,这些组件通常 运行 作为集群中的常规 pods,例如日志代理。

Kubernetes 文档的 cluster-level logging section 通过几个示例介绍了如何:

  • 使用每个节点上 运行 的节点级日志记录代理。
  • 包括一个专用的 sidecar 容器,用于登录应用程序 pod。
  • 将日志从应用程序内直接推送到后端。