controllers

package
v0.17.1 Latest Latest
Warning

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

Go to latest
Published: Apr 16, 2024 License: Apache-2.0 Imports: 57 Imported by: 0

Documentation

Index

Constants

View Source
const (
	ServiceRefLabel = "submariner.io/serviceRef"

	// InternalServicePrefix is a prefix used for internal services.
	InternalServicePrefix = "submariner-"

	// InternalServiceLabel is a label applied on the internal service created by Globalnet controller and
	// it points to the exported service.
	InternalServiceLabel = "submariner.io/exportedServiceRef"

	// InternalServiceFinalizer is applied on the internal services created by Globalnet controller
	// to protect them from accidental deletion.
	InternalServiceFinalizer = "submariner.io/globalnet-internal-service"

	// The prefix used for the ipset chains created by Globalnet pod.
	IPSetPrefix = "SM-GN-"

	AddRules    = true
	DeleteRules = false

	DefaultNumberOfClusterEgressIPs = 8

	LeaderElectionLockName = "submariner-globalnet-lock"
)

Variables

This section is empty.

Functions

func DeleteGlobalnetObjects added in v0.12.0

func DeleteGlobalnetObjects(smClientSet *versioned.Clientset, cfg *rest.Config)

func GetInternalSvcName added in v0.12.0

func GetInternalSvcName(name string) string

func NewGlobalIngressIPController

func NewGlobalIngressIPController(config *syncer.ResourceSyncerConfig, pool *ipam.IPPool) (*globalIngressIPController, error)

func NewServiceExportController

func NewServiceExportController(config *syncer.ResourceSyncerConfig, podControllers *IngressPodControllers,
	endpointsControllers *ServiceExportEndpointsControllers,
	ingressEndpointsControllers *IngressEndpointsControllers,
) (*serviceExportController, error)

func RemoveGlobalIPAnnotationOnNode added in v0.12.1

func RemoveGlobalIPAnnotationOnNode(cfg *rest.Config)

func RemoveStaleInternalServices added in v0.15.0

func RemoveStaleInternalServices(config *syncer.ResourceSyncerConfig) error

func UninstallDataPath added in v0.12.0

func UninstallDataPath()

Types

type GatewayMonitorConfig added in v0.16.1

type GatewayMonitorConfig struct {
	RestMapper meta.RESTMapper
	Client     dynamic.Interface
	Scheme     *runtime.Scheme
	LeaderElectionConfig
	Spec       Specification
	LocalCIDRs []string
	KubeClient kubernetes.Interface
	Hostname   string
}

type IngressEndpointsControllers added in v0.13.0

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

func NewIngressEndpointsControllers added in v0.13.0

func NewIngressEndpointsControllers(config *syncer.ResourceSyncerConfig) (*IngressEndpointsControllers, error)

type IngressPodControllers

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

func NewIngressPodControllers

func NewIngressPodControllers(config *syncer.ResourceSyncerConfig) (*IngressPodControllers, error)

type Interface

type Interface interface {
	Start() error
	Stop()
}

func NewClusterGlobalEgressIPController

func NewClusterGlobalEgressIPController(config *syncer.ResourceSyncerConfig, localSubnets []string,
	pool *ipam.IPPool,
) (Interface, error)

func NewGatewayMonitor

func NewGatewayMonitor(config *GatewayMonitorConfig) (Interface, error)

func NewGlobalEgressIPController

func NewGlobalEgressIPController(config *syncer.ResourceSyncerConfig, pool *ipam.IPPool) (Interface, error)

func NewNodeController

func NewNodeController(config *syncer.ResourceSyncerConfig, pool *ipam.IPPool, nodeName string) (Interface, error)

func NewServiceController

func NewServiceController(config *syncer.ResourceSyncerConfig, podControllers *IngressPodControllers, serviceExportSyncer syncer.Interface,
	gipSyncer syncer.Interface,
) (Interface, error)

type LeaderElectionConfig added in v0.16.1

type LeaderElectionConfig struct {
	LeaseDuration time.Duration
	RenewDeadline time.Duration
	RetryPeriod   time.Duration
}

type LeaderElectionInfo added in v0.16.1

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

type ServiceExportEndpointsControllers added in v0.12.0

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

func NewServiceExportEndpointsControllers added in v0.12.0

func NewServiceExportEndpointsControllers(config *syncer.ResourceSyncerConfig) (*ServiceExportEndpointsControllers, error)

type Specification

type Specification struct {
	ClusterID   string
	Namespace   string
	GlobalCIDR  []string
	MetricsPort int `default:"32781"`
	Uninstall   bool
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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