kubernetes 中环境变量的最大大小

Adm*_*awn 5 kubernetes

假设基本 ubuntu 容器,kubernetes 中环境变量 (pod->container->Env) 允许的最大大小是多少?我无法找到相关文档。问题可能看起来很愚蠢,但是,我确实需要这些信息来使我的设计更加稳健。

mda*_*iel 5

因此,至少有 1,048,576 字节的限制:

ConfigMap“太大”无效:[]:太长:最多必须有 1048576 个字符

我生成为:

cat > too-big.yml<<FOO
apiVersion: v1
kind: ConfigMap
metadata:
  name: too-big
data:
  kaboom.txt: |
    $(python -c 'print("x" * 1024 * 1024)')
FOO
Run Code Online (Sandbox Code Playgroud)

当我用 Pod 尝试同样的特技时,我遇到了非常相似的结果:

containers:
- image: ubuntu:18.10
  env:
  - name: TOO_BIG
    value: |
      $(python -c the same print)
Run Code Online (Sandbox Code Playgroud)

standard_init_linux.go:178: exec 用户进程导致“参数列表太长”

所以我猜它介于这两个数字之间:0 和 1048576

也就是说,当回答了几乎重复的问题时,您非常非常有可能解决了错误的问题。事实上,你必须到社区网站来问这样的问题,这意味着你给你的项目带来了风险,因为它在 Linux 上以一种方式运行,在 docker 上以另一种方式运行,在 kubernetes 上以另一种方式运行,在 macOS 上以不同的方式运行。 。

  • 感谢您的回复。我确实相信 1mb 可能是极限 - 因为这是对机密施加的限制并已记录在案。就解决的问题而言,这只是设计复杂性与重用现有基础设施之间的权衡问题(在了解其限制之后 - 目前尚未记录)。我开始使用 stack over flow,因为这是 k8s 故障排除指南所建议的。 (3认同)