Skip to content

Conversation

@Yikun
Copy link
Member

@Yikun Yikun commented Feb 8, 2022

What changes were proposed in this pull request?

This patch inroduces 5 scheduling related configurations:

  • spark.kubernetes.job.queue: The name of the queue to which the job is submitted.
  • spark.kubernetes.job.minCPU: The minimum CPU for running the job.
  • spark.kubernetes.job.minMemory: The minimum memory for running the job, in MiB unless otherwise specified.
  • spark.kubernetes.job.minMember: The minimum number of pods running in a job.
  • spark.kubernetes.job.priorityClassName: The priority of the running job.

These info will be stored in configuration and passed to specified feature step, such as it will be used by Yunikorn/Volcano feature step.

Why are the changes needed?

This PR help user integrate Spark with Volcano Scheduler to enable minResource/queue/priority support.

See also: SPARK-36057

Does this PR introduce any user-facing change?

Yes, configuration added.

How was this patch tested?

CI passed

@Yikun Yikun marked this pull request as ready for review February 8, 2022 12:30
.version("3.3.0")
.intConf
.checkValue(value => value > 0, "The minimum number should be a positive integer")
.createWithDefault(1)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

does this mean that the driver and the executor(s) will be on the same pod ?

Copy link
Member Author

@Yikun Yikun Feb 8, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No, it's for driver, in the case of spot instance, we allow user only create driver pod first. So, it's equivalent to no limit by default.

Copy link
Member

@dongjoon-hyun dongjoon-hyun left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sorry, but -1. Apache Spark doesn't add the configuration first like this.

@dongjoon-hyun
Copy link
Member

It seems that you are confused. Please provide a complete working PR with the test coverage.
When I meant a separate PR, it means the rest of configurations can be added separately when you add those new features (with test cases).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants