我们在尝试更新自定义资源对象时遇到错误“请求实体太大:限制为3145728”。 如果有人知道如何从k8s一侧更改大小限制,那将非常有帮助。 用户有公开的参数吗?
答案 0 :(得分:0)
此答案的来源:https://stackoverflow.com/a/60492986/12153576
"error": "Request entity too large: limit is 3145728"
可能是kubernetes处理程序对大于3MB的对象的默认响应,如您所见,源代码的here at L305:expectedMsgFor1MB := `etcdserver: request is too large`
expectedMsgFor2MB := `rpc error: code = ResourceExhausted desc = trying to send message larger than max`
expectedMsgFor3MB := `Request entity too large: limit is 3145728`
expectedMsgForLargeAnnotation := `metadata.annotations: Too long: must have at most 262144 bytes`
ETCD的处理文件确实有1.5MB的限制,您会在ETCD Documentation上找到尝试使用--max-request-bytes
标志的建议,但对GKE群集,因为您在主节点上没有这样的权限。
但是即使您这样做,也不是理想选择,因为通常此错误表示您consuming the objects,而不是引用它们,这会降低性能。
我强烈建议您改为考虑以下选项:
有人要求提供new API Resource: File (orBinaryData),该要求可能适用于您的情况。这很新鲜,但是请多加注意。