From 26d93c512af6d2d131757f6acb57adc28a741c6c Mon Sep 17 00:00:00 2001 From: Michelle Au Date: Mon, 24 Sep 2018 15:44:38 -0700 Subject: [PATCH] Update volume topology doc with 1.12 design changes --- .../storage/volume-topology-scheduling.md | 65 +++++++++--------- .../storage/volume-topology-scheduling.png | Bin 22054 -> 41339 bytes 2 files changed, 33 insertions(+), 32 deletions(-) diff --git a/contributors/design-proposals/storage/volume-topology-scheduling.md b/contributors/design-proposals/storage/volume-topology-scheduling.md index a3c9cfe75..b9234afd6 100644 --- a/contributors/design-proposals/storage/volume-topology-scheduling.md +++ b/contributors/design-proposals/storage/volume-topology-scheduling.md @@ -609,9 +609,8 @@ Kubernetes will leave validation and enforcement of the AllowedTopologies conten to the provisioner. Support in the GCE PD and AWS EBS provisioners for the existing `zone` and `zones` -parameters will not be deprecated due to the CSI in-tree migration requirement -of CSI plugins supporting all the previous functionality of in-tree plugins, and -CSI plugin versioning being independent of Kubernetes versions. +parameters will be deprecated. CSI in-tree migration will handle translation of +`zone` and `zones` parameters to CSI topology. Admins must already create a new StorageClass with delayed volume binding to use this feature, so the documentation can encourage use of the AllowedTopologies @@ -736,15 +735,10 @@ allowedTopologies: ## Feature Gates -PersistentVolume.NodeAffinity and StorageClass.BindingMode fields will be -controlled by the VolumeScheduling feature gate, and must be configured in the +All functionality is controlled by the VolumeScheduling feature gate, +and must be configured in the kube-scheduler, kube-controller-manager, and all kubelets. -The StorageClass.AllowedTopologies field will be controlled -by the DynamicProvisioningScheduling feature gate, and must be configured in the -kube-scheduler and kube-controller-manager. - - ## Integrating volume binding with pod scheduling For the new volume binding mode, the proposed new workflow is: 1. Admin pre-provisions PVs and/or StorageClasses. @@ -753,30 +747,34 @@ For the new volume binding mode, the proposed new workflow is: references it. 4. User creates a pod that uses the PVC. 5. Pod starts to get processed by the scheduler. -6. **NEW:** A new predicate function, called CheckVolumeBinding, will process +6. Scheduler processes predicates. +7. **NEW:** A new predicate function, called CheckVolumeBinding, will process both bound and unbound PVCs of the Pod. It will validate the VolumeNodeAffinity for bound PVCs. For unbound PVCs, it will try to find matching PVs for that node based on the PV NodeAffinity. If there are no matching PVs, then it checks if dynamic provisioning is possible for that node based on StorageClass AllowedTopologies. -7. **NEW:** The scheduler continues to evaluate priorities. A new priority +8. The scheduler continues to evaluate priority functions +9. **NEW:** A new priority function, called PrioritizeVolumes, will get the PV matches per PVC per node, and compute a priority score based on various factors. -8. **NEW:** After evaluating all the existing predicates and priorities, the -scheduler will pick a node, and call a new assume function, AssumePodVolumes, -passing in the Node. The assume function will check if any binding or +10. After evaluating all the predicates and priorities, the +scheduler will pick a node. +11. **NEW:** A new assume function, AssumePodVolumes, is called by the scheduler. +The assume function will check if any binding or provisioning operations need to be done. If so, it will update the PV cache to mark the PVs with the chosen PVCs and queue the Pod for volume binding. -9. **NEW:** If PVC binding or provisioning is required, we do NOT AssumePod. -Instead, a new bind function, BindPodVolumes, will be called asynchronously, passing +12. AssumePod is done by the scheduler. +13. **NEW:** If PVC binding or provisioning is required, a new bind function, +BindPodVolumes, will be called asynchronously, passing in the selected node. The bind function will prebind the PV to the PVC, or -trigger dynamic provisioning. Then, it always sends the Pod through the -scheduler again for reasons explained later. -10. When a Pod makes a successful scheduler pass once all PVCs are bound, the -scheduler assumes and binds the Pod to a Node. -11. Kubelet starts the Pod. +trigger dynamic provisioning. Then, it waits for the binding or provisioning +operation to complete. +14. In the same async thread, scheduler binds the Pod to a Node. +15. Kubelet starts the Pod. This diagram depicts the new additions to the default scheduler: + ![alt text](volume-topology-scheduling.png) This new workflow will have the scheduler handle unbound PVCs by choosing PVs @@ -908,12 +906,14 @@ AssumePodVolumes(pod *v1.pod, node *v1.node) (pvcbindingrequired bool, err error 4. Return true #### Bind -If AssumePodVolumes returns pvcBindingRequired, then Pod is queued for volume -binding and provisioning. A separate go routine will process this queue and -call the BindPodVolumes function. +A separate go routine performs the binding operation for the Pod. -Otherwise, we can continue with assuming and binding the Pod -to the Node. +If AssumePodVolumes returns pvcBindingRequired, then BindPodVolumes is called +first in this go routine. It will handle binding and provisioning of PVCs that +were assumed, and wait for the operations to complete. + +Once complete, or if no volumes need to be bound, then the scheduler continues +binding the Pod to the Node. For the alpha phase, the BindPodVolumes function will be directly called by the scheduler. We’ll consider creating a generic scheduler interface in a subsequent @@ -927,11 +927,12 @@ BindPodVolumes(pod *v1.Pod, node *v1.Node) (err error) 2. If the prebind fails, revert the cache updates. 2. For in-tree and external dynamic provisioning: 1. Set `annSelectedNode` on the PVC. -3. Send Pod back through scheduling, regardless of success or failure. - 1. In the case of success, we need one more pass through the scheduler in -order to evaluate other volume predicates that require the PVC to be bound, as -described below. - 2. In the case of failure, we want to retry binding/provisioning. +3. Wait for binding and provisioning to complete. + 1. In the case of failure, error is returned and the Pod will retry + scheduling. Failure scenarios include: + * PV or PVC got deleted + * PV.ClaimRef got cleared + * PVC selectedNode annotation got cleared or is set to the wrong node TODO: pv controller has a high resync frequency, do we need something similar for the scheduler too diff --git a/contributors/design-proposals/storage/volume-topology-scheduling.png b/contributors/design-proposals/storage/volume-topology-scheduling.png index b952ff39b0836e371b0d89e2c43e1fc1d414ccdd..0e724aef35444b940d05ed3367c917de4b8cb485 100644 GIT binary patch literal 41339 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