Hadoop2.7.5+Spark2.2.1分布式集群搭建

一、运行环境
CentOS 6.5
Spark 2.2.1
Hadoop 2.7.5
Java JDK 1.8
Scala 2.12.5

二、节点IP及角色对应关系
节点名 IP Spark角色 hadoop角色 hyw-spark-1 10.39.60.221 master、worker master hyw-spark-2
10.39.60.222 worker slave hyw-spark-3 10.39.60.223 worker slave


三、基础环境配置
3.1、各节点创建hadoop用户并设置sudo权限 (在root用户下执行)
#groupadd -g hadoop
#useradd -g hadoop hadoop
#passwd hadoop
#chmod 770 /etc/sudoers
#echo 'hadoop   ALL=(ALL)    NOPASSWD: ALL' >> /etc/sudoers
#chmod 440 /etc/suoders

3.2、各节点配置主机名与IP地址的映射 (在root用户下执行)
#vim /etc/hosts
添加如下内容:
10.39.60.221 hyw-spark-1
10.39.60.222 hyw-spark-2
10.39.60.223 hyw-spark-3

3.3、配置ssh免密码登录 (在hadoop用户下执行)
各节点执行以下命令生成秘钥
#su - hadoop
$cd ~/.ssh
$ssh-keygen -t rsa
$ssh-keygen -t dsa
在hyw-spark-1节点上执行以下命令
$cat ./id_rsa.pub >> ./authorized_keys
$cat ./id_dsa.pub >> ./authorized_keys
$ssh hyw-spark-2 cat ~/.ssh/id_rsa.pub >> ./authorized_keys
$ssh hyw-spark-2 cat ~/.ssh/id_dsa.pub >> ./authorized_keys
$ssh hyw-spark-3 cat ~/.ssh/id_rsa.pub >> ./authorized_keys
$ssh hyw-spark-3 cat ~/.ssh/id_dsa.pub >> ./authorized_keys
$scp ./authorized_keys hadoop@hyw-spark-2:~/.ssh
$scp ./authorized_keys hadoop@hyw-spark-3:~/.ssh
各节点执行以下命令验证等效性
$ssh hyw-spark-1 date
$ssh hyw-spark-2 date
$ssh hyw-spark-3 date

四、jdk安装(在hadoop用户下执行)
4.1、下载文件到/opt目录下,解压文件并改名
$cd /opt
$sudo tar -xzvf /opt/jdk-8u73-linux-x64.tar.gz
$sudo mv  jdk1.8.0_73  jdk1.8

4.2、设置环境变量
$sudo vi /etc/profile
添加如下内容
export JAVA_HOME=/opt/jdk1.8
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin
更新环境变量
source /etc/profile

4.3、检查jdk版本
$java -version
java version "1.8.0_73"
Java(TM) SE Runtime Environment (build 1.8.0_73-b02)
Java HotSpot(TM) 64-Bit Server VM (build 25.73-b02, mixed mode)

五、scala安装(在hadoop用户下执行)
5.1、下载文件到/opt目录下,解压文件到/usr/local
$cd /opt
$sudo tar -xzvf scala-2.12.5.tgz  -C /usr/local
$cd /usr/local
$sudo mv scala-2.12.5 scala
$sudo chown -R hadoop:hadoop scala

5.2、设置环境变量
$sudo vi /etc/profile
添加如下内容
export SCALA_HOME=/usr/local/scala
export PATH=$JAVA_HOME/bin:$PATH:$HOME/bin:$SCALA_HOME/bin
更新环境变量
$source /etc/profile

5.3、检查scala版本
$scala -version
Scala code runner version 2.12.5 -- Copyright 2002-2018, LAMP/EPFL and Lightbend, Inc.

六、hadoop集群安装(在hadoop用户下执行)
6.1、下载文件到/opt目录下,解压文件到/usr/local
$cd /opt
$sudo tar -xzvf /opt/hadoop-2.7.5.tar.gz -C /usr/local
$cd /usr/local
$sudo mv hadoop-2.7.5  hadoop
$sudo chown -R hadoop:hadoop hadoop
$sduo mkdir /usr/local/hadoop/tmp

6.2、设置环境变量
$sudo vi /etc/profile
添加如下内容(注意hadoop目录下的bin和sbin都需要添加)
export HADOOP_HOME=/usr/local/hadoop
export PATH=$JAVA_HOME/bin:$PATH:$HOME/bin:$SCALA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
更新环境变量
$source /etc/profile

6.3、检查hadoop版本
$hadoop version
Hadoop 2.7.5
Subversion https://shv@git-wip-us.apache.org/repos/asf/hadoop.git -r 18065c2b6806ed4aa6a3187d77cbe21bb3dba075
Compiled by kshvachk on 2017-12-16T01:06Z
Compiled with protoc 2.5.0
From source with checksum 9f118f95f47043332d51891e37f736e9
This command was run using /usr/local/hadoop/share/hadoop/common/hadoop-common-2.7.5.jar

6.4、hadoop配置文件修改
以下操作均在master节点配置,配置完成后scp到slave节点
cd /usr/local/hadoop/etc/hadoop
6.4.1、$vim hadoop-env.sh
添加如下内容:
export JAVA_HOME=/opt/jdk1.8
export HADOOP_PREFIX=/usr/local/hadoop
6.4.2、$vim yarn-env.sh
添加如下内容:
export JAVA_HOME=/opt/jdk1.8
6.4.3、$vim core-site.xml
将文件末尾 修改为
  1. <configuration>
  2.    <property>
  3.         <name>fs.defaultFS</name>
  4.         <value>hdfs://hyw-spark-1:9000</value>
  5.     </property>
  6.     <property>
  7.         <name>hadoop.tmp.dir</name>
  8.         <value>file:/usr/local/hadoop/tmp</value>
  9.     </property>
  10. </configuration>
