You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@yunikorn.apache.org by "Craig Condit (Jira)" <ji...@apache.org> on 2022/12/08 16:30:00 UTC

[jira] [Updated] (YUNIKORN-1463) Add PriorityPolicy informer

     [ https://issues.apache.org/jira/browse/YUNIKORN-1463?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Craig Condit updated YUNIKORN-1463:
-----------------------------------
    Summary: Add PriorityPolicy informer  (was: Add PriortyPolicy informer)

> Add PriorityPolicy informer
> ---------------------------
>
>                 Key: YUNIKORN-1463
>                 URL: https://issues.apache.org/jira/browse/YUNIKORN-1463
>             Project: Apache YuniKorn
>          Issue Type: Sub-task
>          Components: shim - kubernetes
>            Reporter: Craig Condit
>            Assignee: Craig Condit
>            Priority: Major
>
> For preemption, we need to watch for changes to PriorityPolicy objects in Kubernetes in the admission controller / shim. This will be used to update pods with Yunikorn-specific annotations from an associated PriorityPolicy. This should be done in the admission controller, with a fallback to the scheduler if no annotation was present.
>  
> The following annotation can be present either on a pod, or a priority class referenced by a pod:
>  * yunikorn.apache.org/allow-preemption: "true" | "false"
>  ** Whether this pod should be eligible for preemption (default "true"). If set to "false", this pod will be will be avoided for preemption, and will only be considered if no other candidates are possible.
> If the annotation exists and is set to a valid value, it will be preserved by the admission controller.
> If the annotation does not exist or is invalid, but a priority class is set, the value from the priority class will be used.
> If the annotation does not exist in either location, the admission controller will add it with the default value of "true". This is to avoid ambiguity in the scheduler. The scheduler will use this value, and if not present, also query any associated priority class. This allows the admission controller to remain an optional component, and still be able to make use of this functionality. In this mode, recovery could potentially result in different preemption behavior, as the priority class may have changed between pod submission and recovery. Using the admission controller avoids this.
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@yunikorn.apache.org
For additional commands, e-mail: issues-help@yunikorn.apache.org