Apache Spark Submit Connection¶
The Apache Spark Submit connection type enables connection to Apache Spark via the spark-submit
command.
Default Connection IDs¶
Spark Submit and Spark JDBC hooks and operators use spark_default
by default.
Configuring the Connection¶
- Host (required)
The host to connect to, it can be
local
,yarn
or an URL.- Port (optional)
Specify the port in case of host be an URL.
- YARN Queue (optional, only applies to spark on YARN applications)
The name of the YARN queue to which the application is submitted.
- Deploy mode (optional)
Whether to deploy your driver on the worker nodes (cluster) or locally as an external client (client).
- Spark binary (optional)
The command to use for Spark submit. Some distros may use
spark2-submit
. Defaultspark-submit
. Onlyspark-submit
,spark2-submit
orspark3-submit
are allowed as value.- Kubernetes namespace (optional, only applies to spark on kubernetes applications)
Kubernetes namespace (
spark.kubernetes.namespace
) to divide cluster resources between multiple users (via resource quota).
When specifying the connection in environment variable you should specify it using URI syntax.
Note that all components of the URI should be URL-encoded. The URI and the mongo connection string are not the same.
For example:
export AIRFLOW_CONN_SPARK_DEFAULT='spark://mysparkcluster.com:80?deploy-mode=cluster&spark_binary=command&namespace=kube+namespace'
Warning
Make sure you trust your users with the ability to configure the host settings as it may enable the connection to establish communication with external servers. It’s crucial to understand that directing the connection towards a malicious server can lead to significant security vulnerabilities, including the risk of encountering Remote Code Execution (RCE) attacks.