没有合适的资源?快使用搜索试试~ 我知道了~
首页使用docker快速搭建Spark集群的方法教程
资源详情
资源评论
资源推荐
使用使用docker快速搭建快速搭建Spark集群的方法教程集群的方法教程
通过使用 Docker,可以快速的在本地搭建一套 Spark 环境,方便大家开发 Spark 应用,或者扩展到生产环境。下面这篇文章主要给大家介绍了使用docker快速搭建Spark集群的方
法教程,需要的朋友可以参考借鉴,下面来一起看看吧。
前言前言
Spark 是 Berkeley 开发的分布式计算的框架,相对于 Hadoop 来说,Spark 可以缓存中间结果到内存而提高某些需要迭代的计算场景的效率,目前收到广泛关注。下面来一起看看使用docker快速搭建
Spark集群的方法教程。
适用人群适用人群
正在使用spark的开发者
正在学习docker或者spark的开发者
准备工作准备工作
安装docker
(可选)下载java和spark with hadoop
Spark集群集群
Spark运行时架构图
如上图: Spark集群由以下两个部分组成
集群管理器(Mesos, Yarn或者standalone Mode)
工作节点(worker)
如何如何docker化化(本例使用本例使用Standalone模式模式)
1、将spark集群拆分
base(基础镜像)
master(主节点镜像)
worker(工作镜像)
2、编写base Dockerfile
注注: 为方便切换版本基础镜像选择的是centos, 所以要下载java和spark, 方便调试, 可以下载好安装文件后本地搭建一个静态文件服务器, 使用Node.js 的http-server可以快速搞定
命令如下
npm install http-server -g
http-server -p 54321 ~/Downloads
正式开始写Dockerfile
FROM centos:7
MAINTAINER RavenZZ <raven.zhu@outlook.com>
# 安装系统工具
RUN yum update -y
RUN yum upgrade -y
RUN yum install -y byobu curl htop man unzip nano wget
RUN yum clean all
# 安装 Java
ENV JDK_VERSION 8u11
ENV JDK_BUILD_VERSION b12
# 如果网速快,可以直接从源站下载
#RUN curl -LO "http://download.oracle.com/otn-pub/java/jdk/$JDK_VERSION-$JDK_BUILD_VERSION/jdk-$JDK_VERSION-linux-x64.rpm" -H 'Cookie: oraclelicense=accept-securebackup-cookie' && rpm -i jdk-$JDK_VERSION-linux-x64.rpm; rm -f jdk-$JDK_VERSION-linux-x64.rpm;
RUN curl -LO "http://192.168.199.102:54321/jdk-8u11-linux-x64.rpm" && rpm -i jdk-$JDK_VERSION-linux-x64.rpm; rm -f jdk-$JDK_VERSION-linux-x64.rpm;
ENV JAVA_HOME /usr/java/default
RUN yum remove curl; yum clean all
WORKDIR spark
RUN \
curl -LO 'http://192.168.199.102:54321/spark-2.1.0-bin-hadoop2.7.tgz' && \
tar zxf spark-2.1.0-bin-hadoop2.7.tgz
RUN rm -rf spark-2.1.0-bin-hadoop2.7.tgz
RUN mv spark-2.1.0-bin-hadoop2.7/* ./
ENV SPARK_HOME /spark
ENV PATH /spark/bin:$PATH
ENV PATH /spark/sbin:$PATH
3、编写master Dockerfile
FROM ravenzz/spark-hadoop
MAINTAINER RavenZZ <raven.zhu@outlook.com>
COPY master.sh /
ENV SPARK_MASTER_PORT 7077
ENV SPARK_MASTER_WEBUI_PORT 8080
ENV SPARK_MASTER_LOG /spark/logs
EXPOSE 8080 7077 6066
CMD ["/bin/bash","/master.sh"]
4、编写worker Dockerfile
FROM ravenzz/spark-hadoop
MAINTAINER RavenZZ <raven.zhu@outlook.com>
COPY worker.sh /
ENV SPARK_WORKER_WEBUI_PORT 8081
ENV SPARK_WORKER_LOG /spark/logs
ENV SPARK_MASTER "spark://spark-master:32769"
EXPOSE 8081
CMD ["/bin/bash","/worker.sh"]
5、docker-compose
version: '3'
services:
spark-master:
build:
context: ./master
dockerfile: Dockerfile
ports:
- "50001:6066"
weixin_38584148
- 粉丝: 10
- 资源: 1000
上传资源 快速赚钱
- 我的内容管理 收起
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
会员权益专享
最新资源
- RTL8188FU-Linux-v5.7.4.2-36687.20200602.tar(20765).gz
- c++校园超市商品信息管理系统课程设计说明书(含源代码) (2).pdf
- 建筑供配电系统相关课件.pptx
- 企业管理规章制度及管理模式.doc
- vb打开摄像头.doc
- 云计算-可信计算中认证协议改进方案.pdf
- [详细完整版]单片机编程4.ppt
- c语言常用算法.pdf
- c++经典程序代码大全.pdf
- 单片机数字时钟资料.doc
- 11项目管理前沿1.0.pptx
- 基于ssm的“魅力”繁峙宣传网站的设计与实现论文.doc
- 智慧交通综合解决方案.pptx
- 建筑防潮设计-PowerPointPresentati.pptx
- SPC统计过程控制程序.pptx
- SPC统计方法基础知识.pptx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0