栏目分类:
子分类:
返回
终身学习网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
终身学习网 > IT > 前沿技术 > 云计算 > 云平台

UOS搭建Spark环境

云平台 更新时间:发布时间: 百科书网 趣学号

文章目录
  • 介绍
  • 下载
  • 构建镜像
  • 单机模式
    • 修改配置
    • 运行
  • 伪分布模式
    • 修改配置
    • 运行
  • 分布模式
    • 修改配置
    • 运行
  • 仓库链接

介绍

专为大规模数据处理而设计的快速通用的计算引擎。类 Hadoop MapReduce 的通用并行计算框架。拥有 Hadoop MapReduce 所具有的优点。但不同于 MapReduce 的是 Job 中间输出结果可以缓存在内存中,从而不再需要读写 HDFS ,减少磁盘数据交互。因此 Spark 能更好地适用于数据挖掘与机器学习等需要迭代的算法。Spark 是 Scala 编写,方便快速编程。

下载

链接

构建镜像

UOS安装并配置sbt工具
UOS安装并配置Maven工具

touch Dockerfile
FROM amd64/buildpack-deps:buster-curl as installer

# 安装sbt工具
RUN set -x &&
    curl -SL --output /var/tmp/sbt.tgz https://github.com/sbt/sbt/releases/download/v1.5.5/sbt-1.5.5.tgz  &&
    tar -xzvf /var/tmp/sbt.tgz -C /usr/local &&
    rm -rf /var/tmp/sbt.tar.gz 

# 安装maven工具
RUN set -x &&
    curl -SL --output /var/tmp/maven.tar.gz http://mirrors.aliyun.com/apache/maven/maven-3/3.8.6/binaries/apache-maven-3.8.6-bin.tar.gz?spm=a2c6h.25603864.0.0.5feb2c3aIEQN7l  &&
    tar -xzvf /var/tmp/maven.tar.gz -C /usr/local &&
    mv /usr/local/apache-maven-3.8.6 /usr/local/maven &&
    rm -rf /var/tmp/maven.tar.gz

# 安装spark
RUN  set -x &&
    curl -SL --output /var/tmp/spark.tar.gz http://mirrors.aliyun.com/apache/spark/spark-3.2.2/spark-3.2.2-bin-without-hadoop.tgz?spm=a2c6h.25603864.0.0.76785afb8rDlcQ && 
    tar -xzvf /var/tmp/spark.tar.gz -C /usr/local/ && 
    mv /usr/local/spark-3.2.2-bin-without-hadoop /usr/local/spark && 
    rm -rf /var/tmp/spark.tar.gz 

FROM chenchongbiao/hive:v1

ENV SPARK_HOME=/usr/local/spark
ENV SBT_HOME=/usr/local/sbt
ENV MAVEN_HOME=/usr/local/maven
ENV PATH=$PATH:$SPARK_HOME/bin:$SPARK_HOME/sbin:$SBT_HOME/bin:$MAVEN_HOME/bin

WORKDIR $SPARK_HOME

COPY --from=installer ["/usr/local/sbt", "/usr/local/sbt"]
COPY --from=installer ["/usr/local/maven", "/usr/local/maven"]
COPY --from=installer ["/usr/local/spark", "/usr/local/spark"]
单机模式 修改配置

spark-env.sh

export JAVA_HOME=/usr/local/jdk1.8
export HADOOP_HOME=/usr/local/hadoop
export HADOOP_CONF_DIR=/usr/local/hadoop/etc/hadoop
export SPARK_DIST_CLASSPATH=$($HADOOP_HOME/bin/hadoop classpath)
export SPARK_MASTER_HOST=linux01                 
export SPARK_MASTER_PORT=7077

standalone.yml

version: '3'
services:
  linux01:
    image: chenchongbiao/spark:v1
    working_dir: /usr/local/spark
    container_name: linux01
    hostname: linux01
    volumes:
      - ./standalone/conf/spark-env.sh:/usr/local/spark/conf/spark-env.sh
    restart: always
运行

运行单机模式

sudo docker-compose -f standalone.yml up -d

进入容器

sudo docker exec -it linux01 bash

进入spark-shell

spark-shell

退出

:quit
伪分布模式 修改配置

spark-env.sh

# 开启Spark历史记录
SPARK_HISTORY_OPTS="-Dspark.history.fs.logDirectory=hdfs:///eventLog/ -Dspark.history.fs.cleaner.enabled=true"
export JAVA_HOME=/usr/local/jdk1.8
export HADOOP_HOME=/usr/local/hadoop
export HADOOP_CONF_DIR=/usr/local/hadoop/etc/hadoop
export SPARK_DIST_CLASSPATH=$($HADOOP_HOME/bin/hadoop classpath)
export SPARK_MASTER_HOST=linux01                 
export SPARK_MASTER_PORT=7077

workers

linux01
运行

运行伪分布模式

sudo docker-compose -f pseudo.yml up -d

进入容器

sudo docker exec -it linux01 bash

命名空间格式化

hdfs namenode -format

启动hadoop

../hadoop/sbin/start-all.sh

启动spark

start-all.sh

进入spark-shell

spark-shell

退出

:quit
分布模式 修改配置

同伪分布模式

运行

运行分布模式

sudo docker-compose -f cluster.yml up -d

进入容器

sudo docker exec -it linux01 bash

命名空间格式化

hdfs namenode -format

启动hadoop

../hadoop/sbin/start-all.sh

启动spark

start-all.sh

进入spark-shell

spark-shell

退出

:quit
仓库链接

大数据应用开发环境

转载请注明:文章转载自 www.051e.com
本文地址:http://www.051e.com/it/1072887.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 ©2023-2025 051e.com

ICP备案号:京ICP备12030808号