hadoop集群的配置笔记

        以前在单机环境下搭好过Hadoop开发环境,这几天试着搭建了一个集群环境。使用设备是我们学校机房的两台电脑,master 作为Namenode节点,另外一个(slave1)作为Datanode,之后又搭建了六台,步骤基本差不多,这里把搭建两台的步骤贴上,防止以后有需要。
    IP地址分配为:
     master:192.168.0.100,Ubuntu 11.10,运行Namenode,SecondaryNamenode,JobTracker
     slave1:192.168.0.101,Ubuntu 11.10,运行Datanode,TaskTracker
    1.使用ping命令看看两台机器是否能ping通,例如在master上输入以下命令:
                  ping 192.168.0.101
    
    2.其次是配置java环境,这个略去(见单机配置)~~~~
    3.把master上已有的hadoop压缩文件拷贝slave1的相同目录下,注意一定是相同目录,而且登录这2台机器

的用户名必须相同,我试验用的是用户名为cloud,hadoop的压缩文件放在/home/cloud/下。
                      拷贝可以使用  $scp /home/cloud/hadoop0.20.2.tar.gz slave1:/home/cloud/
    4.将hadoop压缩文件解压
                  $tar xzf hadoop0.20.2

    5.修改三台机器的/etc/hosts,
                   # vi /etc/hosts   或者 #sudo gedit /etc/hosts
                     192.168.0.100    master
                      192.168.0.101    slave1
     6.修改hadoop安装目录下的master文件的内容为master(namenode的主机名),slaves文件的内容为

slave1(datanode的主机名,如果有多台datanode则都将其主机名加入)                
    7.设置namenode以ssh免密码方式连接datanode
        a)先在namenode上设置ssh免密码登录:

            $ ssh-keygen -t dsa -P '' -f /home/cloud/.ssh/id_dsa
    此时可以在  /home/cloud/.ssh中看到生成的私钥和公钥(.ssh文件是隐藏的,使用ctrl+h组合键就

可以查看哦)
    b)再使用以下命令生成authorized_keys,主要是为了将它发给各个datanode,从而namenode访问

datanode时就不再需要密码了
    $ cat id_rsa.pub >> authorized_keys
然后,再把master的/home/.ssh/authorized_keys文件拷贝到slave1的/home/.ssh/下。
 
 
    8.所有节点上修改配置文件,可以砸master上面修改,然后在copy到各个datanode上
        a)修改conf/hadoop-env.sh,添加java_home的路径,这个可以根据各个节点自行配置
            export JAVA_HOME=/usr/lib/.........
        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>1</value>      
            </property>
         记住复制到各个datanode上哦
     例如:$scp /home/cloud/hadoop0.20.2/conf/core-site.xml

cloud@slave1:/home/cloud/hadoop0.20.2/conf/core-site.xml
     9.配置完成,在master上格式化Namenode,
                     
                          $ bin/hadoop namenode -format
   
     10.然后通过$bin/hadoop start-all.sh启动hadoop的守护进程,运行各个节点。
    11.可以在namenode和datanode上分别使用$jps命令查看各自运行的任务
    12.最后可以使用$bin/hadoop stop-all.sh停止各个节点

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值