@@ -1625,7 +1625,8 @@ get deallocated as soon as possible once they are not needed anymore.
1625
1625
1626
1626
### kube-scheduler
1627
1627
1628
- The scheduler plugin needs to implement several extension points. It handles
1628
+ The scheduler plugin for ResourceClaims ("claim plugin" in this section)
1629
+ needs to implement several extension points. It handles
1629
1630
communication with a resource driver through the apiserver. The [ volume
1630
1631
binder
1631
1632
plugin] ( https://github.com/kubernetes/kubernetes/tree/master/pkg/scheduler/framework/plugins/volumebinding )
@@ -1637,7 +1638,7 @@ notices this, the current scheduling attempt for the pod must stop and the pod
1637
1638
needs to be put back into the work queue. It then gets retried whenever a
1638
1639
ResourceClaim gets added or modified.
1639
1640
1640
- The following extension points are implemented in the new plugin:
1641
+ The following extension points are implemented in the new claim plugin:
1641
1642
1642
1643
#### Pre-filter
1643
1644
@@ -1667,7 +1668,7 @@ reasons why such a deny list is more suitable than an allow list:
1667
1668
times. Forcing such drivers to set an allow list would cause unnecessary
1668
1669
work.
1669
1670
1670
- In its state for the Pod the scheduler plugin must remember when it rejected a
1671
+ In its state for the Pod the claim plugin must remember when it rejected a
1671
1672
node because of UnsuitableNodes. That information will be used in Post-filter
1672
1673
to deallocate resources.
1673
1674
@@ -1693,15 +1694,15 @@ ResourceClaim, if there is one. To prevent deallocating all resources merely
1693
1694
because the scheduler happens to check quickly, the next deallocation will only
1694
1695
requested when there is none currently pending.
1695
1696
1696
- At the moment, the scheduler has no information that might enable it to
1697
+ At the moment, the claim plugin has no information that might enable it to
1697
1698
prioritize which resource to deallocate first. Future extensions of this KEP
1698
1699
might attempt to improve this.
1699
1700
1700
1701
#### Pre-score
1701
1702
1702
- This is passed a list of nodes that have passed filtering by the resource
1703
- plugin and the other plugins. That list is stored by the plugin and will
1704
- be copied to PodSchedulingSpec.PotentialNodes when the plugin creates or updates
1703
+ This is passed a list of nodes that have passed filtering by the claim
1704
+ plugin and the other plugins. That list is stored by the claim plugin and will
1705
+ be copied to PodSchedulingSpec.PotentialNodes when the claim plugin creates or updates
1705
1706
the object in Reserve.
1706
1707
1707
1708
Pre-score is not called when there is only a single potential node. In that
@@ -1712,7 +1713,7 @@ case Reserve will store the selected node in PodSchedulingSpec.PotentialNodes.
1712
1713
A node has been chosen for the Pod.
1713
1714
1714
1715
If using delayed allocation and one or more claims have not been allocated yet,
1715
- the plugin now needs to decide whether it wants to trigger allocation by
1716
+ the claim plugin now needs to decide whether it wants to trigger allocation by
1716
1717
setting the PodSchedulingSpec.SelectedNode field. For a single unallocated
1717
1718
claim that is safe even if no information about unsuitable nodes is available
1718
1719
because the allocation will either succeed or fail. For multiple such claims
@@ -1722,7 +1723,7 @@ PodScheduling object gets created or updated as needed. This is also where the
1722
1723
PodSchedulingSpec.PotentialNodes field gets set.
1723
1724
1724
1725
If all resources have been allocated already,
1725
- the scheduler ensures that the Pod is listed in the ` claim.status.reservedFor ` field
1726
+ the claim plugin ensures that the Pod is listed in the ` claim.status.reservedFor ` field
1726
1727
of its ResourceClaims. The driver can and should already have added
1727
1728
the Pod when specifically allocating the claim for it, so it may
1728
1729
be possible to skip this update.
@@ -1733,7 +1734,7 @@ or when the statuses change.
1733
1734
1734
1735
#### Unreserve
1735
1736
1736
- The scheduler removes the Pod from the ResourceClaimStatus.ReservedFor field
1737
+ The claim plugin removes the Pod from the ` claim.status.reservedFor ` field
1737
1738
because it cannot be scheduled after all.
1738
1739
1739
1740
This is necessary to prevent a deadlock: suppose there are two stand-alone
0 commit comments