6.4.4、$vim hdfs-site.xml
将文件末尾 修改为
  1. <configuration>
  2.     <property>
  3.         <name>dfs.replication</name>
  4.         <value>3</value>
  5.     </property>
  6. </configuration>
6.4.5、$vim mapred-site.xml
将文件末尾 修改为
  1. <configuration>
  2.     <property>
  3.         <name>mapreduce.framework.name</name>
  4.         <value>yarn</value>
  5.     </property>
  6. </configuration>


6.4.6、$vim yarn-site.xml
将文件末尾修改为
  1. <configuration>
  2. <!-- Site specific YARN configuration properties -->
  3.     <property>
  4.         <name>yarn.nodemanager.aux-services</name>
  5.         <value>mapreduce_shuffle</value>
  6.     </property>
  7.     <property>
  8.         <name>yarn.resourcemanager.hostname</name>
  9.         <value>hyw-spark-1</value>
  10.     </property>
  11. </configuration>
6.4.7、$vim slaves
添加如下内容
hyw-spark-1
hyw-spark-2
hyw-spark-3
6.4.8、拷贝文件到slave节点(总共7个文件)
$scp hadoop-env.sh yarn-env.sh core-site.xml hdfs-site.xml mapred-site.xml yarn-site.xml slave hadoop@hyw-spark-2:/usr/local/spark/etc/spark/
$scp hadoop-env.sh yarn-env.sh core-site.xml hdfs-site.xml mapred-site.xml yarn-site.xml slave hadoop@hyw-spark-3:/usr/local/spark/etc/spark/

6.5、启动hadoop集群
6.5.1、格式化NameNode
在Master节点上,执行如下命令
$hdfs namenode -format
成功的话,会看到 “successfully formatted” 和 “Exitting with status 0” 的提示,若为 “Exitting with status 1” 则是出错。
6.5.2、启动HDFS(NameNode、DataNode)
在Master节点上,执行如下命令
$start-dfs.sh
使用jps命令在Master上 可以看到如下进程:
8757 SecondaryNameNode
7862 DataNode
7723 NameNode
8939 Jps
使用jps命令在两个Slave上可以看到如下进程:
7556 Jps
7486 DataNode
6.5.3启动Yarn(ResourceManager 、NodeManager)
在Master节点上,执行如下命令
$start-yarn.sh
使用jps命令 在Master上 可以 看到如下进程:
9410 Jps
8757 SecondaryNameNode
8997 ResourceManager
7862 DataNode
9112 NodeManager
7723 NameNode
使用jps命令 在两个Slave上可以看到如下进程:
7718 Jps
7607 NodeManager
7486 DataNode
6.5.4通过浏览器查看HDFS信息
浏览器访问http://10.39.60.221:50070,出现如下界面


七、spark安装(在hadoop用户下执行)
7.1、下载文件到/opt目录下,解压文件到/usr/local
$cd /opt
$sudo tar -xzvf spark-2.2.1-bin-hadoop2.7.tgz  -C /usr/local
$cd /usr/local
$sudo mv spark-2.2.1-bin-hadoop2.7/ spark
$sudo chown -R hadoop:hadoop spark

7.2、设置环境变量
$sudo vi /etc/profile
添加如下内容
export SPARK_HOME=/usr/local/spark
PATH=$JAVA_HOME/bin:$PATH:$HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$SCALA_HOME/bin:$SPARK_HOME/bin:$SPARK_HOME/sbin
更新环境变量
source /etc/profile

7.3、配置文件修改
以下操作均在master节点配置,配置完成后scp到slave节点
$cd /usr/local/spark/conf
7.3.1、$cp spark-env.sh.template spark-env.sh
$vim spark-env.sh
添加如下内容
export JAVA_HOME=/opt/jdk1.8
export HADOOP_CONF_DIR=/usr/local/hadoop/etc/hadoop
export SCALA_HOME=/usr/local/scala
export SPARK_MASTER_IP=10.39.60.221
export SPARK_WORKER_MEMORY=1g
7.3.2、$cp slaves.template slaves
$vim slaves
添加如下内容
hyw-spark-1
hyw-spark-2
hyw-spark-3
7.3.3拷贝文件到slave节点
$scp -r spark-env.sh slaves hadoop@hyw-spark-2:/usr/local/spark/conf/
$scp -r spark-env.sh slaves hadoop@hyw-spark-3:/usr/local/spark/conf/

7.4、启动spark
7.4.1、启动Master节点
Master节点上,执行如下命令:
$start-master.sh
使用jps命令 在master节点上可以看到如下进程:
10016 Jps
8757 SecondaryNameNode
8997 ResourceManager
7862 DataNode
9112 NodeManager
9832 Master
7723 NameNode
7.4.2、启动worker节点
Master节点上,执行如下命令:
$start-slaves.sh
使用jps命令 在三个worker节点上可以看到如下进程:
7971 Worker
7486 DataNode
8030 Jps

7.5、 通过浏览器查看spark信息
浏览器访问http://10.39.60.221:8080,出现如下界面


至此,spark的安装就完成啦~





来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/21167890/viewspace-2152191/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/21167890/viewspace-2152191/

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值