CentOS 7下的安装 Apache Spark 2.4.8(单节点及集群环境)

wylc123 1年前 ⋅ 412 阅读

环境依赖

  • CentOS7,JDK8,scala-2.12.11.tgz,spark-2.4.8-bin-hadoop2.7.tgz

1.1 jdk 8安装配置环境变量

https://www.songbin.top/post_6377.html

1.2 scala-2.12.11安装

scala下载官网

选择2.12.11版本下载

上传到服务器目录 /usr/local/softs并解压

tar -zxvf scala-2.12.11.tgz

配置环境变量

vi /etc/profile

添加环境变量如下:

export SCALA_HOME=/usr/local/softs/scala-2.12.11
export PATH=${SCALA_HOME}/bin:${PATH}

刷新环境变量:

source /etc/profile

测试:

scala -version

3. 安装spark-2.4.8-bin-hadoop2.7.tgz

下载中心

查看历史版本

下载对应版本安装文件

关闭防火墙

#关闭命令
service firewalld stop
chkconfig firewalld off

关闭SELINUX

sudo vi /etc/sysconfig/selinux

#SELINUX=enforcing
SELINUX=disabled
3.1 单节点安装

解压spark-2.4.8-bin-hadoop2.7.tgz到目录/usr/local/softs

tar -zxvf spark-2.4.8-bin-hadoop2.7.tgz

将解压的文件改名

mv spark-2.4.8-bin-hadoop2.7 spark2.4.8

修改配置文件
进入到conf文件路径下,将slaves.template拷贝并改名slaves

cp slaves.template slaves


将spark-env.sh.template拷贝并改名spark-env.sh

cp spark-env.sh.template spark-env.sh

vim spark-env.sh,在最后添加如下内容,如下配置路径视情况修改

export JAVA_HOME=/usr/local/softs/jdk1.8.0_311
export SCALA_HOME=/usr/local/softs/scala-2.12.11
export SPARK_HOME=/usr/local/softs/spark2.4.8
export SPARK_MASTER_IP=127.0.0.1
export SPARK_EXECUTOR_MEMORY=1G


修改环境变量 vim /etc/profile

export SPARK_HOME=/usr/local/softs/spark2.4.8
export PATH=${SPARK_HOME}/bin:${PATH}


保存退出后,使配置生效:

source /etc/profile

启动单节点Spark
进入sbin路径,执行命令启动spark

./start-all.sh

如提示输入密码,则需要进行ssh免密登录配置,如下

如果没有配置免密登录的话每次登录到这台服务器都要输入密码

[root@localhost spark2.4.8]# ssh 192.168.209.129


在本地机器(192.168.209.129)生成私钥和公钥

[root@localhost ~]# cd ~/.ssh/ # 若没有该目录,请先执行一次ssh localhost
[root@localhost .ssh]# ssh-keygen -t rsa # 会有提示,都按回车就可以
[root@localhost .ssh]# cat id_rsa.pub >> authorized_keys # 加入授权
[root@localhost .ssh]# chmod 600 ./authorized_keys # 修改文件权限


将公钥上传到远端机器(在此为本机)

[root@localhost .ssh]# ssh-copy-id -i /root/.ssh/id_rsa.pub root@192.168.209.129


启动成功,jps命令查看Master和Worker节点是否已启动

[root@localhost sbin]# jps
14084 Master
14244 Jps
14186 Worker


验证spark环境启动是否成功
浏览器输入 ip+8080端口 如:http://192.168.209.129:8080/

关闭Spark

  • 在sbin下执行 ./stop-all.sh,然后jps看master和worker进程是否关闭了
3.2 集群环境安装

服务器规划

  • Spark也是一个主从架构的分布式计算引擎。主节点是Master,从节点是Worker。
Server IP Master Worker
bigdata02 192.168.173.132
bigdata03 192.168.173.133  
bigdata04 192.168.173.134  

环境准备
设置hostname
在Master节点的bigdata02机器上,将hostname置为bigdata02

hostnamectl set-hostname bigdata02

同样的方式在另外两台worker节点上分别设置hostname为bigdata03、bigdata04

配置hosts文件信息
在三个节点都需要配置 vim /etc/hosts

192.168.173.132 bigdata02
192.168.173.133 bigdata03
192.168.173.134 bigdata04

