multicluster

package
v1.11.0 Latest Latest
Warning

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

Go to latest
Published: Mar 23, 2023 License: Apache-2.0 Imports: 29 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type MCDefaultRouteController added in v1.11.0

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

MCDefaultRouteController watches Gateway and ClusterInfoImport events. It is responsible for setting up necessary Openflow entries for multi-cluster traffic on a Gateway or a regular Node.

func NewMCDefaultRouteController added in v1.11.0

func NewMCDefaultRouteController(
	mcClient mcclientset.Interface,
	gwInformer mcinformersv1alpha1.GatewayInformer,
	ciImportInformer mcinformersv1alpha1.ClusterInfoImportInformer,
	client openflow.Client,
	nodeConfig *config.NodeConfig,
	enableStretchedNetworkPolicy bool,
	enablePodToPodConnectivity bool,
) *MCDefaultRouteController

func (*MCDefaultRouteController) Run added in v1.11.0

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

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

type MCPodRouteController added in v1.11.0

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

MCPodRouteController generates L3 forwarding flows to forward cross-cluster traffic from MC Gateway to Pods on other Nodes inside a member cluster. It is required when networkPolicyOnly, noEncap or hybrid mode are configured, to forward the traffic through tunnels between Gateway and other Nodes, as otherwise the traffic will not go through tunnels in those modes.

func NewMCPodRouteController added in v1.11.0

func NewMCPodRouteController(
	k8sClient kubernetes.Interface,
	gwInformer v1alpha1.GatewayInformer,
	client openflow.Client,
	nodeConfig *config.NodeConfig,
) *MCPodRouteController

func (*MCPodRouteController) Run added in v1.11.0

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

type StretchedNetworkPolicyController added in v1.10.0

type StretchedNetworkPolicyController struct {
	LabelIdentityListerSynced cache.InformerSynced
	// contains filtered or unexported fields
}

StretchedNetworkPolicyController is used to update classifier flows of Pods. It will make sure the latest LabelIdentity of the Pod, if available, will be loaded into tun_id in the classifier flow of the Pod. If the LabelIdentity of the Pod is not available when updating, the UnknownLabelIdentity will be loaded. When the actual LabelIdentity is created, the classifier flow will be updated accordingly.

func NewMCAgentStretchedNetworkPolicyController added in v1.10.0

func NewMCAgentStretchedNetworkPolicyController(
	client openflow.Client,
	interfaceStore interfacestore.InterfaceStore,
	podInformer cache.SharedIndexInformer,
	namespaceInformer coreinformers.NamespaceInformer,
	labelIdentityInformer mcinformers.LabelIdentityInformer,
	podUpdateSubscriber channel.Subscriber,
) *StretchedNetworkPolicyController

func (*StretchedNetworkPolicyController) Run added in v1.10.0

func (s *StretchedNetworkPolicyController) Run(stopCh <-chan struct{})

Jump to

Keyboard shortcuts

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