在运行spark程序的时,有时需要读取外部配置参数,比如mysql的host参数、端口号、es主机ip、es端口号等。通过外部文件配置参数也方便程序迁移。下面就来看看如何来实现。
1、首先我们需要一个配置文件:
property.yml
es.nodes: 192.16.8.16
es.port: 9200
2、上传配置文件到某个节点:
3、然后需要在程序里加上如下代码:
Properties props = new Properties(); props.load(new FileInputStream("property.yml")); String nodes = props.getProperty("es.nodes"); String port = props.getProperty("es.port");
4、通过 Maven打包程序:test.jar
5、上传 test.jar 到集群
6、执行 submit 命令
spark-submit --master yarn-cluster --class com.
Test
--files /home/lw/property.yml /home/lw/test.jar
--files 参数指定我们需要加载的外部配置文件