设置节点之间的ssh免密登录
配置132节点到133节点和134节点的ssh免密登录,一定要配,具体配法此处不做说明,可参考网上搜索的博文:https://www.cnblogs.com/shireenlee4testing/p/10366061.html
下载并安装Spark
在主节点服务器上的路径/spark,将spark压缩包放入此路径,并解压。

[root@bigdata02 spark]# tar -zxvf spark-2.4.8-bin-hadoop2.7.tgz

修改配置文件
在主节点上进入解压后的文件对应的conf路径下

将slaves.template拷贝并改名slaves

[root@bigdata02 conf]# cp slaves.template slaves

修改slaves文件如下

bigdata02
bigdata03
bigdata04

将spark-env.sh.template拷贝并改名spark-env.sh

[root@bigdata02 conf]# cp spark-env.sh.template spark-env.sh

vim spark-env.sh,在最后添加如下内容,如下配置路径视情况修改

export JAVA_HOME=/usr/local/src/jdk8
export SCALA_HOME=/usr/local/src/scala-2.12.11
export SPARK_HOME=/spark/spark-2.4.8-bin-hadoop2.7
export SPARK_MASTER_HOST=bigdata02
export SPARK_EXECUTOR_MEMORY=1G


分发Spark安装配置信息到从节点
在bigdata02上依次执行

[root@bigdata02 spark]# scp -r spark-2.4.8-bin-hadoop2.7 root@bigdata03:/spark/spark-2.4.8-bin-hadoop2.7/
[root@bigdata02 spark]# scp -r spark-2.4.8-bin-hadoop2.7 root@bigdata04:/spark/spark-2.4.8-bin-hadoop2.7/

修改环境变量配置文件
在主节点bigdata02上修改配置文件 vim /etc/profile,以下路径视本机情况而定

export JAVA_HOME=/usr/local/src/jdk8
export JRE_HOME=${JAVA_HOME}/jre
export CLASS_PATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export HADOOP_HOME=/hadoop/hadoop-2.7.7
export SCALA_HOME=/usr/local/src/scala-2.12.11
export SPARK_HOME=/spark/spark-2.4.8-bin-hadoop2.7
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$SCALA_HOME/bin:$SPARK_HOME/bin

保存修改并退出后,执行加载命令使之生效

source /etc/profile


启动集群Spark
在Master节点即bigdata02上,进入sbin路径并执行启动Spark集群命令 ./start-all.sh

[root@bigdata02 sbin]# ./start-all.sh
starting org.apache.spark.deploy.master.Master, logging to /spark/spark-2.4.8-bin-hadoop2.7/logs/spark-root-org.apache.spark.deploy.master.Master-1-bigdata02.out
bigdata02: starting org.apache.spark.deploy.worker.Worker, logging to /spark/spark-2.4.8-bin-hadoop2.7/logs/spark-root-org.apache.spark.deploy.worker.Worker-1-bigdata02.out
bigdata03: starting org.apache.spark.deploy.worker.Worker, logging to /spark/spark-2.4.8-bin-hadoop2.7/logs/spark-root-org.apache.spark.deploy.worker.Worker-1-bigdata03.out
bigdata04: starting org.apache.spark.deploy.worker.Worker, logging to /spark/spark-2.4.8-bin-hadoop2.7/logs/spark-root-org.apache.spark.deploy.worker.Worker-1-bigdata04.out

分别在三个节点用jps命令查看启动节点内容(注:此三个节点之前做过ApacheHadoop的集群并启动着)

[root@bigdata02 sbin]# jps
1776 NameNode
2292 NodeManager
67574 Master
67722 Jps
67645 Worker
1919 DataNode
[root@bigdata03 conf]# jps
1692 DataNode
1884 NodeManager
75053 Jps
1775 SecondaryNameNode
74990 Worker
[root@bigdata04 spark-2.4.8-bin-hadoop2.7]# jps
2128 ResourceManager
1796 NodeManager
66361 Worker
66445 Jps
1677 DataNode


验证Spark集群环境
浏览器输入 ip+8080端口 如:http://192.168.173.132:8080/

4. Centos 7安装配置Hadoop 2.7.7

https://www.songbin.top/post_47911.html


相关文章推荐

全部评论: 0

    我有话说: