Skip to content

Commit 89c3b5f

Browse files
committed
dynamic resource allocation: consistent naming in scheduler section
"The scheduler" is now the core scheduler logic and "the claim plugin" is the new scheduler plugin which handles ResourceClaims.
1 parent 86726f8 commit 89c3b5f

File tree

1 file changed

+11
-10
lines changed
  • keps/sig-node/3063-dynamic-resource-allocation

1 file changed

+11
-10
lines changed

keps/sig-node/3063-dynamic-resource-allocation/README.md

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1625,7 +1625,8 @@ get deallocated as soon as possible once they are not needed anymore.
16251625

16261626
### kube-scheduler
16271627

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
16291630
communication with a resource driver through the apiserver. The [volume
16301631
binder
16311632
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
16371638
needs to be put back into the work queue. It then gets retried whenever a
16381639
ResourceClaim gets added or modified.
16391640

1640-
The following extension points are implemented in the new plugin:
1641+
The following extension points are implemented in the new claim plugin:
16411642

16421643
#### Pre-filter
16431644

@@ -1667,7 +1668,7 @@ reasons why such a deny list is more suitable than an allow list:
16671668
times. Forcing such drivers to set an allow list would cause unnecessary
16681669
work.
16691670

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
16711672
node because of UnsuitableNodes. That information will be used in Post-filter
16721673
to deallocate resources.
16731674

@@ -1693,15 +1694,15 @@ ResourceClaim, if there is one. To prevent deallocating all resources merely
16931694
because the scheduler happens to check quickly, the next deallocation will only
16941695
requested when there is none currently pending.
16951696

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
16971698
prioritize which resource to deallocate first. Future extensions of this KEP
16981699
might attempt to improve this.
16991700

17001701
#### Pre-score
17011702

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
17051706
the object in Reserve.
17061707

17071708
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.
17121713
A node has been chosen for the Pod.
17131714

17141715
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
17161717
setting the PodSchedulingSpec.SelectedNode field. For a single unallocated
17171718
claim that is safe even if no information about unsuitable nodes is available
17181719
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
17221723
PodSchedulingSpec.PotentialNodes field gets set.
17231724

17241725
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
17261727
of its ResourceClaims. The driver can and should already have added
17271728
the Pod when specifically allocating the claim for it, so it may
17281729
be possible to skip this update.
@@ -1733,7 +1734,7 @@ or when the statuses change.
17331734

17341735
#### Unreserve
17351736

1736-
The scheduler removes the Pod from the ResourceClaimStatus.ReservedFor field
1737+
The claim plugin removes the Pod from the `claim.status.reservedFor` field
17371738
because it cannot be scheduled after all.
17381739

17391740
This is necessary to prevent a deadlock: suppose there are two stand-alone

0 commit comments

Comments
 (0)