listener

package
v0.0.0-...-ad5601e Latest Latest
Warning

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

Go to latest
Published: Dec 10, 2019 License: Apache-2.0 Imports: 22 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CreateBlackHoleFilterChain

func CreateBlackHoleFilterChain() (*listener.FilterChain, error)

func NeedServiceToPodAnnotation

func NeedServiceToPodAnnotation(label string) bool

Types

type ClusterIpFilterInfo

type ClusterIpFilterInfo struct {
	// contains filtered or unexported fields
}

func NewClusterIpFilterInfo

func NewClusterIpFilterInfo(svc *kubernetes.ServiceInfo, port uint32) *ClusterIpFilterInfo

func (*ClusterIpFilterInfo) ClusterName

func (info *ClusterIpFilterInfo) ClusterName() string

func (*ClusterIpFilterInfo) CreateFilterChain

func (info *ClusterIpFilterInfo) CreateFilterChain(node *core.Node) (*listener.FilterChain, error)

func (*ClusterIpFilterInfo) Name

func (info *ClusterIpFilterInfo) Name() string

func (*ClusterIpFilterInfo) String

func (info *ClusterIpFilterInfo) String() string

func (*ClusterIpFilterInfo) Type

func (info *ClusterIpFilterInfo) Type() string

type HttpClusterIpFilterInfo

type HttpClusterIpFilterInfo struct {
	ClusterIpFilterInfo
	HttpListenerConfigInfo
}

func NewHttpClusterIpFilterInfo

func NewHttpClusterIpFilterInfo(svc *kubernetes.ServiceInfo, port uint32) *HttpClusterIpFilterInfo

func (*HttpClusterIpFilterInfo) CreateFilterChain

func (info *HttpClusterIpFilterInfo) CreateFilterChain(node *core.Node) (*listener.FilterChain, error)

func (*HttpClusterIpFilterInfo) String

func (info *HttpClusterIpFilterInfo) String() string

type HttpListenerConfigInfo

type HttpListenerConfigInfo struct {
	Tracing        bool
	RequestTimeout *duration.Duration
	RetryOn        string
	RetryTimes     uint32

	FaultInjectionFixDelayPercentage uint32
	FaultInjectionFixDelay           *duration.Duration

	FaultInjectionAbortPercentage uint32
	FaultInjectionAbortStatus     uint32

	RateLimitKbps        uint64
	TraceSamplingPercent float64

	HashCookieName string
	HashHeaderName string
	HashCookieTTL  *duration.Duration
}

func (*HttpListenerConfigInfo) Config

func (info *HttpListenerConfigInfo) Config(config map[string]string)

func (*HttpListenerConfigInfo) ConfigConnectionManager

func (info *HttpListenerConfigInfo) ConfigConnectionManager(manager *hcm.HttpConnectionManager)

func (*HttpListenerConfigInfo) CreateRouteAction

func (info *HttpListenerConfigInfo) CreateRouteAction(cluster string) *route.RouteAction

func (*HttpListenerConfigInfo) CreateVirtualHost

func (info *HttpListenerConfigInfo) CreateVirtualHost(cluster string, domains []string) *route.VirtualHost

type HttpPodIpFilterInfo

type HttpPodIpFilterInfo struct {
	PodIpFilterInfo
	HttpListenerConfigInfo
	Domains map[string][]string
}

listener filter for local pod or outbound listener filter for headless service pod

func NewHttpPodIpFilterInfo

func NewHttpPodIpFilterInfo(pod *kubernetes.PodInfo, port uint32) *HttpPodIpFilterInfo

func (*HttpPodIpFilterInfo) CreateFilterChain

func (info *HttpPodIpFilterInfo) CreateFilterChain(node *core.Node) (*listener.FilterChain, error)

func (*HttpPodIpFilterInfo) CreateVirtualHosts

func (info *HttpPodIpFilterInfo) CreateVirtualHosts(nodeId string) []*route.VirtualHost

func (*HttpPodIpFilterInfo) String

func (info *HttpPodIpFilterInfo) String() string

type ListenerInfo

type ListenerInfo interface {
	common.EnvoyResource
	CreateFilterChain(node *core.Node) (*listener.FilterChain, error)
}

type ListenersControlPlaneService

type ListenersControlPlaneService struct {
	*common.ControlPlaneService
	// contains filtered or unexported fields
}

func NewListenersControlPlaneService

func NewListenersControlPlaneService(k8sManager *kubernetes.K8sResourceManager) *ListenersControlPlaneService

func (*ListenersControlPlaneService) BuildResource

func (cps *ListenersControlPlaneService) BuildResource(resourceMap map[string]common.EnvoyResource, version string, node *core.Node) (*envoy_api_v2.DiscoveryResponse, error)

func (*ListenersControlPlaneService) PodAdded

func (cps *ListenersControlPlaneService) PodAdded(pod *kubernetes.PodInfo)

func (*ListenersControlPlaneService) PodDeleted

func (cps *ListenersControlPlaneService) PodDeleted(pod *kubernetes.PodInfo)

func (*ListenersControlPlaneService) PodUpdated

func (cps *ListenersControlPlaneService) PodUpdated(oldPod, newPod *kubernetes.PodInfo)

func (*ListenersControlPlaneService) PodValid

func (manager *ListenersControlPlaneService) PodValid(pod *kubernetes.PodInfo) bool

func (*ListenersControlPlaneService) ServiceAdded

func (cps *ListenersControlPlaneService) ServiceAdded(svc *kubernetes.ServiceInfo)

func (*ListenersControlPlaneService) ServiceDeleted

func (cps *ListenersControlPlaneService) ServiceDeleted(svc *kubernetes.ServiceInfo)

func (*ListenersControlPlaneService) ServiceUpdated

func (cps *ListenersControlPlaneService) ServiceUpdated(oldService, newService *kubernetes.ServiceInfo)

func (*ListenersControlPlaneService) ServiceValid

func (cps *ListenersControlPlaneService) ServiceValid(svc *kubernetes.ServiceInfo) bool

type PodIpFilterInfo

type PodIpFilterInfo struct {
	// contains filtered or unexported fields
}

listener filter for local pod or outbound listener filter for headless service pod

func NewPodIpFilterInfo

func NewPodIpFilterInfo(pod *kubernetes.PodInfo, port uint32) *PodIpFilterInfo

func (*PodIpFilterInfo) CreateFilterChain

func (info *PodIpFilterInfo) CreateFilterChain(node *core.Node) (*listener.FilterChain, error)

func (*PodIpFilterInfo) Name

func (info *PodIpFilterInfo) Name() string

func (*PodIpFilterInfo) String

func (info *PodIpFilterInfo) String() string

func (*PodIpFilterInfo) Type

func (info *PodIpFilterInfo) Type() string

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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