ingresssplitter

package
v0.7.3 Latest Latest
Warning

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

Go to latest
Published: Aug 10, 2022 License: Apache-2.0 Imports: 27 Imported by: 0

Documentation

Index

Constants

View Source
const (
	OwnedByCluster   = "ingress.kcp.dev/owned-by-cluster"
	OwnedByIngress   = "ingress.kcp.dev/owned-by-ingress"
	OwnedByNamespace = "ingress.kcp.dev/owned-by-namespace"
)

Variables

This section is empty.

Functions

func LabelEscapeClusterName

func LabelEscapeClusterName(n logicalcluster.Name) string

func UnescapeClusterNameLabel

func UnescapeClusterNameLabel(s string) logicalcluster.Name

Types

type Controller

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

The Controller struct represents an Ingress controller instance.

  • The tracker is used to keep track of the relationship between Ingresses and services.
  • The envoycontrolplane, contains an XDS Server and translates the ingress to Envoy configuration.

func NewController

func NewController(
	ingressInformer networkinginformers.IngressInformer,
	serviceInformer coreinformers.ServiceInformer,
	domain string,
	aggregateLeaveStatus bool) *Controller

NewController returns a new Controller which splits new Ingress objects into N virtual Ingresses labeled for each Cluster that exists at the time the Ingress is created.

The controller can optionally aggregate the leave's status into the root ingress. This makes sense if the envoy side is disabled.

func (*Controller) Start

func (c *Controller) Start(ctx context.Context, numThreads int)

Start starts the controller workers.

Jump to

Keyboard shortcuts

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