You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@spark.apache.org by "Elad Dolev (JIRA)" <ji...@apache.org> on 2019/02/28 08:34:00 UTC

[jira] [Commented] (SPARK-24353) Add support for pod affinity/anti-affinity

    [ https://issues.apache.org/jira/browse/SPARK-24353?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16780257#comment-16780257 ] 

Elad Dolev commented on SPARK-24353:
------------------------------------

Hi [~vanzin],

You must be referring to PodPreset, and no, they do not support affinity and tolerations.

This is a very important feature, and for us a must have.
We can't afford our ETL and BigData operations interfere with our realtime workloads, and must run Spark on dedicated node pools (or on a dedicated cluster, which has it's drawbacks)

Currently we solved this with [spark-on-k8s-operator|https://github.com/GoogleCloudPlatform/spark-on-k8s-operator], but this is specific to Spark applications, and can't help us with other applications that runs spark-submit directly like Zeppelin.

I assume this is a super small feature that should take a few hours to implement and test, but we'll also be happy for the moment if you will just implement Tolerations, since there is already a support for nodeSelector.

> Add support for pod affinity/anti-affinity
> ------------------------------------------
>
>                 Key: SPARK-24353
>                 URL: https://issues.apache.org/jira/browse/SPARK-24353
>             Project: Spark
>          Issue Type: New Feature
>          Components: Kubernetes
>    Affects Versions: 2.3.0
>            Reporter: Stavros Kontopoulos
>            Priority: Major
>
> Spark on K8s allows to place driver/executor pods on specific k8s nodes, using nodeSelector. NodeSelector is a very simple way to constrain pods to nodes with particular labels. The [affinity/anti-affinity|https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity] feature, currently in beta, greatly expands the types of constraints you can express. Aim here is to bring support of this feature to Spark on K8s, in detail:
>  * Node affinity
>  * Toleration/taints
>  * Inter-Pod affinity/anti-affinity
> Note that nodeSelector will be deprecated in the future.
> Design doc: [https://docs.google.com/document/d/1izk75I4A0I-nJaE57m7wkpgUZTXM0o6-c0Tb-NxdOMU|https://docs.google.com/document/d/1izk75I4A0I-nJaE57m7wkpgUZTXM0o6-c0Tb-NxdOMU/edit?usp=sharing]
>  
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@spark.apache.org
For additional commands, e-mail: issues-help@spark.apache.org