问题标签 [configmap]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
11 回答
159549 浏览

kubernetes - 在 Kubernetes 中更新 configmap 时重新启动 pod?

更改/更新配置图时,如何自动重启 Kubernetes pod 和与部署关联的 pod?


我知道有人谈论过当配置映射发生变化时自动重启 Pod 的能力,但据我所知,这在 Kubernetes 1.2 中尚不可用。

所以(我认为)我想做的是与使用配置映射的 pod 关联的部署资源的“滚动重启”。是否有可能,如果可以,如何在不更改实际模板中的任何内容的情况下强制滚动重启 Kubernetes 中的部署?这是目前最好的方法还是有更好的选择?

0 投票
5 回答
86923 浏览

kubernetes - 更新 k8s ConfigMap 或 Secret 而不删除现有的

我一直在使用 K8S ConfigMap 和 Secret 来管理我们的属性。我的设计非常简单,将属性文件保存在 git repo 中,并使用诸如 Thoughtworks GO 之类的构建服务器将它们自动部署为 ConfigMaps 或 Secrets(在选择条件下)到我的 k8s 集群。

目前,我发现我必须总是删除现有的 ConfigMap 和 Secret 并创建新的进行更新,如下所示:

  1. kubectl delete configmap foo

  2. kubectl create configmap foo --from-file foo.properties

有没有一种简单的方法可以使上述步骤比删除当前更有效?如果在删除旧配置图且未创建新配置图的情况下尝试挂载,我现在正在做的事情可能会损害使用这些配置图的容器。

0 投票
2 回答
7345 浏览

kubernetes - Kubernetes 配置映射符号链接(..data/):有没有办法避免它们?

我注意到,当我创建和挂载包含一些文本文件的配置映射时,容器会将这些文件视为指向../data/myfile.txt.

例如,如果我的配置映射名为 tc-configs 并包含 2 个名为 stripe1.xml 和 stripe2.xml 的 xml 文件,如果我将此配置映射安装到容器中的 /configs,我将在容器中拥有:

我猜 Kubernetes 需要那些符号链接和 ../data 和 ..timestamp/ 文件夹,但我知道一些应用程序如果看到非预期的文件或文件夹可能无法启动

有没有办法告诉 Kubernetes 不要生成所有这些符号链接并直接挂载文件?

0 投票
1 回答
224 浏览

openshift - 使用“模式”创建的 Grafana 数据源 = elasticsearch.yml 数据源配置文件中的无模式

我在 OpenShift 中安装 Grafana 并希望将我们所有的数据源放在一个 ConfigMap 中(我不能使用 GUI)。

到目前为止,一切正常,我的配置图正在被读取,Grafana 对此很满意。有点……我需要更多……

在(GUI)“Elastisearch 详细信息”部分中,它没有填写我认为与 YAML 版本中的“间隔”字段相关的“模式”字段。至少,如果我指定“无模式”,它什么也不做,但是,如果我输入“每小时”,它确实将它作为一个值应用。

所以我在这里很困惑。那是一个错误吗?我是否需要转义“无模式”中的空格(我确实尝试过使用反斜杠)?我确实尝试了一个空值,等等......

帮助将不胜感激。

问候,

0 投票
1 回答
2827 浏览

kubernetes - 如何从文件动态创建 Configmap

我可以从属性文件创建配置映射并在 POD 中使用相同的配置文件。但是,我不想使用过去创建并随 helmchart 提供的 configmap。我想在 helmchart values.yaml 中提供一个文件名,从中动态创建配置映射..

欢迎任何建议/示例。

提前致谢 - 图泰

0 投票
1 回答
1684 浏览

kubernetes - 使用 Consul 存储 kubernetes 容器的环境变量

我想使用 consul(或者您会推荐其他技术吗?)来存储在 kubernetes pod/container 中使用的环境变量。我有一个使用这些环境变量来设置其应用程序状态的软件。

我听说我可以为此使用 consul,但由于业务原因以及用于设置和分发该配置到其他系统的管道,我必须使用类似 consul 的东西。

0 投票
2 回答
1691 浏览

apache - Kubernetes/OC ConfigMap 与 git 中的 config 和容器中的进程以观察变化

我正在部署一个 Spring Boot 应用程序,并且正在考虑用于外部化配置的各种选项。我开始了解以下选项。

这不仅与应用程序有关,而且与其他组件以及代理(apache RP,nginx)/负载均衡器等有关。

谢谢

0 投票
3 回答
3866 浏览

kubernetes - 与 configmap 通信时出错

您好我正在使用 google kubernetes 引擎来部署我的应用程序。我试图添加一个 configMap

然后在我的应用程序部署文件中,我映射了我的环境变量,如下所示

我的服务没有运行,我得到了

CreateContainerConfigError 当我尝试显示 pod 的结果时

当我“描述我的豆荚”时,我得到了

错误:找不到密钥 database_host

我的问题是,为什么我的部署文件与我定义的 configmap 不匹配

我通过这个命令创建了 configmap

kubectl create configmap configmap --from-file=configmap.yaml

0 投票
2 回答
21895 浏览

kubernetes - 如何使用 kubectl 和 jsonpath 将 configmap 的内容保存到文件中?

我正在尝试将 configmap 的内容保存到本地硬盘驱动器上的文件中。Kubectl 支持使用 JSONPath 进行选择,但我找不到只选择文件内容所需的表达式。

configmap 是使用命令创建的

当我跑

我看到以下输出:

我得到的最远只选择文件内容是这样的:

哪个输出

我想要的输出是

JSONPath 拼图的最后一块是什么?

0 投票
2 回答
1382 浏览

configuration - 在运行 Kubernetes Pod 中更改配置

我已经nifi.propertiesKubernetes ConfigMap. 当我部署 NiFi(作为StatefulSet)时,我希望这个nifi.properties文件供我刚刚部署的 NiFi 使用。为此,我为 Container 添加了一个卷ConfigMap并将其安装在 Container 中。相关的statefulset.yaml看起来像这样:

我认为这不起作用,因为 NiFi 已经在运行并且nifi.properties文件被服务锁定。无法创建 pod,出现错误:...Device or resource is busy. 我也尝试了该bootstrap.conf文件,该文件有效,但我认为 NiFi 服务无法识别其中的更改,因为它必须重新启动。

我已经在纯 Docker 上部署 NiFi 时遇到了同样的问题,我通过停止容器、复制文件和启动容器来解决问题;不是很漂亮,但工作。

使用环境变量来改变 NiFi 中的值也不是一种选择,因为在那里改变参数的可能性非常有限。

仅 NiFi 不会出现此问题。我认为在很多情况下,有人想要更改在其中运行的系统的配置Kubernetes,所以我希望有任何解决方案来处理这个问题。