一、 安装ssh免密登录
命令:ssh-keygen
overwrite(覆盖写入)输入y
一路回车
将生成的密钥发送到本机地址
ssh-copy-id localhost
(若报错命令无法找到则需要安装openssh-clients)
yum –y install openssh-clients
测试免密设置是否成功
ssh localhost
二、 卸载已有java
确定JDK版本
rpm –qa | grep jdk
rpm –qa | grep gcj
切换到root用户,根据结果卸载java
yum -y remove java-1.8.0-openjdk-headless.x86_64
yum -y remove java-1.7.0-openjdk-headless.x86_64
卸载后输入java –version查看
三、 安装java
切换回hadoop用户,命令:su hadoop
查看下当前目标文件,命令:ls
将桌面的hadoop文件夹中的java及hadoop安装包移动到app文件夹中
命令:
mv /home/hadoop/Desktop/hadoop/jdk-8u141-linux-x64.gz /home/hadoop/app
mv /home/hadoop/Desktop/hadoop/hadoop-2.7.0.tar.gz /home/hadoop/app
解压java程序包,命令:tar –zxvf jdk-7u79-linux-x64.tar.gz
创建软连接
ln –s jdk1.8.0_141 jdk
配置jdk环境变量
切换到root用户
再输入vi /etc/profile
输入
export JAVA_HOME=/home/hadoop/app/jdk1.8.0_141
export JAVA_JRE=JAVA_HOME/jre
export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_JRE/lib
export PATH=$PATH:$JAVA_HOME/bin
保存退出,并使/etc/profile文件生效
source /etc/profile
能查询jdk版本号,说明jdk安装成功
java -version
四、 安装hadoop
切换回hadoop用户,解压缩hadoop-2.6.0.tar.gz安装包
创建软连接,命令:ln -s hadoop-2.7.0 hadoop
验证单机模式的Hadoop是否安装成功,命令:
hadoop/bin/hadoop version
此时可以查看到Hadoop安装版本为Hadoop2.7.0,说明单机版安装成功。
在Hadoop2.6.0安装目录下新建一个源数据文件test.txt,输入以下随机内容
测试运行Hadoop
单机环境,输入命令运行Hadoop自带的WordCount程序,统计单词个数: bin/hadoop jar
share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.0. jar wordcount test.txt output
此时MapReduce程序读取的本地文件test.txt,输出目录output也在本地
查看wordcount运行结果
五、 配置伪分布式登录
进入hadoop/etc/hadoop目录,修改相关配置文件
cd etc/
cd hadoop/
修改core-site.xml配置文件
修改hdfs-site.xml配置文件
修改hadoop-env.sh配置文件
修改mapred-site.xml.template配置文件
修改yarn-site.xml配置文件
配置hadoop环境变量
使修改生效,命令:sourec ~/.bashrc
创建hadoop相关数据目录
在hadoop相关配置文件中配置了多个数据目录,提前建立这些文件夹
格式化namenode
在启动hadoop集群前需要格式化namenode。需要注意的是,第一次安装Hadoop集群的时候需要格式化Namenode,以后直接启动Hadoop集群即可,不需要重复格式化Namenode。
切回到hadoop目录,输入如下命令:
bin/hdfs namenode -format
启动hadoop伪分布式集群
sbin/start-all.sh
启动完毕输入jps查看
出现上面所有进程表示启动成功
通过网页访问
localhost:50070
localhost:8088
测试运行hadoop伪分布式集群
hadoop伪分布式集群搭建完成,通过命令查看hdfs根目录下没有任何文件
bin/hdfs dfs –ls /
将之前本地新建的test.txt文件上传至hdfs
bin/hdfs dfs –mkdir /data (在集群上新建一个数据文件夹)
bin/hdfs dfs –put test.txt /data(将本地的test文件上传到集群中的data文件夹)
运行wordcount程序计数
bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.0.jar wordcount /data/test.txt /data/output
查看运行结果
bin/hdfs dfs –cat /data/output/*