This project is in the process of being donated to the CNCF and is not affiliated with the Kubernetes project.

ListenerOptions

Package: gloo.solo.io Types:

Source File: github.com/solo-io/gloo/projects/gloo/api/v1/listener_options.proto


ListenerOptions

Optional, feature-specific configuration that lives on gateways. Each ListenerOption object contains configuration for a specific feature.

"accessLoggingService": .als.options.gloo.solo.io.AccessLoggingService
"extensions": .gloo.solo.io.Extensions
"perConnectionBufferLimitBytes": .google.protobuf.UInt32Value
"socketOptions": []solo.io.envoy.api.v2.core.SocketOption
"proxyProtocol": .proxy_protocol.options.gloo.solo.io.ProxyProtocol
"connectionBalanceConfig": .gloo.solo.io.ConnectionBalanceConfig
"listenerAccessLoggingService": .als.options.gloo.solo.io.AccessLoggingService
Field Type Description
accessLoggingService .als.options.gloo.solo.io.AccessLoggingService Configuration for access logging in a filter like the HttpConnectionManager.
extensions .gloo.solo.io.Extensions Extensions will be passed along from Listeners, Gateways, VirtualServices, Routes, and Route tables to the underlying Proxy, making them useful for controllers, validation tools, etc. which interact with kubernetes yaml. Some sample use cases: * controllers, deployment pipelines, helm charts, etc. which wish to use extensions as a kind of opaque metadata. * In the future, K8sGateway may support gRPC-based plugins which communicate with the K8sGateway translator out-of-process. Opaque Extensions enables development of out-of-process plugins without requiring recompiling & redeploying the K8sGateway API.
perConnectionBufferLimitBytes .google.protobuf.UInt32Value Soft limit on size of the listener’s new connection read and write buffers. If unspecified, defaults to 1MiB For more info, check out the Envoy docs.
socketOptions []solo.io.envoy.api.v2.core.SocketOption Additional socket options that may not be present in Envoy source code or precompiled binaries.
proxyProtocol .proxy_protocol.options.gloo.solo.io.ProxyProtocol Enable ProxyProtocol support for this listener.
connectionBalanceConfig .gloo.solo.io.ConnectionBalanceConfig Configuration for listener connection balancing.
listenerAccessLoggingService .als.options.gloo.solo.io.AccessLoggingService If enabled this sets up an early access logging service for the listener. Added initially to support listener level logging for HTTP listeners. For more info see https://www.envoyproxy.io/docs/envoy/latest/api-v3/config/listener/v3/listener.proto#envoy-v3-api-field-config-listener-v3-listener-access-log.

ConnectionBalanceConfig

Configuration for listener connection balancing.

"exactBalance": .gloo.solo.io.ConnectionBalanceConfig.ExactBalance
Field Type Description
exactBalance .gloo.solo.io.ConnectionBalanceConfig.ExactBalance

ExactBalance

A connection balancer implementation that does exact balancing. This means that a lock is held during balancing so that connection counts are nearly exactly balanced between worker threads. This is “nearly” exact in the sense that a connection might close in parallel thus making the counts incorrect, but this should be rectified on the next accept. This balancer sacrifices accept throughput for accuracy and should be used when there are a small number of connections that rarely cycle (e.g., service mesh gRPC egress).

Field Type Description