Releases: mbrtargeting/airflow-spark-on-k8s-job-builder
Releases · mbrtargeting/airflow-spark-on-k8s-job-builder
v0.4.2
v0.4.1
v0.4.0
v0.3.3
What's Changed
- setting a CPU request no longer also sets a limit automatically
- if you need to set a CPU limit on a driver/executor, call
set_executor_cores_limit()
orset_driver_cores_limit()
on the builder - those methods can also be explicitly passed
None
to disable limits - otherwise the value passed must be an int that is at least 1 and greater than the requested CPUs
Why the change
Most k8s clusters are running pods as Docker containers, and so CPU limits are implemented using the kernel's ability to schedule processes on the CPU. In our experience, this can cause instability and poor performance for some applications. Most importantly, it can also result in poor resource utilisation on the node. Without the limit, the pods can use as much CPU as is available on the node, which can make workloads perform better.