请求没有入口配置的k8s服务的HTTP错误413
Http Error 413 requesting k8s service which does not have an ingress configuration
在我的集群中,有一项服务在通过 POST 请求时 returns 413 具有较大的请求客户端正文大小,> 10MB。由于不应从集群外部访问此服务,我想知道如何增加此设置以防止出现上述错误。
当然,在服务上使用入口配置时我可以坚持使用 proxy-body-size
注释,但不使用入口配置时情况如何?
当服务没有定义入口资源时,似乎对请求正文大小没有限制。
编辑:举例来说,我们在集群 A 和 B 中托管了两个服务。
服务 A 可以从集群外部访问,这将通过定义一个 nginx ingress
资源来实现,该资源暴露给 url my.service.a
.
apiVersion: networking.k8s.io/v1beta1
kind: Ingress
metadata:
annotations:
nginx.ingress.kubernetes.io/proxy-body-size: "0"
...
spec:
rules:
- host: my.service.a
http:
paths:
...
请注意注释nginx.ingress.kubernetes.io/proxy-body-size: "0"
,它禁用了客户端请求正文大小的限制(不推荐!)。
服务 B 将仅由服务 A 在其内部集群地址 my-service-b.svc.cluster.local
中请求,因此没有为服务 B 定义 nginx ingress
资源。
我的假设是,服务 B 默认也有 client_request_body_size
限制。但是经过测试,好像没有限制。
在我的集群中,有一项服务在通过 POST 请求时 returns 413 具有较大的请求客户端正文大小,> 10MB。由于不应从集群外部访问此服务,我想知道如何增加此设置以防止出现上述错误。
当然,在服务上使用入口配置时我可以坚持使用 proxy-body-size
注释,但不使用入口配置时情况如何?
当服务没有定义入口资源时,似乎对请求正文大小没有限制。
编辑:举例来说,我们在集群 A 和 B 中托管了两个服务。
服务 A 可以从集群外部访问,这将通过定义一个 nginx ingress
资源来实现,该资源暴露给 url my.service.a
.
apiVersion: networking.k8s.io/v1beta1
kind: Ingress
metadata:
annotations:
nginx.ingress.kubernetes.io/proxy-body-size: "0"
...
spec:
rules:
- host: my.service.a
http:
paths:
...
请注意注释nginx.ingress.kubernetes.io/proxy-body-size: "0"
,它禁用了客户端请求正文大小的限制(不推荐!)。
服务 B 将仅由服务 A 在其内部集群地址 my-service-b.svc.cluster.local
中请求,因此没有为服务 B 定义 nginx ingress
资源。
我的假设是,服务 B 默认也有 client_request_body_size
限制。但是经过测试,好像没有限制。