readiness

package
v1.28.0 Latest Latest
Warning

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

Go to latest
Published: Feb 12, 2024 License: Apache-2.0 Imports: 26 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NegReadinessConditionStatus

func NegReadinessConditionStatus(pod *v1.Pod) (negCondition v1.PodCondition, exists bool)

NegReadinessConditionStatus return (cond, true) if neg condition exists, otherwise (_, false)

func NewPoller

func NewPoller(podLister cache.Indexer, lookup NegLookup, patcher podStatusPatcher, negCloud negtypes.NetworkEndpointGroupCloud, enableDualStackNEG bool, logger klog.Logger) *poller

func SetNegReadinessConditionStatus

func SetNegReadinessConditionStatus(pod *v1.Pod, condition v1.PodCondition)

SetNegReadinessConditionStatus sets the status of the NEG readiness condition

Types

type NegLookup

type NegLookup interface {
	// ReadinessGateEnabledNegs returns a list of NEGs which has readiness gate enabled for the input pod's namespace and labels.
	ReadinessGateEnabledNegs(namespace string, labels map[string]string) []string
	// ReadinessGateEnabled returns true if the NEG requires readiness feedback
	ReadinessGateEnabled(syncerKey negtypes.NegSyncerKey) bool
}

NegLookup defines an interface for looking up pod membership.

type NoopReflector

type NoopReflector struct{}

func (*NoopReflector) CommitPods

func (*NoopReflector) Run

func (*NoopReflector) Run(<-chan struct{})

func (*NoopReflector) SyncPod

func (*NoopReflector) SyncPod(*v1.Pod)

type Reflector

type Reflector interface {
	// Run starts the reflector.
	// Closing stopCh will signal the reflector to stop running.
	Run(stopCh <-chan struct{})
	// SyncPod signals the reflector to evaluate pod and patch pod status if needed.
	SyncPod(pod *v1.Pod)
	// CommitPods signals the reflector that pods has been added to and NEG it is time to poll the NEG health status
	// syncerKey is the key to uniquely identify the NEG syncer
	// negName is the name of the network endpoint group (NEG) in the zone (e.g. k8s1-1234567-namespace-name-80-1234567)
	// zone is the corresponding zone of the NEG resource (e.g. us-central1-b)
	// endpointMap contains mapping from all network endpoints to pods which have been added into the NEG
	CommitPods(syncerKey negtypes.NegSyncerKey, negName string, zone string, endpointMap negtypes.EndpointPodMap)
}

Reflector defines the interaction between readiness reflector and other NEG controller components

func NewReadinessReflector

func NewReadinessReflector(kubeClient kubernetes.Interface, podLister cache.Indexer, negCloud negtypes.NetworkEndpointGroupCloud, lookup NegLookup, enableDualStackNEG bool, logger klog.Logger) Reflector

Jump to

Keyboard shortcuts

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