如何使用 YARN 以编程方式知道应用程序是在客户端还是集群部署模式下运行?
How to know programmatically whether application runs in client or cluster deploy mode using YARN?
是否可以通过编程方式知道 Spark 程序处于哪种模式运行?比如是yarn-cluster
中的运行还是yarn-client
模式?
您可以使用 SparkContext
的 deployMode
方法
val sc: SparkContext = ???
sc.deployMode
如果您使用 SparkSession
,您必须首先访问 SparkContext
个实例:
val spark: SparkSession = ???
spark.sparkContext.deployMode
您当然可以将其与 master
调用结合使用,以获得全貌:
sc.master
是否可以通过编程方式知道 Spark 程序处于哪种模式运行?比如是yarn-cluster
中的运行还是yarn-client
模式?
您可以使用 SparkContext
deployMode
方法
val sc: SparkContext = ???
sc.deployMode
如果您使用 SparkSession
,您必须首先访问 SparkContext
个实例:
val spark: SparkSession = ???
spark.sparkContext.deployMode
您当然可以将其与 master
调用结合使用,以获得全貌:
sc.master