[ 
https://issues.apache.org/jira/browse/YUNIKORN-462?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17453792#comment-17453792
 ] 

Weiwei Yang commented on YUNIKORN-462:
--------------------------------------

hi [[email protected]], [~wilfreds]

{noformat}
schedulingCycle:
 - select queue
  - select app
    -select request
      - check node condition  (A)
      - allocate  (B)
      - notify the shim
{noformat}

AssumePod happens at B when the core decides to allocate a pod onto a node. The 
predicates checks happen at A. The reason to have A and B in the same loop is, 
in the next scheduling cycle, when we do node condition check, i.e the A step, 
the evaluation of the predicate functions will be based on the latest data. E.g 
pod/node affinity/anti-affinity, volume bindings, ports, IP addresses, etc. 
This needs to happen in a SYNC manner otherwise the next scheduling cycle's 
result might be wrong. E.g pod X is anti-affinity to Y, if we skip calling 
AssumePod at B, then we could end up allocating X and Y onto the same node.

> Streamline core to shim update on allocation change
> ---------------------------------------------------
>
>                 Key: YUNIKORN-462
>                 URL: https://issues.apache.org/jira/browse/YUNIKORN-462
>             Project: Apache YuniKorn
>          Issue Type: Sub-task
>          Components: core - scheduler, shim - kubernetes
>            Reporter: Wilfred Spiegelenburg
>            Assignee: Manikandan R
>            Priority: Major
>
> Currently in the scheduler we have two updates that get send to the shim when 
> an allocation is added or released:
> * event to shim RM event handler to allocate
> * reconciler plugin to update the shim caches
> Before YUNIKORN-317 one update was made in the cace the other in the 
> scheduler. Now they are both in the scheduler in quick succession. The cache 
> update in the shim is needed to make sure that the predicates are seeing the 
> correct info. The event does the real bind etc of the allocation on the node.
> We should be able to fold the two calls into one call. However this requires 
> changes on both sides and might even impact the SI as it will likely become a 
> synced event call.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to