Documentation ¶
Index ¶
- Constants
- func NewFRRK8sConfigEvent() event.GenericEvent
- func NewL2StatusEvent(namespace, name string) event.GenericEvent
- func NewReloadEvent() event.GenericEvent
- func NodeReconcilerPredicate() predicate.Predicate
- type ConfigReconciler
- type FRRK8sReconciler
- type Layer2StatusReconciler
- type NeedEndPoints
- type NodeReconciler
- type PoolReconciler
- type ServiceReconciler
- type StatusFetcher
- type SyncState
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
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) 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) 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) 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) 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) 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) 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 )
Click to show internal directories.
Click to hide internal directories.