1.需要软件
jdk
hadoop
将jdk和hadoop解压到自己想要存放的路径
这里我解压到/usr/目录下
sudo tar -zxvf java1.8.tar.gz -C /usr/
hadoop同理
然后赋予777权限 和使文件所属改为当前用户
sudo chmod -R 777 hadoop/
sudo chown -R chaoba hadoop/
执行完上述操作后,进行环境变量配置
sudo vim ~/.bashrc
export JAVA_HOME=/usr/jdk
export HADOOP_HOME/usr/hadoop
export PATH=$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH
保存后刷新配置文件
sudo source ~/.bashrc
做完上面的操作后。
进入hadoop/etc/hadoop/目录下进行配置文件
需要更改5个文件
vim hadoop-env.sh 更改其中java_home路径为本机java路径
core-site.xml
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>file:/home/chaoba/tmp</value>
<description>Abase for other temporary directories.</description>
</property>
</configuration>
hdfs-site.xml
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:/usr/hadoop-2.7.4/tmp/dfs/name</value>
</property>
<property>
<name>dfs.namenode.data.dir</name>
<value>file:/usr/hadoop-2.7.4/tmp/dfs/data</value>
</property>
</configuration>
修改mapred-site.xml
说明:在/etc/hadoop的目录下,只有一个mapred-site.xml.template文件,所以必须改名
mv mapred-site.xml.template mapred-site.xml
在mapred-site.xml文件中
<configuration>
<property> //指明mapreduce运行在yarn上
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
修改yarn-site.xml
<configuration>
<property>
//reduce获取数据的方式
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
配置完成后
配置ssh免密登录:
sudo apt-get install -y openssh-server
cd ~/.ssh/ # 若没有该目录,请先执行一次ssh localhost
ssh-keygen -t rsa # 会有提示,都按回车就可以,如果已经存在,直接进入下一步就可以了
cat ./id_rsa.pub >> ./authorized_keys # 加入授权,把id_rsa.pub 追加到授权的 key 里面去
http://localhost:50070
初始化HDFS系统 bin/hdfs namenode -format
sbin/start-all.sh
# 在hdfs的根目录下建立了一个test目录 bin/hdfs dfs -mkdir /test # 查看HDFS根目录下的目录结构 bin/hdfs dfs -ls /
# 上传 bin/hdfs dfs -put /home/hadoop/haha.txt /test/ # 查看 bin/hdfs dfs -ls /test/
运行wordcount demo # 将运行结果保存在/test/out目录下 bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.4.jar wordcount /test/haha.txt /test/out # 查看/test/out目录下的文件 bin/hdfs dfs -ls /test/out 可以得到结果,并保存在part-r-00000中。 # 查看part-r-00000中的运行结果 bin/hadoop fs -cat /test/out/part-r-00000