-
Ubuntu 18.04
-
Oracle JDK 1.8
-
Hadoop 3.2.4
-
Spark 3.2.3
-
点击
开始实验
按钮,打开当前实验所有镜像环境 -
进入实验环境后, 点击左上角收缩实验指南
-
点击环境左上角的“三个横线”的标志,如下图。 最后点击“终端”。
-
会在右下方看到打开的终端,可直接在终端中进行操作。
配置节点hosts解析
使用命令查看自己所有节点环境的IP信息:
ip addr show
把所有节点的IP记录下来,将三个节点分别命名为master、slave1、slave2,取1个IP作为master节点,其余做slave节点。 修改容器中
/etc/hosts
文件,根据自己的节点的IP信息,在文件末添加类似下面的内容:
下面IP仅供参考,以自己环境的实际IP为准
10.42.240.106 master
10.42.240.46 slave1
10.42.74.171 slave2
注意: 如果容器的hostname不是master1,比如终端命令行名称类似上面图中的 root@abc03160ba3f
,注意把容器对应的 abc03160ba3f
这样的实际名称也加进hosts文件的解析里,不然yarn可能会找不到可调度的主机,提交的任务会一直卡在accept阶段。 添加后的/etc/hosts
文件内容类似于:
10.42.240.106 master
10.42.240.106 abc03160ba3f
10.42.240.46 slave1
10.42.240.46 50519577f51d
10.42.74.171 slave2
10.42.74.171 7513794d0505
配置及节点ssh免密登录
在master节点使用命令生成key,需要填入的内容直接留空即可
ssh-keygen -b 4096
使用下面的命令把master节点的公钥拷贝到包括master节点的所有的节点,默认密码为
root
ssh-copy-id -i ~/.ssh/id_rsa.pub root@master
ssh-copy-id -i ~/.ssh/id_rsa.pub root@slave1
ssh-copy-id -i ~/.ssh/id_rsa.pub root@slave2
使用ssh登录成功后后,可使用 exit
命令退出ssh会话回到原先节点终端继续操作
exit
最后,在master节点的终端使用下面的命令初始化Hadoop环境namenode
hdfs namenode -format
确保Hadoop启动并正常运行。
# hadoop的集群启动命令为:
start-all.sh
# 启动后检查是否安装成功:
hdfs dfsadmin -report
在节点创建需要的文件夹,作为安装包储存路径和软件安装位置
mkdir /opt/software /opt/module
从宿主机目录下将文件spark-3.2.3-bin-hadoop3.2.tgz
复制到容器Master中的/opt/software
中
scp root@10.42.2.28:/opt/spark/spark-3.2.3-bin-hadoop3.2.tgz /opt/software
将Spark包解压到/opt/module
路径中
tar -xzf /opt/software/spark-3.2.3-bin-hadoop3.2.tgz -C /opt/module
将完整解压命令截图并提交到对应的任务序号下
修改容器中/etc/profile
文件,在文件末添加下面的内容:
# 添加spark的环境变量
export SPARK_HOME=/opt/module/spark-3.2.3-bin-hadoop3.2
export PATH=$PATH:$SPARK_HOME/bin:$SPARK_HOME/sbin
执行下面的命令使添加的spark环境变量生效:
source /etc/profile
在终端运行命令
spark-submit --version
将命令与结果截图粘并提交到对应的任务序号下
执行下面命令生成spark-env.sh
文件
cd /opt/module/spark-3.2.3-bin-hadoop3.2/conf
cp -f ./spark-env.sh.template ./spark-env.sh
使用vim编辑器文件内容
vim ./spark-env.sh
在文件末尾添加下面的内容
export LD_LIBRARY_PATH=/opt/module/hadoop-3.2.4/lib/native
export HADOOP_CONF_DIR=/opt/module/hadoop-3.2.4/etc/hadoop/
export YARN_CONF_DIR=/opt/module/hadoop-3.2.4/etc/hadoop/
将 Spark 相关的 JAR 文件打包成一个 JAR 文件
cd
jar cv0f spark-libs.jar -C $SPARK_HOME/jars/ .
将 JAR 文件上传到 HDFS 中的指定目录,以便在分布式 Spark 环境中使用。 记得确保Hadoop集群环境正常启动运行。
hdfs dfs -mkdir -p /system/SparkJars/jar
hdfs dfs -put spark-libs.jar /system/SparkJars/jar
执行下面命令生成
spark-defaults.conf
文件
cd /opt/module/spark-3.2.3-bin-hadoop3.2/conf
cp -f ./spark-defaults.conf.template ./spark-defaults.conf
使用vim编辑器文件内容
vim ./spark-defaults.conf
在文件末尾添加下面的内容
spark.yarn.archive=hdfs:///system/SparkJars/jar/spark-libs.jar
使用
spark on yarn
的client模式提交$SPARK_HOME/examples/jars/spark-examples_2.12-3.1.1.jar
,运行的主类为org.apache.spark.examples.SparkPi
spark-submit --master yarn --class org.apache.spark.examples.SparkPi $SPARK_HOME/examples/jars/spark-examples_2.12-3.2.3.jar
1 本站一切资源不代表本站立场,并不代表本站赞同其观点和对其真实性负责。
2 本站一律禁止以任何方式发布或转载任何违法的相关信息,访客发现请向站长举报
3 本站资源大多存储在云盘,如发现链接失效,请联系我们我们会第一时间更新。
暂无评论内容