我需要在 EMR 中设置一个自定义环境变量,以便在运行 spark 应用程序时可用。
我试过添加这个:
...
--configurations '[
{
"Classification": "spark-env",
"Configurations": [
{
"Classification": "export",
"Configurations": [],
"Properties": { "SOME-ENV-VAR": "qa1" }
}
],
"Properties": {}
}
]'
...
还尝试用 hadoop-env
替换“spark-env”
但似乎没有任何效果。
有this来自aws论坛的回答。但我不知道如何应用它。
我在 EMR 5.3.1 上运行并通过 cli 中的预配置步骤启动它:aws emr create-cluster...
最佳答案
将如下 JSON 之类的自定义配置添加到文件中,比如 custom_config.json
[
{
"Classification": "spark-env",
"Properties": {},
"Configurations": [
{
"Classification": "export",
"Properties": {
"VARIABLE_NAME": VARIABLE_VALUE,
}
}
]
}
]
并且,在创建 emr 集群时,将文件引用传递给 --configurations
选项
aws emr create-cluster --configurations file://custom_config.json --other-options...
关于amazon-web-services - 如何在 EMR 中设置自定义环境变量以供 spark 应用程序使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42395020/