package core

import "k8s.io/kubernetes/pkg/quota/v1/evaluator/core"

Package core contains modules that interface with the core api group

Index

Variables

var ClaimObjectCountName = generic.ObjectCountQuotaResourceNameFor(resourceapi.SchemeGroupVersion.WithResource("resourceclaims").GroupResource())

The name used for object count quota. This evaluator takes over counting those because of it's GroupResource, so it has to implement this count.

Functions

func GetQuotaServiceType

func GetQuotaServiceType(service *corev1.Service) corev1.ServiceType

GetQuotaServiceType returns ServiceType if the service type is eligible to track against a quota, nor return ""

func IsTerminating

func IsTerminating(pod *corev1.Pod) bool

func NewEvaluators

func NewEvaluators(f quota.ListerForResourceFunc) []quota.Evaluator

NewEvaluators returns the list of static evaluators that manage more than counts

func NewPersistentVolumeClaimEvaluator

func NewPersistentVolumeClaimEvaluator(f quota.ListerForResourceFunc) quota.Evaluator

NewPersistentVolumeClaimEvaluator returns an evaluator that can evaluate persistent volume claims

func NewPodEvaluator

func NewPodEvaluator(f quota.ListerForResourceFunc, clock clock.Clock) quota.Evaluator

NewPodEvaluator returns an evaluator that can evaluate pods

func NewResourceClaimEvaluator

func NewResourceClaimEvaluator(f quota.ListerForResourceFunc) quota.Evaluator

NewResourceClaimEvaluator returns an evaluator that can evaluate resource claims

func NewServiceEvaluator

func NewServiceEvaluator(f quota.ListerForResourceFunc) quota.Evaluator

NewServiceEvaluator returns an evaluator that can evaluate services.

func PodUsageFunc

func PodUsageFunc(obj runtime.Object, clock clock.Clock) (corev1.ResourceList, error)

PodUsageFunc returns the quota usage for a pod. A pod is charged for quota if the following are not true.

func QuotaV1Pod

func QuotaV1Pod(pod *corev1.Pod, clock clock.Clock) bool

QuotaV1Pod returns true if the pod is eligible to track against a quota if it's not in a terminal state according to its phase.

func RequiresQuotaReplenish

func RequiresQuotaReplenish(pvc, oldPVC *corev1.PersistentVolumeClaim) bool

RequiresQuotaReplenish enables quota monitoring for PVCs.

func V1ResourceByDeviceClass

func V1ResourceByDeviceClass(className string) corev1.ResourceName

V1ResourceByDeviceClass returns a quota resource name by device class.

func V1ResourceByStorageClass

func V1ResourceByStorageClass(storageClass string, resourceName corev1.ResourceName) corev1.ResourceName

V1ResourceByStorageClass returns a quota resource name by storage class.

Source Files

doc.go persistent_volume_claims.go pods.go registry.go resource_claims.go services.go

Version
v1.33.0 (latest)
Published
Apr 23, 2025
Platform
linux/amd64
Imports
25 packages
Last checked
3 hours ago

Tools for package owners.