Установить буфер запросов для Istio EnvoyFilter в YAML

#istio #envoyproxy

#istio #envoyproxy

Вопрос:

Не могли бы вы помочь мне, пожалуйста, указать YAML Istio EnvoyFilter, чтобы иметь буфер запросов, аналог буфера запросов Nginx. Я пытался

 apiVersion: networking.istio.io/v1alpha3
kind: EnvoyFilter
metadata:
  name: connection
  namespace: my-test
spec:
  workloadSelector:
    labels:
      role: backend
  configPatches:
  - applyTo: LISTENER
    match:
      context: SIDECAR_INBOUND
    patch:
      operation: MERGE
      value:
        per_connection_buffer_limit_bytes: 21000000.0 #21MB
  

Это успешно применяется к кластеру, но работает не так, как ожидалось

Спасибо

UPD это работает (для istio 1.5)

 apiVersion: networking.istio.io/v1alpha3
kind: EnvoyFilter
metadata:
  name: connection
  namespace: my-test
spec:
  filters:
    - filterName: envoy.buffer
      filterType: HTTP
      filterConfig:
        maxRequestBytes: 21000000.0 #21MB
  

UPD 2
это работает (для istio 1.8)

 apiVersion: networking.istio.io/v1alpha3
kind: EnvoyFilter
metadata:
  name: filter-buffersize-limit
  namespace: istio-system
spec:
  workloadSelector:
    labels:
      istio: ingressgateway
  configPatches:
    - applyTo: HTTP_FILTER
      match:
        context: GATEWAY
        listener:
          filterChain:
            filter:
              name: "envoy.filters.network.http_connection_manager"
              subFilter:
                name: "envoy.filters.http.router"
      patch:
        operation: INSERT_BEFORE
        value:
          name: envoy.filters.http.buffer
          typed_config:
            "@type": type.googleapis.com/envoy.extensions.filters.http.buffer.v3.Buffer
            max_request_bytes: 26214400 # 25 MB.