我有一个唯一的Yarn集群,许多远程客户端都使用它来向它提交spark应用程序。(--master yarn
),但我不想将它从Yarn集群分别复制到每个客户端。我想将HADOOP_CONF_DIR
放在所有客户端都可以访问的hdfs中。现在,我如何在每个客户端中寻址此环境变量(HADOOP_CONF_DIR
)以访问和读取hdfs URL?
比如说当我这样用的时候:export HADOOP_CONF_DIR=hdfs://namenodeIP:9000/path/to/conf_dir
或者我使用的python代码:os.environ['HADOOP_CONF_DIR']=hdfs://namenodeIP:9000/path/to/conf_dir
他们两个都不为我工作
什么是正确的形式?我应该在哪里设置它?在代码中,在www.example.com中spark-env.sh,在终端中,...
1条答案
按热度按时间jpfvwuh41#
我认为这是不可能的。您需要该变量还知道HDFS名称节点位置,而不仅仅是YARN。
如果您可以控制客户端计算机,则可以使用Syncthing等工具自动分发文件,但这需要假设群集内连接值与外部访问相同(即,在所有服务器地址中使用FQDN值)。