v3

package
v1.8.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 5, 2022 License: Apache-2.0 Imports: 56 Imported by: 0

Documentation

Index

Constants

View Source
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 ConvertBandwidthToKbps(bandwidth string) (uint64, error)

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 NewUnexpectedFilterConfigTypeError

func NewUnexpectedFilterConfigTypeError(actual, expected proto.Message) error

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

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

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

type HttpConnectionManagerConfigurer

type HttpConnectionManagerConfigurer struct {
	StatsName                string
	ForwardClientCertDetails bool
}

func (*HttpConnectionManagerConfigurer) Configure

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

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

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

type OutboundListenerConfigurer

type OutboundListenerConfigurer struct {
	ListenerName string
	Address      string
	Port         uint32
	Protocol     core_xds.SocketAddressProtocol
}

func (*OutboundListenerConfigurer) Configure

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

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

type TagsMetadataConfigurer added in v1.8.1

type TagsMetadataConfigurer struct {
	Tags map[string]string
}

func (*TagsMetadataConfigurer) Configure 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

Directories

Path Synopsis
compatibility

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL