Nginx.ingress.kubernetes.io/proxy-body-size не работает

Я хочу увеличить размер тела сообщения каждого запроса в Ingress. Поэтому я добавляю

nginx.ingress.kubernetes.io/proxy-body-size: 8m

при входе в файл yaml (при просмотре / редактировании файла yaml на ранчо), но это не работает. Когда я получаю описание входа с помощью kubectl, я не вижу добавленной аннотации, но вижу новое добавленное сопоставление. Вот конфиги:

YAML файл:

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  annotations:
    ingress.kubernetes.io/configuration-snippet: |-
      set $test_host "testdms.test.com"
      if ($host == $test_host) {
        return 301 $scheme://$test_host/webui/;
      }
    nginx.ingress.kubernetes.io/proxy-body-size: 8m
  creationTimestamp: 2018-09-11T12:19:02Z
  generation: 116
  name: test-dms
  namespace: test-dms
  resourceVersion: "95490045"
  selfLink: /apis/extensions/v1beta1/namespaces/test-dms/ingresses/test-dms
  uid: de7c4c1b-b5bc-11e8-84c0-005056bf6431
spec:
  rules:
  - host: testdms.test.com
    http:
      paths:
      - backend:
          serviceName: ingress-e5a45b0dc688c653b79d4b5942ebbe7c
          servicePort: 80
        path: /test
status:
  loadBalancer:
    ingress:
    - {}
    - ip: 198.100.101.171
    - ip: 198.100.101.172
    - ip: 198.100.101.173
    - ip: 198.100.101.61

опишите результат:

Annotations:
  configuration-snippet:  set $test_host "testdms.test.com"
if ($host == $test_host) {
  return 301 $scheme://$test_host/webui/;
}
Events:
  Type    Reason  Age                       From                      Message
  ----    ------  ----                      ----                      -------
  Normal  UPDATE  36s (x38 over 2h)         nginx-ingress-controller  Ingress test-dms/test-dms
  Normal  UPDATE  21s (x47 over 23d)        nginx-ingress-controller  Ingress test-dms/test-dms
  Normal  UPDATE  <invalid> (x47 over 23d)  nginx-ingress-controller  Ingress test-dms/test-dms
  Normal  UPDATE  <invalid> (x84 over 64d)  nginx-ingress-controller  Ingress test-dms/test-dms
  Normal  UPDATE  <invalid> (x39 over 12d)  nginx-ingress-controller  Ingress test-dms/test-dms

person mohammad_1m2    schedule 25.03.2019    source источник
comment
Если по какой-либо другой причине, set требует завершающего ;   -  person mdaniel    schedule 26.03.2019
comment
Вы можете полностью отключить ограничение, используя nginx.ingress.kubernetes.io/proxy-body-size: 0. Кроме того, вы можете попробовать удалить и воссоздать Ingress? Какую версию Rancher вы используете? Можете ли вы дать более подробные инструкции по воспроизведению проблемы? Если возможно, вы можете дать упрощенный код yaml для копирования / вставки и проверки?   -  person leodotcloud    schedule 12.04.2019


Ответы (2)


Поправка к входящим объектам в K8s иногда ведет себя неправильно, поэтому рекомендуется воссоздавать, а не редактировать.

Если это все еще не сработало, попробуйте установить это значение глобально для всех правил входа с помощью configmap.

    apiVersion: v1
    kind: ConfigMap
    metadata:
      name: nginx
      namespace: ingress-nginx
      labels:
        app: ingress-nginx
    data:
      proxy-body-size: "8m"
person A_Suh    schedule 26.04.2019
comment
Да, configmap работает нормально. Я хочу настроить этот параметр только для этого входа. Я должен проверить воссоздание. Спасибо - person mohammad_1m2; 26.04.2019

Вам нужно добавить кавычки (например, "8m"), например:

nginx.ingress.kubernetes.io/proxy-body-size: "8m"
person benCat    schedule 23.04.2020
comment
Интересно, что в документации это неверно. kubernetes.github.io / ingress-nginx / руководство пользователя / - person alex; 10.07.2021