0

在我的集群中,有一个服务在通过 POST 请求时返回 413,请求客户端主体大小大于 10MB。由于从集群外部无法访问此服务,我想知道如何增加此设置以防止出现上述错误。

当然,在服务上使用入口配置时,我可以坚持proxy-body-size注解,但不使用入口配置时又如何呢?

4

1 回答 1

1

当服务没有定义入口资源时,请求主体大小似乎没有限制。

编辑:例如,我们在集群 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,因此没有nginx ingress为服务 B 定义资源。

我的假设是,服务 B 默认client_request_body_size也有限制。但经过测试,似乎没有限制。

于 2020-03-12T14:03:39.350 回答