1.简介
Apache Spark 是专为大规模数据处理而设计的快速通用的计算引擎。Spark是UC Berkeley AMP lab (加州大学伯克利分校的AMP实验室)所开源的类Hadoop MapReduce的通用并行框架,Spark,拥有Hadoop MapReduce所具有的优点;但不同于MapReduce的是——Job中间输出结果可以保存在内存中,从而不再需要读写HDFS,因此Spark能更好地适用于数据挖掘与机器学习等需要迭代的MapReduce的算法。
通过使用Docker Compose,可以快速地在本地搭建一套Spark环境,方便大家开发Spark应用,或者扩展到生产环境。
2.准备工作
这里,我们采用比较热门的sequenceiq/docker-spark镜像,这个镜像已经安装了对Spark的完整依赖。由于镜像较大(超过2G),推荐先下载镜像到本地:
[root@adson haproxy_web]# docker pull sequenceiq/spark
(1)docker-compose.yml文件
首先新建一个spark_cluster目录,并在其中创建一个docker-compose.yml文件:
[root@adson ~]# mkdir spark_cluster
[root@adson ~]# cd spark_cluster
[root@adson spark_cluster]# vi docker-compose.yml
master:
image: sequenceiq/spark:1.6.0
hostname: master
ports:
- “4040:4040”
- “8042:8042”
- “7077:7077”
- “8088:8088”
- “8080:8080”
restart: always
#mem_limit: 1024m
comm