我需要在 EMR 中设置一个自定义环境变量,以便在运行 Spark 应用程序时可用。
我试过添加这个:
...
--configurations '[
{
"Classification": "spark-env",
"Configurations": [
{
"Classification": "export",
"Configurations": [],
"Properties": { "SOME-ENV-VAR": "qa1" }
}
],
"Properties": {}
}
]'
...
并尝试用
hadoop-env
替换“spark-env”但似乎没有任何效果。
aws 论坛有 this 的答案。但我不知道如何应用它。
我在 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/