Tag: apache spark

docker上的文件名太长

我试图在Docker容器上运行Spark: val input = sc.textFile("data/trips/*") println input input.map(_.split(",")).count() 但是,对于任何types的代码我得到这个错误: File name too long 在看这里http://timothyfox.net/?p=8我意识到你必须改变pom.xml或build.sbt 。 但是,我的代码是作为Docker容器打包的练习的一部分,所以我不知道它是如何组织的。 我看着docker的容器,发现我添加的一个pom.xml文件: <arg>-Xmax-classfile-name</arg> <arg>128</arg> 但没有任何改变。

如何将Spark集群与其他Hadoop2.x集群集成到Docker上

我的服务器上已经安装了Hadoop2.5集群,在Docker上运行 ,并且我们有一个在同一台服务器上运行的Spark独立集群(也部署在Docker中),我如何将Spark集群从独立模式切换到Spark on Yarn ,因为hadoop和火花运行在分离的docker。

如何在Docker中从python连接到远程Spark群集

我将Spark 2.0.0和Python 3安装在用户docker-user的容器中。 独立模式似乎正在工作。 我们在AWS和hadoop上build立了Spark群集。 随着VPN运行,从笔记本电脑我可以ssh到“内部IP”,如 ssh ubuntu@1.1.1.1 这个login。然后 cd /opt/spark/bin ./pyspark 这显示了Spark 2.0.0和Python 2.7.6。 一个天真的parallelize例子起作用。 现在在Docker支持的Jupyter Notebook中,做 from pyspark import SparkConf, SparkContext conf = SparkConf().setAppName('hello').setMaster('spark://1.1.1.1:7077').setSparkHome('/opt/spark/') sc = SparkContext(conf=conf) 这显然进入了集群,因为我可以在1.1.1.1:8080的Spark仪表板中看到应用程序“hello”。 让我感到困惑的是,它已经离开了Docker内部的这么远,不用理会ssh和密码等等。 现在尝试一个天真的parallelize例子, x = ['spark', 'rdd', 'example', 'sample', 'example'] y = sc.parallelize(x) 看起来不错。 然后, y.collect() 它挂在那里。 在仪表板“执行者摘要”表中,我不知道要找什么。 但是一个国家exited工人有这样的情况: 16/08/16 17:37:01 INFO SignalUtils: Registered signal handler […]

如何在不同的主机上从外部访问docker container(overlay)中运行的服务

