[ 大数据系列之Hadoop ][1] Hadoop SingleNode和伪装分布式安装

安装预备

  1. 在集群上安装 ssh, rsync 工具。 yum install –y ssh rsync
  2. 下载Oracle的JDK,我下载的是1.7 版本,害怕 1.8 太新了不兼容。 http://www.oracle.com/technetwork/java/javase/downloads/index.html 
  3. 下载hadoop的tar.gz 包。http://apache.dataguru.cn/hadoop/common/stable/ 

 

Single Node/ Standalone 安装

1.  解压Hadoop的tar.gz到/usr/local/hadoop  , 解压JDK的tar.gz 到 /usr/local/java , 并且设置 JAVA_HOME 环境变量和 HADOOP_PREFIX 环境变量

[ 大数据系列之Hadoop ][1] Hadoop SingleNode和伪装分布式安装_第1张图片

2.  验证安装,输入 hadoop 命令看到如下消息即为成功:

[ 大数据系列之Hadoop ][1] Hadoop SingleNode和伪装分布式安装_第2张图片

3.  这样Standalone 就安装好了。

默认情况下, Hadoop 以 non-cluster 方式运行,非常便于调试。下面我们进行一个简单的字符串查找的实验过程:

1) 创建输入目录并且准备原始数据:

image_thumb26

2) 运行hadoop程序,查找其中特定的正则表达式字符串。

hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.5.0.jar grep input output 'dfs[a-z.]+'(剩下的太多就不截图了) [ 大数据系列之Hadoop ][1] Hadoop SingleNode和伪装分布式安装_第3张图片

3)输出到output文件夹,下面我们看下output文件夹的内容:

 image_thumb28

Pseudo-Distributed安装

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的结果应该无需密码了。

image_thumb29

再次执行例子

1. 格式化文件系统

# hdfs namenode –format

[ 大数据系列之Hadoop ][1] Hadoop SingleNode和伪装分布式安装_第4张图片

2. 启动 NameNode 后台程序和 DataNode 后台程序

# start-dfs.sh

[ 大数据系列之Hadoop ][1] Hadoop SingleNode和伪装分布式安装_第5张图片

3. 访问 http://172.16.0.181:50070 获得NameNode节点基本信息。

4. 创建 user 文件夹和 morgan 文件夹

image_thumb33

5. 把文件放到hdfs文件系统上。

# bin/hdfs dfs -put  etc/hadoop input  /

image_thumb35

6. 再次跑上面的命令,这一次是在hdfs上运行。

# hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.5.0.jar grep /input /output 'dfs[a-z.]+' [ 大数据系列之Hadoop ][1] Hadoop SingleNode和伪装分布式安装_第6张图片

7. 获取hdfs上的结果到文件系统中并且cat查看。

# hdfs dfs -get /output output

[ 大数据系列之Hadoop ][1] Hadoop SingleNode和伪装分布式安装_第7张图片

8. 停止hdfs。

# stop-dfs.sh

[ 大数据系列之Hadoop ][1] Hadoop SingleNode和伪装分布式安装_第8张图片

 

在SingleNode上运行YARN

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

 [ 大数据系列之Hadoop ][1] Hadoop SingleNode和伪装分布式安装_第9张图片

查看8088端口。http://172.16.0.181:8088/

3. 运行一个MapReduce的任务的时候可以看到网页上显示的结果。

[ 大数据系列之Hadoop ][1] Hadoop SingleNode和伪装分布式安装_第10张图片

4. 停止YARN,ResourceManager和NodeManager进程。

# stop-yarn.sh

[ 大数据系列之Hadoop ][1] Hadoop SingleNode和伪装分布式安装_第11张图片

 

总结:

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 来判定进程的启动情况

你可能感兴趣的:([ 大数据系列之Hadoop ][1] Hadoop SingleNode和伪装分布式安装)