MountVolumesFeatureStep is a KubernetesFeatureConfigStep.
MountVolumesFeatureStep takes the following to be created:
MountVolumesFeatureStep is created when:
KubernetesDriverBuilderis requested to build a driver pod spec
KubernetesExecutorBuilderis requested for a pod spec for executors
Configuring Driver Pod¶
configurePod( pod: SparkPod): SparkPod
configurePod is part of the KubernetesFeatureConfigStep abstraction.
Adds the volumes to the pod specification
Adds the volume mounts to the container specification
constructVolumes( volumeSpecs: Iterable[KubernetesVolumeSpec]): Iterable[(VolumeMount, Volume)]
constructVolumes creates Kubernetes
Volumes for the given KubernetesVolumeSpecs.
VolumeMounts are built based on the following (4 of 5 properties):
Volumes are build based on the type of the volume (the remaining 5th property).
In the end,
VolumeMounts are wired together using
Claim Name Placeholders¶
MountVolumesFeatureStep defines OnDemand and SPARK_EXECUTOR_ID as placeholders for runtime-replaceable parts of the claim name of a KubernetesPVCVolumeConf.
These placeholders allow for templating claim names to include parts to be replaced at deployment.