Documentation ¶
Index ¶
- Constants
- func ConvertBandwidthToKbps(bandwidth string) (uint64, error)
- func ConvertPercentage(percentage *wrapperspb.DoubleValue) *envoy_type.FractionalPercent
- func GrpcRetryOn(conf []mesh_proto.Retry_Conf_Grpc_RetryOn) string
- func HttpRetryOn(conf []mesh_proto.HttpRetryOn) string
- func NewUnexpectedFilterConfigTypeError(actual, expected proto.Message) error
- func UpdateFilterConfig(filterChain *envoy_listener.FilterChain, filterName string, ...) error
- func UpdateHTTPConnectionManager(filterChain *envoy_listener.FilterChain, ...) error
- func UpdateTCPProxy(filterChain *envoy_listener.FilterChain, ...) error
- type AccessLogConfigurer
- type DNSConfigurer
- type DnsTableByName
- type FaultInjectionConfigurer
- type FilterChainConfigureFunc
- type FilterChainConfigurer
- type FilterChainMatchConfigurer
- type FilterChainMustConfigureFunc
- type GrpcStatsConfigurer
- type HttpAccessLogConfigurer
- type HttpConnectionManagerConfigureFunc
- type HttpConnectionManagerConfigurer
- type HttpConnectionManagerMustConfigureFunc
- type HttpDynamicRouteConfigurer
- type HttpInboundRouteConfigurer
- type HttpOutboundRouteConfigurer
- type HttpScopedRouteConfigurer
- type HttpStaticRouteConfigurer
- type InboundListenerConfigurer
- type KafkaConfigurer
- type ListenerConfigureFunc
- type ListenerConfigurer
- type ListenerMustConfigureFunc
- type MaxConnectAttemptsConfigurer
- type NetworkAccessLogConfigurer
- type NetworkRBACConfigurer
- type OriginalDstForwarderConfigurer
- type OutboundListenerConfigurer
- type RateLimitConfigurer
- type RetryConfigurer
- type ServerSideMTLSConfigurer
- type ServerSideStaticMTLSConfigurer
- type StaticEndpointsConfigurer
- type TLSInspectorConfigurer
- type TagsMetadataConfigurer
- type TcpProxyConfigurer
- type TimeoutConfigurer
- type TracingConfigurer
- type TransparentProxyingConfigurer
Constants ¶
const ( HttpRetryOnDefault = "gateway-error,connect-failure," + "refused-stream" HttpRetryOnRetriableStatusCodes = "retriable-status-codes" GrpcRetryOnDefault = "cancelled,connect-failure," + "gateway-error,refused-stream,reset,resource-exhausted,unavailable" )
Variables ¶
This section is empty.
Functions ¶
func ConvertBandwidthToKbps ¶
func ConvertPercentage ¶
func ConvertPercentage(percentage *wrapperspb.DoubleValue) *envoy_type.FractionalPercent
func GrpcRetryOn ¶ added in v1.8.1
func GrpcRetryOn(conf []mesh_proto.Retry_Conf_Grpc_RetryOn) string
func HttpRetryOn ¶ added in v1.8.1
func HttpRetryOn(conf []mesh_proto.HttpRetryOn) string
func UpdateFilterConfig ¶
func UpdateFilterConfig(filterChain *envoy_listener.FilterChain, filterName string, updateFunc func(proto.Message) error) error
func UpdateHTTPConnectionManager ¶
func UpdateHTTPConnectionManager(filterChain *envoy_listener.FilterChain, updateFunc func(manager *envoy_hcm.HttpConnectionManager) error) error
func UpdateTCPProxy ¶
func UpdateTCPProxy(filterChain *envoy_listener.FilterChain, updateFunc func(*envoy_tcp.TcpProxy) error) error
Types ¶
type AccessLogConfigurer ¶
type AccessLogConfigurer struct { Mesh string TrafficDirection envoy.TrafficDirection SourceService string DestinationService string Backend *mesh_proto.LoggingBackend Proxy *core_xds.Proxy }
type DNSConfigurer ¶
type DNSConfigurer struct { VIPs map[string][]string EmptyDNSPort uint32 EnvoyVersion *mesh_proto.EnvoyVersion }
func (*DNSConfigurer) Configure ¶
func (c *DNSConfigurer) Configure(listener *envoy_listener.Listener) error
type DnsTableByName ¶
type DnsTableByName []*envoy_data_dns.DnsTable_DnsVirtualDomain
func (DnsTableByName) Len ¶
func (a DnsTableByName) Len() int
func (DnsTableByName) Less ¶
func (a DnsTableByName) Less(i, j int) bool
func (DnsTableByName) Swap ¶
func (a DnsTableByName) Swap(i, j int)
type FaultInjectionConfigurer ¶
type FaultInjectionConfigurer struct {
FaultInjections []*core_mesh.FaultInjectionResource
}
func (*FaultInjectionConfigurer) Configure ¶
func (f *FaultInjectionConfigurer) Configure(filterChain *envoy_listener.FilterChain) error
type FilterChainConfigureFunc ¶ added in v1.8.1
type FilterChainConfigureFunc func(chain *envoy_listener.FilterChain) error
FilterChainConfigureFunc adapts a FilterChain configuration function to the FilterChainConfigurer interface.
func (FilterChainConfigureFunc) Configure ¶ added in v1.8.1
func (f FilterChainConfigureFunc) Configure(chain *envoy_listener.FilterChain) error
type FilterChainConfigurer ¶
type FilterChainConfigurer interface { // Configure configures a single aspect on a given Envoy filter chain. Configure(filterChain *envoy_listener.FilterChain) error }
FilterChainConfigurer is responsible for configuring a single aspect of the entire Envoy filter chain, such as TcpProxy filter, RBAC filter, access log, etc.
type FilterChainMatchConfigurer ¶
type FilterChainMatchConfigurer struct { ServerNames []string TransportProtocol string ApplicationProtocols []string }
func (*FilterChainMatchConfigurer) Configure ¶
func (f *FilterChainMatchConfigurer) Configure(filterChain *envoy_listener.FilterChain) error
type FilterChainMustConfigureFunc ¶ added in v1.8.1
type FilterChainMustConfigureFunc func(chain *envoy_listener.FilterChain)
FilterChainConfigureFunc adapts a FilterChain configuration function that never fails to the FilterChainConfigurer interface.
func (FilterChainMustConfigureFunc) Configure ¶ added in v1.8.1
func (f FilterChainMustConfigureFunc) Configure(chain *envoy_listener.FilterChain) error
type GrpcStatsConfigurer ¶
type GrpcStatsConfigurer struct { }
func (*GrpcStatsConfigurer) Configure ¶
func (g *GrpcStatsConfigurer) Configure(filterChain *envoy_listener.FilterChain) error
type HttpAccessLogConfigurer ¶
type HttpAccessLogConfigurer struct {
AccessLogConfigurer
}
func (*HttpAccessLogConfigurer) Configure ¶
func (c *HttpAccessLogConfigurer) Configure(filterChain *envoy_listener.FilterChain) error
type HttpConnectionManagerConfigureFunc ¶ added in v1.8.1
type HttpConnectionManagerConfigureFunc func(hcm *envoy_hcm.HttpConnectionManager) error
HttpConnectionManagerConfigureFunc adapts a HttpConnectionManager configuration function to the FilterChainConfigurer interface.
func (HttpConnectionManagerConfigureFunc) Configure ¶ added in v1.8.1
func (f HttpConnectionManagerConfigureFunc) Configure(filterChain *envoy_listener.FilterChain) error
type HttpConnectionManagerConfigurer ¶
func (*HttpConnectionManagerConfigurer) Configure ¶
func (c *HttpConnectionManagerConfigurer) Configure(filterChain *envoy_listener.FilterChain) error
type HttpConnectionManagerMustConfigureFunc ¶ added in v1.8.1
type HttpConnectionManagerMustConfigureFunc func(hcm *envoy_hcm.HttpConnectionManager)
HttpConnectionManagerMustConfigureFunc adapts a HttpConnectionManager configuration function that never fails to the FilterChainConfigurer interface.
func (HttpConnectionManagerMustConfigureFunc) Configure ¶ added in v1.8.1
func (f HttpConnectionManagerMustConfigureFunc) Configure(filterChain *envoy_listener.FilterChain) error
type HttpDynamicRouteConfigurer ¶ added in v1.8.1
type HttpDynamicRouteConfigurer struct { // RouteName is the globally unique name for the RouteConfiguration // that this configures xDS client to request. RouteName string }
HttpDynamicRouteConfigurer configures the HttpConnectionManager in the filter chain to accept its routes dynamically via ADS.
func (*HttpDynamicRouteConfigurer) Configure ¶ added in v1.8.1
func (c *HttpDynamicRouteConfigurer) Configure(filterChain *envoy_listener.FilterChain) error
type HttpInboundRouteConfigurer ¶ added in v1.8.1
type HttpInboundRouteConfigurer struct { Service string Routes envoy_common.Routes }
func (*HttpInboundRouteConfigurer) Configure ¶ added in v1.8.1
func (c *HttpInboundRouteConfigurer) Configure(filterChain *envoy_listener.FilterChain) error
type HttpOutboundRouteConfigurer ¶
type HttpOutboundRouteConfigurer struct { Service string Routes envoy_common.Routes DpTags mesh_proto.MultiValueTagSet }
func (*HttpOutboundRouteConfigurer) Configure ¶
func (c *HttpOutboundRouteConfigurer) Configure(filterChain *envoy_listener.FilterChain) error
type HttpScopedRouteConfigurer ¶ added in v1.8.1
type HttpScopedRouteConfigurer struct { }
HttpScopedRouteConfigurer configures a set of scoped routes into the HttpConnectionManager in the filter chain.
func (*HttpScopedRouteConfigurer) Configure ¶ added in v1.8.1
func (c *HttpScopedRouteConfigurer) Configure(filterChain *envoy_listener.FilterChain) error
type HttpStaticRouteConfigurer ¶
type HttpStaticRouteConfigurer struct {
Builder *envoy_routes.RouteConfigurationBuilder
}
HttpStaticRouteConfigurer configures a static set of routes into the HttpConnectionManager in the filter chain.
func (*HttpStaticRouteConfigurer) Configure ¶
func (c *HttpStaticRouteConfigurer) Configure(filterChain *envoy_listener.FilterChain) error
type InboundListenerConfigurer ¶
type InboundListenerConfigurer struct { Protocol core_xds.SocketAddressProtocol ListenerName string Address string Port uint32 }
func (*InboundListenerConfigurer) Configure ¶
func (c *InboundListenerConfigurer) Configure(l *envoy_listener.Listener) error
type KafkaConfigurer ¶
type KafkaConfigurer struct {
StatsName string
}
func (*KafkaConfigurer) Configure ¶
func (c *KafkaConfigurer) Configure(filterChain *envoy_listener.FilterChain) error
type ListenerConfigureFunc ¶ added in v1.8.1
type ListenerConfigureFunc func(listener *envoy_listener.Listener) error
ListenerConfigureFunc adapts a configuration function to the ListenerConfigurer interface.
func (ListenerConfigureFunc) Configure ¶ added in v1.8.1
func (f ListenerConfigureFunc) Configure(listener *envoy_listener.Listener) error
type ListenerConfigurer ¶
type ListenerConfigurer interface { // Configure configures a single aspect on a given Envoy listener. Configure(listener *envoy_listener.Listener) error }
ListenerConfigurer is responsible for configuring a single aspect of the entire Envoy listener, such as filter chain, transparent proxying, etc.
type ListenerMustConfigureFunc ¶ added in v1.8.1
type ListenerMustConfigureFunc func(listener *envoy_listener.Listener)
ListenerMustConfigureFunc adapts a configuration function that never fails to the ListenerConfigurer interface.
func (ListenerMustConfigureFunc) Configure ¶ added in v1.8.1
func (f ListenerMustConfigureFunc) Configure(listener *envoy_listener.Listener) error
type MaxConnectAttemptsConfigurer ¶
type MaxConnectAttemptsConfigurer struct {
Retry *core_mesh.RetryResource
}
func (*MaxConnectAttemptsConfigurer) Configure ¶
func (c *MaxConnectAttemptsConfigurer) Configure( filterChain *envoy_listener.FilterChain, ) error
type NetworkAccessLogConfigurer ¶
type NetworkAccessLogConfigurer struct {
AccessLogConfigurer
}
func (*NetworkAccessLogConfigurer) Configure ¶
func (c *NetworkAccessLogConfigurer) Configure(filterChain *envoy_listener.FilterChain) error
type NetworkRBACConfigurer ¶
type NetworkRBACConfigurer struct { StatsName string Permission *core_mesh.TrafficPermissionResource }
func (*NetworkRBACConfigurer) Configure ¶
func (c *NetworkRBACConfigurer) Configure(filterChain *envoy_listener.FilterChain) error
type OriginalDstForwarderConfigurer ¶
type OriginalDstForwarderConfigurer struct { }
func (*OriginalDstForwarderConfigurer) Configure ¶
func (c *OriginalDstForwarderConfigurer) Configure(l *envoy_listener.Listener) error
type OutboundListenerConfigurer ¶
type OutboundListenerConfigurer struct { ListenerName string Address string Port uint32 Protocol core_xds.SocketAddressProtocol }
type RateLimitConfigurer ¶
type RateLimitConfigurer struct {
RateLimits []*core_mesh.RateLimitResource
}
func (*RateLimitConfigurer) Configure ¶
func (r *RateLimitConfigurer) Configure(filterChain *envoy_listener.FilterChain) error
type RetryConfigurer ¶
type RetryConfigurer struct { Retry *core_mesh.RetryResource Protocol core_mesh.Protocol }
func (*RetryConfigurer) Configure ¶
func (c *RetryConfigurer) Configure( filterChain *envoy_listener.FilterChain, ) error
type ServerSideMTLSConfigurer ¶
type ServerSideMTLSConfigurer struct { Mesh *core_mesh.MeshResource SecretsTracker core_xds.SecretsTracker }
func (*ServerSideMTLSConfigurer) Configure ¶
func (c *ServerSideMTLSConfigurer) Configure(filterChain *envoy_listener.FilterChain) error
type ServerSideStaticMTLSConfigurer ¶ added in v1.8.1
type ServerSideStaticMTLSConfigurer struct {
MTLSCerts core_xds.ServerSideMTLSCerts
}
func (*ServerSideStaticMTLSConfigurer) Configure ¶ added in v1.8.1
func (c *ServerSideStaticMTLSConfigurer) Configure(filterChain *envoy_listener.FilterChain) error
type StaticEndpointsConfigurer ¶
type StaticEndpointsConfigurer struct { VirtualHostName string Paths []*envoy_common.StaticEndpointPath }
func (*StaticEndpointsConfigurer) Configure ¶
func (c *StaticEndpointsConfigurer) Configure(filterChain *envoy_listener.FilterChain) error
type TLSInspectorConfigurer ¶
type TLSInspectorConfigurer struct { }
func (*TLSInspectorConfigurer) Configure ¶
func (c *TLSInspectorConfigurer) Configure(l *envoy_listener.Listener) error
type TagsMetadataConfigurer ¶ added in v1.8.1
type TcpProxyConfigurer ¶
type TcpProxyConfigurer struct { StatsName string // Clusters to forward traffic to. Clusters []envoy_common.Cluster UseMetadata bool }
func (*TcpProxyConfigurer) Configure ¶
func (c *TcpProxyConfigurer) Configure(filterChain *envoy_listener.FilterChain) error
type TimeoutConfigurer ¶
type TimeoutConfigurer struct { Conf *mesh_proto.Timeout_Conf Protocol core_mesh.Protocol }
func (*TimeoutConfigurer) Configure ¶
func (c *TimeoutConfigurer) Configure(filterChain *envoy_listener.FilterChain) error
type TracingConfigurer ¶
type TracingConfigurer struct { Backend *mesh_proto.TracingBackend // Opaque string which envoy will assign to tracer collector cluster, on those // which support association of named "service" tags on traces. Consumed by datadog. Service string }
func (*TracingConfigurer) Configure ¶
func (c *TracingConfigurer) Configure(filterChain *envoy_listener.FilterChain) error
type TransparentProxyingConfigurer ¶
type TransparentProxyingConfigurer struct { }
func (*TransparentProxyingConfigurer) Configure ¶
func (c *TransparentProxyingConfigurer) Configure(l *envoy_listener.Listener) error
Source Files ¶
- access_log_configurer.go
- configurer.go
- dns_configurer.go
- fault_injection_configurer.go
- filter_chain_match_configurer.go
- grpc_stats_configurer.go
- http_access_log_configurer.go
- http_connection_manager_configurer.go
- http_inbound_routes_configurer.go
- http_outbound_route_configurer.go
- http_route_configurer.go
- inbound_listener_configurer.go
- kafka_configurer.go
- max_connect_attempts_configurer.go
- network_access_log_configurer.go
- network_rbac_configurer.go
- original_dst_forwarder_configurer.go
- outbound_listener_configurer.go
- rate_limit_configurer.go
- retry_configurer.go
- server_mtls_configurer.go
- server_static_mtls.go
- static_endpoints_configurer.go
- tags_metadata.go
- tcp_proxy_configurer.go
- timeout_configurer.go
- tls_inspector_configurer.go
- tracing_configurer.go
- transparent_proxying_configurer.go
- util.go