The Way of C++

  C++博客 :: 首页 :: 联系 :: 聚合  :: 管理
  55 Posts :: 0 Stories :: 19 Comments :: 0 Trackbacks

公告

The first time i use this blog, i will write something that i learn which i think is worth write down.

常用链接

留言簿(3)

我参与的团队

搜索

  •  

最新评论

阅读排行榜

评论排行榜

几天在单机环境下搭好了Hadoop,这两天开始着手搭建集群环境。使用设备是我自己在实验室的一台PC机和实验室的两台服务器,PC作为Namenode节点,同时运行一个Namenode和一个Datanode,两台服务器作为slave,各自作为一个Datanode,这样就一共有3个Datanode节点。IP地址分配为:

 

     master:192.168.5.236,Ubuntu9.10,运行Namenode,SecondaryNamenode,Datanode,JobTracker,TaskTracker

     slave1:192.168.5.201,Debian4.0,运行Datanode,TaskTracker

     slave2:192.168.5.202,Debian4.0,运行Datanode,TaskTracker

 

    1.在所有节点上配置java环境

   

    2.登录这3台机器的用户名必须相同。

 

    3.修改三台机器的/etc/hosts,

           # /etc/hosts (for master AND slave)

           192.168.5.236    master

           192.168.5.201    slave1

           192.168.5.202    slave2          

    然后在每台机器使用ping hostname ,确保可以连接成功。

    4.设置namenode以ssh免密码方式连接datanode

    a)先在PC上设置ssh免密码登录:

 

 hadoop@ubuntu:~$ ssh-keygen -t rsa -P ""

 Generating public/private rsa key pair.

 Enter file in which to save the key (/home/hadoop/.ssh/id_rsa):

 Created directory '/home/hadoop/.ssh'.

 Your identification has been saved in /home/hadoop/.ssh/id_rsa.

 Your public key has been saved in /home/hadoop/.ssh/id_rsa.pub.

 The key fingerprint is:

 9d:47:ab:d7:22:54:f0:f9:b9:3b:64:93:12:75:81:27 hadoop@ubuntu

 hadoop@ubuntu:~$

 

    b)然后,再把master的$HOME/.ssh/id_rsa.pub文件拷贝到slave1和slave2的$HOME/.ssh/下。

 

    5.修改master节点的配置文件

    a)修改 <HADOOP_INSTALL>/conf/masters如下:

 

                                         master

 

     b)修改 <HADOOP_INSTALL>/conf/slaves如下:

 

                                   master //此处将namenode节点也同时做为一个datanode节点

                                   slave1

                                   slave2

 

    6.修改namenode的配置文件

    a)修改conf/hadoop-env.sh,添加java_home的路径

            export JAVA_HOME=/usr/jdk1.6.0_18

    b)修改conf/core-site.xml,加入

            <property>

                 <name>fs.default.name</name>

                 <value>hdfs://master:9000</value>

            </property>

            <property>

                 <name>hadoop.tmp.dir</name>

                 <value>这里写想存放HDFS文件系统的位置</value>

            </property>

    c)修改conf/mapred-site.xml,加入

            <property>

                 <name>mapred.job.tracker</name>

                 <value>master:9001</value>

            </property>

            <property>

                 <name>mapred.local.dir</name>

                 <value>这里写想存放临时文件的位置</value>

            </property>

     d)修改conf/hdfs-site.xml,加入

              <property>

                 <name>dfs.replication</name>

                 <value>3</value>      注:这里有3个datanode,所以有三个副本

            </property>

             <property>

                 <name>dfs.name.dir</name>

                 <value></value>     

            </property>

            <property>

                 <name>dfs.data.dir</name>

                 <value>3</value>      注

            </property>

   

   

     7.配置完成,将namenode节点的hadoop文件夹复制到其它的datanode节点上,所在的目录必须一样。如

  scp -r ~/Hadoop slaver1:~/ 


  复制完后在master上格式化Namenode,

                     

                          $ bin/hadoop namenode -format

    

     8.然后通过bin/start-all.sh启动各节点即可,每个节点都要启动。在所有节点上,可通过jps查看相应的进程

     9.在namenode节点上,使用bin/hadoop dfsadmin -report 可查看各节点的情况。也可以浏览器输入 http://master:50070和 http://master:50030查看相应的信息。

   10.hdfs测试
        运行bin/目录的hadoop命令,可以查看Haoop所有支持的操作及其用法,这里以几个简单的操作为例。
        在HDFS建立目录:
      bin/hadoop dfs -mkdir testdir
       在HDFS中建立一个名为testdir的目录

      复制文件到HDFS:
     bin/hadoop dfs -put /home/hadoop/large.zip testfile.zip
       把本地文件large.zip拷贝到HDFS的根目录/user/hadoop/下,文件名为testfile.zip

        查看HDFS的现有文件
       bin/hadoop dfs -ls


posted on 2010-03-27 13:14 koson 阅读(946) 评论(0)  编辑 收藏 引用 所属分类: Hadoop

只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理