kubernetes: k8s.io/kubernetes/pkg/kubelet/preemption Index | Files

package preemption

import "k8s.io/kubernetes/pkg/kubelet/preemption"


Package Files


type CriticalPodAdmissionHandler Uses

type CriticalPodAdmissionHandler struct {
    // contains filtered or unexported fields

CriticalPodAdmissionHandler is an AdmissionFailureHandler that handles admission failure for Critical Pods. If the ONLY admission failures are due to insufficient resources, then CriticalPodAdmissionHandler evicts pods so that the critical pod can be admitted. For evictions, the CriticalPodAdmissionHandler evicts a set of pods that frees up the required resource requests. The set of pods is designed to minimize impact, and is prioritized according to the ordering: minimal impact for guaranteed pods > minimal impact for burstable pods > minimal impact for besteffort pods. minimal impact is defined as follows: fewest pods evicted > fewest total requests of pods. finding the fewest total requests of pods is considered besteffort.

func NewCriticalPodAdmissionHandler Uses

func NewCriticalPodAdmissionHandler(getPodsFunc eviction.ActivePodsFunc, killPodFunc eviction.KillPodFunc, recorder record.EventRecorder) *CriticalPodAdmissionHandler

func (*CriticalPodAdmissionHandler) HandleAdmissionFailure Uses

func (c *CriticalPodAdmissionHandler) HandleAdmissionFailure(admitPod *v1.Pod, failureReasons []lifecycle.PredicateFailureReason) ([]lifecycle.PredicateFailureReason, error)

HandleAdmissionFailure gracefully handles admission rejection, and, in some cases, to allow admission of the pod despite its previous failure.

Package preemption imports 13 packages (graph) and is imported by 1 packages. Updated 2020-05-29. Refresh now. Tools for package owners.