1. 解压Hadoop的tar.gz到/usr/local/hadoop , 解压JDK的tar.gz 到 /usr/local/java , 并且设置 JAVA_HOME 环境变量和 HADOOP_PREFIX 环境变量
2. 验证安装,输入 hadoop 命令看到如下消息即为成功:
3. 这样Standalone 就安装好了。
默认情况下, Hadoop 以 non-cluster 方式运行,非常便于调试。下面我们进行一个简单的字符串查找的实验过程:
1) 创建输入目录并且准备原始数据:
2) 运行hadoop程序,查找其中特定的正则表达式字符串。
hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.5.0.jar grep input output 'dfs[a-z.]+'(剩下的太多就不截图了)
3)输出到output文件夹,下面我们看下output文件夹的内容:
1. 修改配置文件core-site.xml 和 hdfs-site.xml
1) etc/hadoop/core-site.xml
< configuration > < property > < name >fs.defaultFS </ name > < value >hdfs://172.16.0.181:9000 </ value > </ property > </ configuration >2) etc/hadoop/hdfs-site.xml
< configuration > < property > < name >dfs.replication </ name > < value >1 </ value > </ property > </ configuration >2. 设置无登陆ssh
# ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa # cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys执行ssh localhsot的结果应该无需密码了。
1. 格式化文件系统
# hdfs namenode –format
2. 启动 NameNode 后台程序和 DataNode 后台程序
# start-dfs.sh
3. 访问 http://172.16.0.181:50070 获得NameNode节点基本信息。
4. 创建 user 文件夹和 morgan 文件夹
5. 把文件放到hdfs文件系统上。
# bin/hdfs dfs -put etc/hadoop input /
6. 再次跑上面的命令,这一次是在hdfs上运行。
# hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.5.0.jar grep /input /output 'dfs[a-z.]+'7. 获取hdfs上的结果到文件系统中并且cat查看。
# hdfs dfs -get /output output
8. 停止hdfs。
# stop-dfs.sh
1. 修改配置文件。
1) etc/hadoop/mapred-site.xml
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
2) etc/hadoop/yarn-site.xml
< configuration >
< property >
< name >yarn.nodemanager.aux-services </ name >
< value >mapreduce_shuffle </ value >
</ property >
</ configuration >
2. 启动ResourceManager和 NodeManager进程。
# start-yarn.sh
查看8088端口。http://172.16.0.181:8088/
3. 运行一个MapReduce的任务的时候可以看到网页上显示的结果。
4. 停止YARN,ResourceManager和NodeManager进程。
# stop-yarn.sh
总结:
1. hdfs的配置端口为8000
2. NameNode页面 http://172.16.0.181:50070 YARN页面 http://172.16.0.181:8088
3. 启动与停止脚本: start/stop-dfs.sh start/stop-yarn.sh
4. 记得查看 jps 命令的结果 和 log 来判定进程的启动情况