routing

package
v1.0.1 Latest Latest
Warning

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

Go to latest
Published: Jul 27, 2020 License: Apache-2.0 Imports: 34 Imported by: 0

Documentation

Index

Constants

View Source
const (
	IFACE_NOT_FOUND = "Link not found"

	LeaderElectionRecordAnnotationKey = "control-plane.alpha.kubernetes.io/leader"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type NetworkRoutingController

type NetworkRoutingController struct {
	MetricsEnabled bool

	NodeEventHandler      cache.ResourceEventHandler
	ServiceEventHandler   cache.ResourceEventHandler
	EndpointsEventHandler cache.ResourceEventHandler
	// contains filtered or unexported fields
}

NetworkRoutingController is struct to hold necessary information required by controller

func NewNetworkRoutingController

func NewNetworkRoutingController(clientset kubernetes.Interface,
	kubeRouterConfig *options.KubeRouterConfig,
	nodeInformer cache.SharedIndexInformer, svcInformer cache.SharedIndexInformer,
	epInformer cache.SharedIndexInformer) (*NetworkRoutingController, error)

NewNetworkRoutingController returns new NetworkRoutingController object

func (*NetworkRoutingController) AddPolicies added in v0.3.2

func (nrc *NetworkRoutingController) AddPolicies() error

First create all prefix and neighbor sets Then apply export policies Then apply import policies

func (*NetworkRoutingController) Cleanup

func (nrc *NetworkRoutingController) Cleanup()

Cleanup performs the cleanup of configurations done

func (*NetworkRoutingController) OnEndpointsAdd

func (nrc *NetworkRoutingController) OnEndpointsAdd(obj interface{})

OnEndpointsAdd handles endpoint add events from apiserver This method calls OnEndpointsUpdate with the addition of updating BGP export policies Calling AddPolicies here covers the edge case where AddPolicies fails in OnServiceUpdate because the corresponding Endpoint resource for the Service was not created yet.

func (*NetworkRoutingController) OnEndpointsUpdate

func (nrc *NetworkRoutingController) OnEndpointsUpdate(obj interface{})

OnEndpointsUpdate handles the endpoint updates from the kubernetes API server

func (*NetworkRoutingController) OnNodeUpdate

func (nrc *NetworkRoutingController) OnNodeUpdate(obj interface{})

OnNodeUpdate Handle updates from Node watcher. Node watcher calls this method whenever there is new node is added or old node is deleted. So peer up with new node and drop peering from old node

func (*NetworkRoutingController) OnServiceCreate added in v0.3.0

func (nrc *NetworkRoutingController) OnServiceCreate(obj interface{})

OnServiceCreate handles new service create event from the kubernetes API server

func (*NetworkRoutingController) OnServiceDelete

func (nrc *NetworkRoutingController) OnServiceDelete(obj interface{})

OnServiceDelete handles the service delete updates from the kubernetes API server

func (*NetworkRoutingController) OnServiceUpdate

func (nrc *NetworkRoutingController) OnServiceUpdate(objNew interface{}, objOld interface{})

OnServiceUpdate handles the service relates updates from the kubernetes API server

func (*NetworkRoutingController) Run

func (nrc *NetworkRoutingController) Run(healthChan chan<- *healthcheck.ControllerHeartbeat, stopCh <-chan struct{}, wg *sync.WaitGroup)

Run runs forever until we are notified on stop channel

Jump to

Keyboard shortcuts

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