我有一个在覆盖networking上运行的docker容器。 我的要求是从不同的主机在外部到达在这个容器中运行的服务。 该服务绑定到容器的内部IP地址,在这种情况下做端口绑定到主机不是一个解决scheme。 实际情景 : 在容器内运行的服务是使用yarn-clientconfiguration的spark驱动程序 。 火花驱动程序绑定到容器内部IP(10.xxx)。 当火花驱动程序与在不同簇上运行的hadoop纱线进行通信时,纱线上的应用程序主设备试图通过驱动程序的容器内部ip进行通信,但是由于明显的原因它不能在内部IP上连接驱动程序。 请让我知道是否有办法实现从应用程序主(纱)到火花驱动(docker集装箱)的成功沟通。 Swarm版本:1.2.5 docker info: Containers: 3 Running: 2 Paused: 0 Stopped: 1 Images: 42 Server Version: swarm/1.2.5 Role: primary Strategy: spread Filters: health, port, containerslots, dependency, affinity, constraint Nodes: 1 ip-172-30-0-175: 172.30.0.175:2375 └ ID: YQ4O:WGSA:TGQL:3U5F:ONL6:YTJ2:TCZJ:UJBN:T5XA:LSGL:BNGA:UGZW └ Status: Healthy └ Containers: 3 (2 Running, 0 Paused, 1 […]

在Docker中运行Spark时抛出java.lang.OutOfMemoryError

我试图在Docker中运行一个Spark实例,并经常得到这个exception: 16/10/30 23:20:26 ERROR SparkUncaughtExceptionHandler: Uncaught exception in thread Thread[Executor task launch worker-1,5,main] java.lang.OutOfMemoryError: unable to create new native thread 我正在使用这个Docker镜像https://github.com/sequenceiq/docker-spark 。 我的限制在容器内似乎没问题: bash-4.1# ulimit -a core file size (blocks, -c) unlimited data seg size (kbytes, -d) unlimited scheduling priority (-e) 0 file size (blocks, -f) unlimited pending signals (-i) 29747 max locked memory (kbytes, […]

neo4j-mazerunner,如何增加docker-compose.yml中的内存大小

在MacBook Pro(16GB内存)上使用docker-compose创buildkbastani / spark-neo4j ,我试图分析我的图的strongly_connected_components 。 我有一个约60,000个节点(n1:Node {id:1})-[r:NEXT {count:100}]->(n2:Node {id:2})的graphics。 使用neo4j浏览器,我已经设法将pagerank处理回我的节点。 但是,当我尝试运行像strong_connected_components这样更复杂的algorithm时,出现以下错误: mazerunner_1 | 16/11/29 14:58:01 ERROR Utils: Uncaught exception in thread SparkListenerBus mazerunner_1 | java.lang.OutOfMemoryError: Java heap space mazerunner_1 | at org.apache.spark.ui.jobs.JobProgressListener$$anonfun$onJobStart$5$$anonfun$apply$9.apply(JobProgressListener.scala:200) mazerunner_1 | at org.apache.spark.ui.jobs.JobProgressListener$$anonfun$onJobStart$5$$anonfun$apply$9.apply(JobProgressListener.scala:200) mazerunner_1 | at scala.collection.mutable.MapLike$class.getOrElseUpdate(MapLike.scala:189) mazerunner_1 | at scala.collection.mutable.AbstractMap.getOrElseUpdate(Map.scala:91) mazerunner_1 | at org.apache.spark.ui.jobs.JobProgressListener$$anonfun$onJobStart$5.apply(JobProgressListener.scala:200) mazerunner_1 | at org.apache.spark.ui.jobs.JobProgressListener$$anonfun$onJobStart$5.apply(JobProgressListener.scala:198) mazerunner_1 | […]

Docker中的Spark独立群集在networking“桥”

我的问题是从其他节点的奴隶之间的连接到主。 我有3个节点设置如下: 主节点和1个工作节点在同一个泊坞窗上启动1个节点 2个节点,每个docker有1个工人 docker – 撰写这些端口: version: '2' services: spark: image: xxxxxxxx/spark tty: true stdin_open: true container_name: spark volumes: – /var/data/dockerSpark/:/var/data ports: – "7077:7077" – "127.0.0.1:8080:8080" – "7078:7078" – "127.0.0.1:8081:8081" – "127.0.0.1:9010:9010" – "4040:4040" – "18080:18080" – "6066:6066" – "9000:9000" conf / spark-env.sh如下: #export STANDALONE_SPARK_MASTER_HOST=172.xx.xx.xx #This is the docker Ip adress on the node […]

pthread_create失败:MongoDB上的资源暂时不可用

目前,我在16GB RAM Ubuntu 16.04.1 x64的物理机上使用Docker运行独立模式的Spark Cluster Spark Cluster容器的RAMconfiguration:master 4g,slave1 2g,slave2 2g,slave3 2g docker run -itd –net spark -m 4g -p 8080:8080 –name master –hostname master MyAccount/spark &> /dev/null docker run -itd –net spark -m 2g -p 8080:8080 –name slave1 –hostname slave1 MyAccount/spark &> /dev/null docker run -itd –net spark -m 2g -p 8080:8080 –name slave2 […]

将包含fat jar的docker提交给Spark集群

我想提交一个包含'fat jar'的Docker容器到在DC / OS上运行的Spark群集。 这是我所做的。 mvn clean install ,所以jar驻留在这里/target/application.jar docker build -t <repo/image> . && docker push <repo/image> 现在我的DC / OS能够从我的私有存储库中获取图像 我的Dockerfile看起来像这样: FROM docker-release.com/spark:0.1.1-2.1.0-2.8.0 # I extended from this image to get all necessary components ADD target/application.jar /application.jar # just put fat jar under root dir of Docker image COPY bootstrap.sh /etc/bootstrap.sh ENTRYPOINT ["/etc/bootstrap.sh"] 以下是bootstrap.sh的样子: […]

Apache Spark:MesosClusterDispatcher可以在Docker容器中运行执行程序吗?

我正在构build一个Mesos集群来运行Apache Spark。 我宁愿为我的Spark执行者使用Docker容器,我可以使用spark-submit的客户端模式(使用–master mesos://mesosmaster:5050和–conf spark.mesos.executor.docker.image=myimage:latest ),但我希望能够做同样的群集模式。 我有MesosClusterDispatcher运行,并可以提交作业(与 – 主–master mesos://clusterdispatcher:7077 –mode cluster –supervised ),但是当我指定一个–master mesos://clusterdispatcher:7077 –mode cluster –supervised图像的执行者使用,似乎是调度是忽略参数,并试图直接在Mesos沙箱中运行作业。 实际上是否可以将集群调度程序与spark.mesos.executor.docker.image结合使用? 我希望尽可能地从Mesos中断开Spark,这样他们可以独立升级,但是显然如果集群调度程序不能使用Docker镜像,我将不得不重新考虑我的策略。 谢谢!