Как передать переменную среды в проект, который работает на EMR Serverless?
В моем проекте PySpark я использую пакет Python, который используетDynaconf
поэтому мне нужно установить следующую переменную среды -ENV_FOR_DYNACONF = platform
. Проблема в том, что я не понимаю, как передать эту переменную среды при запуске бессерверного задания EMR.
Я пробовал это -
os.environ['ENV_FOR_DYNACONF'] = platform
В начале кода, но он не работал и в любом случае я хочу понять, как правильно передавать переменные env в EMR.
Кто-нибудь может помочь?
1 ответ
Чтобы передать переменные среды в EMR Serverless, вы можете использовать следующие свойства искрового задания вsparkSubmitParameters
:
-
spark.executorEnv.[KEY]
для передачи переменных env исполнителям. -
spark.emr-serverless.driverEnv.[KEY]
для передачи переменных env драйверу.
Пример :
"sparkSubmitParameters": "--conf spark.emr-serverless.driverEnv.ENV_FOR_DYNACONF=platform"
Для получения дополнительной информации см. https://docs.aws.amazon.com/emr/latest/EMR-Serverless-UserGuide/jobs-spark.html .