Spark 安装与配置
1 安装 Spark 依赖的 Scala
1.1 下载和解压缩 Scala
将 scala 安装包上传到 master 机的/opt/apps 目录并解压缩,将解压的目录改名为:scala
1.2 配置环境变量
*在/etc/profile 文件中加入:
export SCALA_HOME=/opt/apps/scala
export PATH=PATH:PATH:PATH:SCALA_HOME/bin
*生效/etc/profile
source /etc/profile
1.3 验证 Scala
scala –version
2 下载和解压缩 Spark
2.1 下载 Spark 压缩包
2.2 解压缩 Spark
将 spark 安装包上传到 master 机的/opt/apps 目录并解压缩,将解压的目录改名为:spark
3 Spark 相关的配置
3.1 配置环境变量
*在/etc/profile 文件中加入:
export SPARK_HOME=/opt/apps/spark
export PATH=PATH:PATH:PATH:SPARK_HOME/bin
*生效/etc/profile
source /etc/profile
注意:因为SPARKHOME/sbin目录下有一些文件名称和SPARK_HOME/sbin 目录下有一些文件名称和SPARKHOME/sbin目录下有一些文件名称和HADOOP_HOME/sbin 目录
下的文件同名,为了避免同名文件冲突,这里不在 PATH 变量里添加SPARKHOME/sbin只添加了SPARK_HOME/sbin
只添加了SPARKHOME/sbin只添加了SPARK_HOME/bin。
3.2 配置 conf 目录下的文件
对/opt/apps/spark/conf 目录下的文件进行配置。
3.2.1 新建 spark-env.h 文件
cp spark-env.sh.template spark-env.sh
*编辑 spark-env.sh 文件,在里面加入配置
- export SCALA_HOME=/opt/apps/scala
- export JAVA_HOME=/opt/apps/java
- export HADOOP_HOME=/opt/apps/hadoop
- export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop
- export SPARK_HOME=/opt/apps/spark
- export SPARK_MASTER_IP=master
- export SPARK_EXECUTOR_MEMORY=1G
3.2.2 新建 slaves 文件
cp slaves.template slaves
*编辑 slaves 文件,内容如下所示:
master
slave01
slave02
3.3 拷贝 scala 目录、spark 目录以及/etc/profile 文件到 slave01 和 slave02 上
cd /opt/apps
scp –r scala hadoop@slave01:/opt/apps/
scp –r scala hadoop@slave02:/opt/apps/
scp –r spark hadoop@slave01:/opt/apps/
scp –r spark hadoop@slave02:/opt/apps/
sudo scp /etc/profile root@slave01:/etc/
sudo scp /etc/profile root@slave02:/etc/
4 启动和测试 Spark 集群
4.1 启动 Spark
因为 spark 是依赖于 hadoop 提供的分布式文件系统的,所以在启动 spark 之前,先确
保 hadoop 在正常运行。
在 hadoop 正常运行的情况下,在 master(也就是 hadoop 的 namenode,spark 的 m
arster 节点)上执行命令:
cd /opt/apps/spark/sbin
执行启动脚本:
./start-all.sh
4.2 测试和使用 Spark 集群
4.2.1 访问 Spark 集群提供的 URL
在浏览器里访问 Master 机器,我的 Spark 集群里 Master 机器是 master,IP 地址
是 192.168.11.101,访问 8080 端口,URL 是:http://192.168.11.101:8080/
4.2.2 运行 Spark 提供的计算圆周率的示例程序
第一步,进入到 Spark 的根目录,也就是执行下面的脚本:
cd /opt/apps/spark
第二步,调用 Spark 自带的计算圆周率的 Demo,执行下面的命令:
./bin/spark-submit --class org.apache.spark.examples.SparkPi --master
local examples/jars/spark-examples_2.11-2.3.1.jar
*以上是在本地执行,要在集群中执行:
local 改为 yarn-client
*这时会出现虚拟内存错误:Yarn application has already ended!
解决方法:停止 spark、hadoop 以及 yarn
编辑$HADOOP_HOME/etc/hadoop/yarn-site.xml,增加:
yarn.nodemanager.pmem-check-enabled
false
yarn.nodemanager.vmem-check-enabled
false
然后重新启动 dfs、yarn 和 spark
2357

被折叠的 条评论
为什么被折叠?



