我有一个spark和一个hadoop集群,它们是用docker swarm构建的。它们在同一网络下被识别。我用scala编写了一个简单的wordcount示例:
val spark = SparkSession.builder().master("local").appName("test").getOrCreate()
val data = spark.sparkContext.textFile("hdfs://10.0.3.16:8088/Sample.txt")
val counts = data.flatMap(line => line.split(" ")).map(word => (word, 1)).reduceByKey(_ + _)
counts.foreach(println)
当我在spark的主节点容器中运行代码时,ip地址会随着容器的名称而改变,并发生错误
索引12处的主机名中包含非法字符:hdfs://spark_namenode.1.ywlf9yx9hcm4duhxnywn91i35.spark_overlay:9000
我不能更改容器名称,因为docker swarm中不允许更改。
暂无答案!
目前还没有任何答案,快来回答吧!