6c805470a7
### What changes were proposed in this pull request? This PR aims to support dynamic PVC creation and deletion in K8s driver. **Configuration** This PR reuses the existing PVC volume configs. ``` spark.kubernetes.driver.volumes.persistentVolumeClaim.spark-local-dir-1.options.claimName=OnDemand spark.kubernetes.driver.volumes.persistentVolumeClaim.spark-local-dir-1.options.storageClass=gp2 spark.kubernetes.driver.volumes.persistentVolumeClaim.spark-local-dir-1.options.sizeLimit=200Gi spark.kubernetes.driver.volumes.persistentVolumeClaim.spark-local-dir-1.mount.path=/data spark.kubernetes.driver.volumes.persistentVolumeClaim.spark-local-dir-1.mount.readOnly=false ``` **PVC** ``` $ kubectl get pvc | grep driver tpcds-d6087874c6705564-driver-pvc-0 Bound pvc-fae914a2-ca5c-4e1e-8aba-54a35357d072 200Gi RWO gp2 12m ``` **Disk** ``` $ k exec -it tpcds-d6087874c6705564-driver -- df -h | grep data /dev/nvme5n1 197G 61M 197G 1% /data ``` ``` $ k exec -it tpcds-d6087874c6705564-driver -- ls -al /data total 28 drwxr-xr-x 5 root root 4096 Sep 25 18:06 . drwxr-xr-x 1 root root 63 Sep 25 18:06 .. drwxr-xr-x 66 root root 4096 Sep 25 18:09 blockmgr-2c9a8cc5-a05c-45fe-a58e-b8f42da88a57 drwx------ 2 root root 16384 Sep 25 18:06 lost+found drwx------ 4 root root 4096 Sep 25 18:07 spark-0448efe7-da2c-4f3a-bd3c-769aadb11dd6 ``` **NOTE** This should be used carefully because Apache Spark doesn't delete driver pod automatically. Since the driver PVC shares the lifecycle of driver pod, it will exist after the job completion until the pod deletion. However, if the users are already using pre-populated PVCs, this isn't a regression at all in terms of the cost. ``` $ k get pod -l spark-role=driver NAME READY STATUS RESTARTS AGE tpcds-d6087874c6705564-driver 0/1 Completed 0 35m ``` ### Why are the changes needed? Like executors, driver also needs larger PVC. ### Does this PR introduce _any_ user-facing change? Yes. This is a new feature. ### How was this patch tested? Pass the newly added test case. Closes #29873 from dongjoon-hyun/SPARK-32997. Authored-by: Dongjoon Hyun <dhyun@apple.com> Signed-off-by: Dongjoon Hyun <dhyun@apple.com> |
||
---|---|---|
.. | ||
kubernetes | ||
mesos | ||
yarn |