noderoute

package
Version: v1.7.1 Latest Latest
Warning

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

Go to latest
Published: Jul 14, 2022 License: Apache-2.0 Imports: 26 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ParseTunnelInterfaceConfig

func ParseTunnelInterfaceConfig(
	portData *ovsconfig.OVSPortData,
	portConfig *interfacestore.OVSPortConfig) *interfacestore.InterfaceConfig

ParseTunnelInterfaceConfig initializes and returns an InterfaceConfig struct for a tunnel interface. It reads tunnel type, remote IP, IPsec PSK from the OVS interface options, and NodeName from the OVS port external_ids. nil is returned, if the OVS port and interface configurations are not valid for a tunnel interface.

Types

type Controller

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

Controller is responsible for setting up necessary IP routes and Openflow entries for inter-node traffic.

func NewNodeRouteController

func NewNodeRouteController(
	kubeClient clientset.Interface,
	informerFactory informers.SharedInformerFactory,
	client openflow.Client,
	ovsBridgeClient ovsconfig.OVSBridgeClient,
	routeClient route.Interface,
	interfaceStore interfacestore.InterfaceStore,
	networkConfig *config.NetworkConfig,
	nodeConfig *config.NodeConfig,
	wireguardClient wireguard.Interface,
	proxyAll bool,
	ipsecCertificateManager ipseccertificate.Manager,
) *Controller

NewNodeRouteController instantiates a new Controller object which will process Node events and ensure connectivity between different Nodes.

func (*Controller) IPInPodSubnets

func (c *Controller) IPInPodSubnets(ip net.IP) bool

func (*Controller) Run

func (c *Controller) Run(stopCh <-chan struct{})

Run will create defaultWorkers workers (go routines) which will process the Node events from the workqueue.

Jump to

Keyboard shortcuts

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