本文主要是介绍分布式部署(JDK1.8+Hadoop3.2+Spark2.4+Ubuntu16.04),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
本次分布式Spark环境部署采用JDK1.8、Hadoop3.2、Spark2.4的套装,一个Master,两个Slaves
1. 修改hosts文件,设置Master、Slaves1、Slaves2节点的IP地址。
2. SSH免登录设置
#ssh-keygen -t rsa
一直回车,后将文件分别拷贝到Master,Slaves1,Slaves2中
#ssh-copy-id Master#ssh-copy-id Slaves1#ssh-copy-id Slaves2
3. 安装JDK
3.1 解压jdk安装包
# tar -zvxf jdk-8u201-linux-x64.tar.gz
3.2 更改名字,并且发送到/usr/local目录下
# mv jdk1.8.0_201 /usr/local/java
3.3 修改/etc/profile文件,添加jdk的环境变量
# vim /etc/profile
添加以下代码到底部
#JAVAexport JAVA_HOME=/usr/local/javaexport PATH=$PATH:$JAVA_HOME/bin
保存后退出,且应用
#source /etc/profile
3.4 检查jdk 环境是否设置成功
# java -version
4 . 安装Hadoop
4.1解压hadoop-3.2.0.tar.gz
# tar -zvxf hadoop-3.2.0.tar.gz
4.2 更改名字,并且发送到/usr/local目录下
# mv hadoop-3.2.0 /usr/local/hadoop
4.3 修改/etc/profile文件,添加jdk的环境变量
# vim /etc/profile
添加以下代码到底部
#HADOOP
export HADOOP_HOME=/usr/local/hadoop
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
保存后退出,且应用
#source /etc/profile
4.4 检查hadoop 环境是否设置成功
# hadoop version
5. 配置Hadoop
集群/分布式模式需要修改 /usr/local/hadoop/etc/hadoop 中的5个配置文件,更多设置项可点击查看官方说明,这里仅设置了正常启动所必须的设置项: workers、core-site.xml、hdfs-site.xml、mapred-site.xml、yarn-site.xml 。
5.1 设置Workers
将Master、Slaves1、Slaves2设置进去
MasterSlaves1Slaves2
5.2 设置core-site.xml
<configuration><property><name>fs.defaultFS</name><value>hdfs://Master:9000</value></property><property><name>hadoop.tmp.dir</name><value>file:/usr/local/hadoop/tmp</value><description>Abase for other temporary directories.</description></property>
</configuration>
5.3 设置hdfs-site.xml
<configuration><property><name>dfs.namenode.secondary.http-address</name><value>Master:50090</value></property><property><name>dfs.replication</name><value>3</value></property><property><name>dfs.namenode.name.dir</name><value>file:/usr/local/hadoop/tmp/dfs/name</value></property><property><name>dfs.datanode.data.dir</name><value>file:/usr/local/hadoop/tmp/dfs/data</value></property>
</configuration>
5.4 设置mapred-site.xml
<configuration><property><name>mapreduce.framework.name</name><value>yarn</value></property><property><name>mapreduce.jobhistory.address</name><value>Master:10020</value></property><property><name>mapreduce.jobhistory.webapp.address</name><value>Master:19888</value></property>
</configuration>
5.5 设置yarn-site.xml
<configuration><property><name>yarn.resourcemanager.hostname</name><value>Master</value></property><property><name>yarn.nodemanager.aux-services</name><value>mapreduce_shuffle</value></property>
</configuration>
5.6 配置start-dfs.sh、start-yarn.sh、stop-dfs.sh、stop-yarn.sh
以上四个文件所在目录为/usr/local/hadoop/sbin
在start-dfs.sh、stop-dfs.sh开始第一行加上
HDFS_DATANODE_USER=root
HDFS_DATANODE_SECURE_USER=hdfs
HDFS_NAMENODE_USER=root
HDFS_SECONDARYNAMENODE_USER=root
在start-yarn.sh、stop-yarn.sh开始第一行加上
YARN_RESOURCEMANAGER_USER=root
HDFS_DATANODE_SECURE_USER=yarn
YARN_NODEMANAGER_USER=root
配置好后,将 Master 上的 /usr/local/Hadoop 文件夹复制到各个Slaves节点上。
scp -r /usr/local/hadoop root@Slaves1:/usr/local
scp -r /usr/local/hadoop root@Slaves2:/usr/localscp /etc/profile root@Slaves1:/etc/ #copy配置文件到各个Slaves
scp /etc/profile root@Slaves2:/etc/
在各个Slaves上应用从Master复制过去的profile文件
source /etc/profile
5.6 检查Hadoop是否安装成功
hadoop version
如图
6 安装Spark
6.1 解压Spark安装包
# tar -zvxf spark-2.4.1-bin-without-hadoop.tgz
6.2 更改名字,并且发送到/usr/local目录下
mv spark-2.4.1-bin-without-hadoop /usr/local/spark
6.3 配置spark-env.sh
文件存在的目录为/usr/local/spark/conf
#复制一份模板
cp spark-env.sh.template spark-env.sh
在spark-env.sh中加入以下代码
export SPARK_DIST_CLASSPATH=$(/usr/local/hadoop/bin/hadoop classpath)
有了上面的配置信息以后,Spark就可以把数据存储到Hadoop分布式文件系统HDFS中,也可以从HDFS中读取数据。如果没有配置上面信息,Spark就只能读写本地数据,无法读写HDFS数据。
配置完成后就可以直接使用,不需要像Hadoop运行启动命令。
根据以上步骤即可完成整个Spark环境的安装部署
参考链接:
Hadoop2.6.0集群安装配置教程
http://dblab.xmu.edu.cn/blog/install-hadoop-cluster/
Spark2.1.0配置教程
http://dblab.xmu.edu.cn/blog/1307-2/
这篇关于分布式部署(JDK1.8+Hadoop3.2+Spark2.4+Ubuntu16.04)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!