controllers

package
v0.14.9 Latest Latest
Warning

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

Go to latest
Published: Dec 17, 2024 License: Apache-2.0 Imports: 37 Imported by: 0

Documentation

Index

Constants

View Source
const (
	LabelAnnounceNode     = "metallb.io/node"
	LabelServiceName      = "metallb.io/service-name"
	LabelServiceNamespace = "metallb.io/service-namespace"
)

Variables

This section is empty.

Functions

func NewFRRK8sConfigEvent added in v0.14.0

func NewFRRK8sConfigEvent() event.GenericEvent

func NewL2StatusEvent added in v0.14.4

func NewL2StatusEvent(namespace, name string) event.GenericEvent

func NewReloadEvent

func NewReloadEvent() event.GenericEvent

func NodeReconcilerPredicate added in v0.14.9

func NodeReconcilerPredicate() predicate.Predicate

Types

type ConfigReconciler

type ConfigReconciler struct {
	client.Client
	Logger         log.Logger
	Scheme         *runtime.Scheme
	Namespace      string
	Handler        func(log.Logger, *config.Config) SyncState
	ValidateConfig config.Validate
	ForceReload    func()
	BGPType        string
	// contains filtered or unexported fields
}

func (*ConfigReconciler) Reconcile

func (r *ConfigReconciler) Reconcile(ctx context.Context, req ctrl.Request) (ctrl.Result, error)

func (*ConfigReconciler) SetupWithManager

func (r *ConfigReconciler) SetupWithManager(mgr ctrl.Manager) error

type FRRK8sReconciler added in v0.14.0

type FRRK8sReconciler struct {
	client.Client
	Logger          log.Logger
	LogLevel        logging.Level
	Scheme          *runtime.Scheme
	NodeName        string
	FRRK8sNamespace string

	sync.Mutex
	// contains filtered or unexported fields
}

func (*FRRK8sReconciler) Reconcile added in v0.14.0

func (r *FRRK8sReconciler) Reconcile(ctx context.Context, req ctrl.Request) (ctrl.Result, error)

func (*FRRK8sReconciler) SetupWithManager added in v0.14.0

func (r *FRRK8sReconciler) SetupWithManager(mgr ctrl.Manager) error

func (*FRRK8sReconciler) UpdateConfig added in v0.14.0

func (r *FRRK8sReconciler) UpdateConfig(config interface{})

type Layer2StatusReconciler added in v0.14.4

type Layer2StatusReconciler struct {
	client.Client
	Logger        log.Logger
	NodeName      string
	Namespace     string
	SpeakerPod    *v1.Pod
	ReconcileChan <-chan event.GenericEvent
	// fetch ipAdv object to get interface info
	StatusFetcher StatusFetcher
}

func (*Layer2StatusReconciler) Reconcile added in v0.14.4

func (r *Layer2StatusReconciler) Reconcile(ctx context.Context, req ctrl.Request) (ctrl.Result, error)

func (*Layer2StatusReconciler) SetupWithManager added in v0.14.4

func (r *Layer2StatusReconciler) SetupWithManager(mgr ctrl.Manager) error

type NeedEndPoints

type NeedEndPoints int
const (
	NoNeed NeedEndPoints = iota
	Endpoints
	EndpointSlices
)

type NodeReconciler

type NodeReconciler struct {
	client.Client
	Logger      log.Logger
	Scheme      *runtime.Scheme
	NodeName    string
	Namespace   string
	Handler     func(log.Logger, *corev1.Node) SyncState
	ForceReload func()
}

func (*NodeReconciler) Reconcile

func (r *NodeReconciler) Reconcile(ctx context.Context, req ctrl.Request) (ctrl.Result, error)

func (*NodeReconciler) SetupWithManager

func (r *NodeReconciler) SetupWithManager(mgr ctrl.Manager) error

type PoolReconciler

type PoolReconciler struct {
	client.Client
	Logger         log.Logger
	Scheme         *runtime.Scheme
	Namespace      string
	Handler        func(log.Logger, *config.Pools) SyncState
	ValidateConfig config.Validate
	ForceReload    func()
	// contains filtered or unexported fields
}

func (*PoolReconciler) Reconcile

func (r *PoolReconciler) Reconcile(ctx context.Context, req ctrl.Request) (ctrl.Result, error)

func (*PoolReconciler) SetupWithManager

func (r *PoolReconciler) SetupWithManager(mgr ctrl.Manager) error

type ServiceReconciler

type ServiceReconciler struct {
	client.Client
	Logger            log.Logger
	Scheme            *runtime.Scheme
	Namespace         string
	Handler           func(log.Logger, string, *v1.Service, []discovery.EndpointSlice) SyncState
	Endpoints         bool
	LoadBalancerClass string
	Reload            chan event.GenericEvent
	// contains filtered or unexported fields
}

func (*ServiceReconciler) Reconcile

func (r *ServiceReconciler) Reconcile(ctx context.Context, req ctrl.Request) (ctrl.Result, error)

func (*ServiceReconciler) SetupWithManager

func (r *ServiceReconciler) SetupWithManager(mgr ctrl.Manager) error

type StatusFetcher added in v0.14.4

type StatusFetcher func(types.NamespacedName) []layer2.IPAdvertisement

type SyncState

type SyncState int

SyncState is the result of calling synchronization callbacks.

const (
	// The update was processed successfully.
	SyncStateSuccess SyncState = iota
	// The update caused a transient error, the k8s client should
	// retry later.
	SyncStateError
	// The update was accepted, but requires reprocessing all watched
	// services.
	SyncStateReprocessAll
	// The update caused a non transient error, the k8s client should
	// just report and giveup.
	SyncStateErrorNoRetry
)

Jump to

Keyboard shortcuts

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