Configure envoy cluster

Hi,

I need to modify the cluster configuration generated by istio for the envoy proxy side cars.
I need to set the initial_stream_window_size parameter inside the http2_protocol_options.
Can anyone help me with it?
In any case, thanks for your help.

Using istioctl proxy-config cluster I get a configuration like:

{
        "name": "outbound|80||k8s-lab-hop1.lab.svc.cluster.local",
        "type": "EDS",
        "edsClusterConfig": {
            "edsConfig": {
                "ads": {}
            },
            "serviceName": "outbound|80||k8s-lab-hop1.lab.svc.cluster.local"
        },
        "connectTimeout": "10s",
        "circuitBreakers": {
            "thresholds": [
                {
                    "maxRetries": 1024
                }
            ]
        },
        "http2ProtocolOptions": {
            "maxConcurrentStreams": 1073741824
        },
        "metadata": {
            "filterMetadata": {
                "istio": {
                    "config": "/apis/networking/v1alpha3/namespaces/lab/destination-rule/k8s-lab-hop1"
                }
            }
        }
    }

Hello @MSex,

I looked at the code and I don’t see where there is a configuration option to add fields to the http2ProtocolOptions directly.

I haven’t used them and I’m not sure, but maybe an EnvoyFilter could be used.

Thanks @ericvn ,

Envoy accept http2ProtocolOptions in two distinct places into the configuration. In the http_connection_manager network filter and in the cluster configuration
I already used an EnvoyFilter to customize http2ProtocolOptions in the http_connection_manager, but I can’t find a way to set it in the cluster configuration.

I was afraid of that. Maybe someone who has done this will chime in, or maybe an enhancement is needed for additional fields like initial_stream_window_size to be added to the http2_protocol_options in the Istio code.

I am working on a way to customize cluster configuration using envoyfilter crd

hi @rshriram,

Is there a feature request or issue for this in the repository?

Thanks.

@rshriram any update regarding this topic?

Thanks

There is one bug related to Envoy buffer configuration: https://github.com/istio/istio/issues/15260. I think we can extend this ticket to offer more control on Envoy configuration.