因为比赛的限制是使用Hadoop2.7.2,估在此文章下面的也是使用Hadoop2.7.2,具体下载地址为Hadoop2.7.2
开始的准备目前在我的实验室上有三台Linux主机,因为需要参加一个关于spark数据分析的比赛,所以眼见那几台服务器没有人用,我们团队就拿来配置成集群。具体打算配置如下的集群
主机名IP地址(内网)SparkMaster 10.21.32.106
SparkWorker1 10.21.32.109
SparkWorker2 10.21.32.112
首先进行的是ssh免密码登录的操作 配置Java环境
因为我那三台电脑也是配置好了JDK了,所以在此也不详细说。
配置好Java的机子可以使用
来查看Java的版本
下载Hadoop2.7.2因为我最后的文件是放在/usr/local下面的,所以我也直接打开/usr/local文件夹下。直接
wget https://mirrors.tuna.tsinghua.edu.cn/apache/hadoop/common/hadoop-2.7.2/hadoop-2.7.2.tar.gz 安装Hadoop以及配置Hadoop环境解压
tar -zxvf hadoop-2.7.2.tar.gz删除
rm -rf hadoop-2.7.2.tar.gz解压删除之后打开hadoop-2.7.2文件夹,在etc/hadoop/hadoop-env.sh中配置JDK的信息
先查看本机的jdk目录地址在哪里
将
export JAVA_HOME=${JAVA_HOME}改为
export JAVA_HOME=/usr/java/jdk1.8.0_131为了方便我们以后开机之后可以立刻使用到Hadoop的bin目录下的相关命令,可以把hadoop文件夹下的bin和sbin目录配置到/etc/profile文件中。
vi /etc/profile添加
export PATH=$PATH:/usr/local/hadoop-2.7.2/bin:/usr/local/hadoop-2.7.7/sbin按一下esc,按着shift+两次z键保存
使用
source /etc/profile使得命令配置信息生效,是否生效可以通过
hadoop version查看
配置Hadoop分布式集群 前言考虑是为了建立spark集群,所以主机命名为SparkMaster SparkWorker1 SparkWorker2
修改主机名 vi /etc/hostname修改里面的名字为SprakMaster,按一下esc,按着shift+两次z键保存。
设置hosts文件使得主机名和IP地址对应关系 vi /etc/hosts配置主机名和IP地址的对应关系。
Ps:其他两台slave的主机也修改对应的SparkWorker1 SparkWorker2,如果修改完主机名字之后户籍的名字没有生效,那么重启系统便可以。三台机子的hostname与hosts均要修改
在==三台==机子的总的hadoop-2.7.2文件夹下建立如下四个文件夹目录/tmp,用来存储临时生成的文件
目录/hdfs,用来存储集群数据
目录hdfs/data,用来存储真正的数据
目录hdfs/name,用来存储文件系统元数据
mkdir tmp hdfs hdfs/data hdfs/name 配置hadoop文件在此先修改SparkMaster的配置文件,然后修改完毕后通过rsync命令复制到其他节点电脑上。
修改core-site.xml vi etc/hadoop/core-site.xml具体修改如下:
<configuration> <property> <name>fs.defaultFS</name> <value>hdfs://SparkMaster:9000</value> </property> <property> <name>hadoop.tmp.dir</name> <value>file:/usr/local/hadoop-2.7.2/tmp</value> </property> <property> <name>io.file.buffer.size</name> <value>131072</value> </property> </configuration>