zoukankan      html  css  js  c++  java
  • Hadoop集群搭建

     全文见 
     http://cffile.sinaapp.com/?p=193
    ////////////////////////////////////////////////////////////////////////////////
    一、部署策略
    1.一个master节点,同时运行NameNode、SecondaryNameNode和JobTracker ,也可以三个节点分别运行
    2.两个slave节点,每个slave同时运行DataNode/TaskTracker  也可以多个
    ////////////////////////////////////////////////////////////////////////////////
    二、准备工作
    Linux内核
    内核需求:
    master节点:没有特别的版本要求,一般使用2.6内核即可
    slave节点:最好支持大块文件系统

    创建用户
    用户名可以用hdcf等(在hdfs基础上稍微改一下,hd说明用途,cf是自己的标识) 最好不要用hdfs、mapred,因为一般已经被用

    过了
    登录master节点,执行:
    % useradd mapcf
    % useradd hdcf
    登录slave节点(TaskTracker/DataNode),执行:
    % useradd mapcf
    % useradd hdcf
    ////////////////////////////////////////////////////////////////////////////////
    三、建立SSH信任关系
    master节点可以无密码登录到从节点,这就要求master节点的public key在slave节点的authroized_keys列表中
    在master节点上以mapcf用户执行:
    % ssh-keygen -t rsa
    % cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
    % chmod g-w ~/.ssh/authorized_keys
    以上命令生成id_rsa.pub公钥文件,并追加到本机mapcf用户的authroized_keys列表中。执行以下命令验证操作是否成功:
    % ssh localhost
    如果不需要输入密码,则说明操作成功。将id_rsa.pub文件分发到所有slave节点上,并追加到slave节点mapred用户的

    ~/.ssh/authorized_keys文件中。//要先查一下 hdcf mapcf用户原来有没有密码之类的,因为原来可能装过,如果设了密码,就

    不方便了
    如果文件不存在,则手动创建该文件,但一定要注意authorized_keys文件权限设置正确。
    操作完成后,从master登录到任意一台从节点测试操作是否成功。
    hdcf用户类似。
    ///////////////////////////////////////////////////////////////////////////////
    四、Hadoop-v2配置与安装
    $./build4deploy.sh
    build 之后在deploy目录下有
    hadoop-namenode  hdfs的master
    hadoop-datanode   hdfs的slave

    hadoop-jobtracker   MapReduce的master
    hadoop-tasktracker   MapReduce的slave

    hadoop-client  客户端
    ////////////////////////////////////////////////////////////////////////////////
    五、基本配置修改
    Hadoop的配置文件保存在hadoop-v2/hadoop/conf目录中,按以下步骤修改配置:
    /*****************************************/
    master节点配置保存在hadoop/conf目录中
    1 修改hadoop-user-info.properties分配用户名和密码,一般可改为
    root=root,root
    slave=slave,slave
    2 修改conf/hadoop-site.xml,修改hadoop.tmp.dir
    <name>hadoop.tmp.dir</name>
      <value>/home/disk3/chadoop/hadoop-data</value>
    3 修改fs.default.name到NameNode所在节点地址并分配端口,可以先用
    #lsof -Pnl +M -i4 查一下那些端口已被占用
    4 修改mapred.job.tracker到JobTracker所在节点地址并分配端口
    JobTracker 和 NameNode 可以采用一个机器
    5 修改hadoop.job.ugi,设为root,root的密码,注意root的密码必须和hadoop-user-info.properties中的一样,一般设为root (

    这个不是机器的密码)
    6 修改slaves文件,该文件为所有的slave节点主机名列表,示例
    szwg-hadoop-t0047.szwg01.baidu.com
    szwg-hadoop-t0049.szwg01.baidu.com
    7 修改master文件,该文件为SecondaryNameNode的主机名,可以为本机
    /*****************************************/
    slave节点配置保存在hadoop/conf目录中
    1 先照master节点配置 2 3 4 设置
    2 修改hadoop.job.ugi,设为slave,slave的密码,slave的密码在master节点的conf/hadoop-user-info.properties中设置
    一般就是slave
    3 修改dfs.data.dir(在hadoop-datanode目录包里)和mapred.local.dir(在hadoop-tasktracker目录包里)

    注意一下: hadoop-default.xml 里面的  50010 50020端口也改一下,(不用在hadoop-default.xml 改,在hadoop-site.xml里

    覆盖就可以) 一般也被占用了
    dfs.http.address</name>   <value>0.0.0.0:8070</value>这个端口改成 800-8000之间的数
    ////////////////////////////////////////////////////////////////////////////////
    六、安装包分发
    典型地,将hadoop-namenode分发到NameNode/SecondaryNameNode的hdcf目录下,并更名为hadoop-v2,同时保证目录属主为hdcf:
    % mv hadoop-namenode hadoop-v2
    % chown -R h.....................................
      
     


  • 相关阅读:
    EasyUI Combobox组合框(模糊搜索、默认值绑定)
    Asp.Net下载文件时中途失败问题
    VS使用小技巧之——设置调试时启动项目和启动页
    VS使用小技巧之——给代码添加region
    VS使用小技巧之——引入整个文件夹
    VS使用小技巧之——任务列表
    FineUI给表格行内链接设置弹出窗体
    cnpm私服搭建和发布包
    阿里云产品术语和docker
    angularjs1.x的一些知识点整理
  • 原文地址:https://www.cnblogs.com/chenzhihong/p/2354465.html
Copyright © 2011-2022 走看看