Не работает: редактирование переменной среды Spark
Я использую следующее, чтобы добавить шаг задания спарка в работающий кластер emr v5.11.1 на AWS, используя python 3.6.5 boto3 и spark 2.2.1:
myemr = boto3.client('emr',region_name=os.environ['AWS_DEFAULT_REGION'])
response = myemr.add_job_flow_steps(
JobFlowId=my_emr_id,
Steps=[
{
'Name': key,
'ActionOnFailure': 'CONTINUE',
'HadoopJarStep': {
'Jar': 'command-runner.jar',
'Args': [
'spark-submit',
'--deploy-mode', 'cluster',
'--master', 'yarn',
'--conf', 'spark.yarn.appMasterEnv.my_password=sensitive_value',
'--conf', 'spark.redaction.regex=password',
'--class', 'com.myApp', 's3a://myjarurl.jar',
'-c', 's3a://s3bucket_myconfig_location',
'-w', 'myconfig.json',
'-e', 'prod',
'-n', 'demo'
]
}
}
]
)
Шаг выполняется нормально и может получить доступ к переменной окружения пряжи. Но значение Sensual_value не удаляется из журналов или консоли AWS EMR, вкладка шагов. я вижу --conf
, spark.yarn.appMasterEnv.my_password=sensitive_value
отображается в обоих.
Я хотел бы, чтобы либо переменная spark.yarn.appMasterEnv.my_password была полностью удалена из журналов и консоли, либо значение Sensual_value было заменено чем-то вроде ***.
Чтение документа apache spark https://spark.apache.org/docs/2.2.1/configuration.html Я думал, что это сработает. Ценю любые предложения.