HELM(错误)数据:太长:最多必须有 1048576 字节

HELM(错误)数据:太长:最多必须有 1048576 字节

好的,我有一个包含多个组件的巨大应用程序,每个组件都有大量的配置文件

目录树看起来像这样

# ls -1 .
Chart.yaml
configs
templates
values.yaml

# ls -1 configs
component1-config
component2-config
component3-config
component4-config

# ls -1 templates
component1.yaml
component2.yaml
component3.yaml
component4.yaml
_helpers.tpl
secrets.yaml

我正在为每个组件的多个文件夹创建配置映射,如下所示

---
apiVersion: v1
kind: ConfigMap
metadata:
  name: config-component1-folder1
  namespace: {{ .Values.nSpace }}
data:
{{ $currentScope := . }}
{{ range $path, $_ :=  .Files.Glob  "configs/component1/folder1/**" }}
{{- with $currentScope}}
  {{ (base $path) }}: |-
{{ .Files.Get $path | indent 6 }}
{{ end }}
{{ end }}
---
apiVersion: v1
kind: ConfigMap
metadata:
  name: config-component1-folder2
  namespace: {{ .Values.nSpace }}
data:
{{ $currentScope := . }}
{{ range $path, $_ :=  .Files.Glob  "configs/component1/folder2/**" }}
{{- with $currentScope}}
  {{ (base $path) }}: |-
{{ .Files.Get $path | indent 6 }}
{{ end }}
{{ end }}

一些标准部署和服务还包括问题是当我运行时helm install myapp .它会抛出这个data too long error 我想避免的问题,因为我的应用程序可能会增长。

Error: INSTALLATION FAILED: create: failed to create: Secret "sh.helm.release.v1.myapp.v1" is invalid: data: Too long: must have at most 1048576 bytes

答案1

图表中的文件或文件夹(包括隐藏文件和文件夹)不能大于(大约)1MB。您需要删除它们或将它们放入.hemignore要排除的文件中。
就我而言,.git文件夹大于 1MB,不需要,删除后就helm install可以了。

在此输入图像描述

同样的问题:
https://github.com/helm/helm/issues/1996

相关内容