设为首页 收藏本站
查看: 1540|回复: 0

[经验分享] hadoop 2.2.0集群安装详细步骤(简单配置,无HA)

[复制链接]

尚未签到

发表于 2015-7-11 11:08:37 | 显示全部楼层 |阅读模式

  • 安装环境
    操作系统:CentOS 6.5 i586(32位)
    java环境:JDK 1.7.0.51
    hadoop版本:社区版本2.2.0,hadoop-2.2.0.tar.gz
  • 安装准备
    设置集群的hosts,切换到root用户下,用vi编辑器修改/etc/hosts配置文件:


    vi /etc/hosts
    10.1.5.125 master
    10.1.5.126 slave1
    10.1.5.127 slave2
    127.0.0.1 localhost
      配置集群各个节点之间的ssh无密码互信,也就是从master开始,ssh到master、slave1和slave2上都不需要密码,反向ssh到master则不必设置。互信设置需要在hadoop2用户下执行命令如下:



    ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
    cat  ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
    scp ~/.ssh/authorized_keys hadoop@slave1:/home/hadoop/.ssh/
    scp ~/.ssh/authorized_keys hadoop@slave2:/home/hadoop/.ssh/
      这样就将生成的授权秘钥拷贝到了slave1和slave2的/home/hadoop2/.ssh目录下,还需要执行非常重要的一步才能实现无密码互信,修改权限:



    chmod 600 ~/.ssh/authorized_keys
      该步骤必须在master、slave1和slave2上分别执行。

  • hadoop安装
    将hadoop-2.2.0.tar.gz拷贝到hadoop2用户的工作目录/home/hadoop2,执行解压命令,并修改文件夹名称为hadoop2:


    tar -zxvf hadoop-2.2.0.tar.gz
    mv hadoop-2.2.0 hadoop2
      先配置hadoop2的环境变量,修改~/.bash_profile(JAVA_HOME、PATH和CLASSPATH已经在root用户下设置在/etc/profile文件中):



    vi .bash_profile
    export HADOOP_HOME=$HOME/hadoop2
    export HADOOP_MAPRED_HOME=${HADOOP_HOME}
    export HADOOP_COMMON_HOME=${HADOOP_HOME}
    export HADOOP_HDFS_HOME=${HADOOP_HOME}
    export YARN_HOME=${HADOOP_HOME}
    export HADOOP_CONF_DIR=${HADOOP_HOME}/etc/hadoop
    export HDFS_CONF_DIR=${HADOOP_HOME}/etc/hadoop
    export YARN_CONF_DIR=${HADOOP_HOME}/etc/hadoop
    export HADOOP_LOG_DIR=${HADOOP_HOME}/logs
    export HADOOP_PID_DIR=/var/hadoop/pids
    执行source命令,立即生效:
    source .bash_profile
      进入hadoop2的配置文件夹~/hadoop2/etc/hadoop/目录下,修改配置各个文件,
    core-site.xml:



    vi core-site.xml


    fs.defaultFS
    hdfs://master:9000


    io.file.buffer.size
    131072


    hadoop.tmp.dir
    file:/home/hadoop2/tmp
    Abase for other temporary directories.


      hdfs-site.xml:



    vi hdfs-site.xml


    dfs.namenode.secondary.http-address
    master:9001


    dfs.namenode.name.dir
    file:/home/hadoop2/dfs/name


    dfs.datanode.data.dir
    file:///home/hadoop2/dfs/data,/hdfs/data


    dfs.replication
    2


    dfs.webhdfs.enabled
    true


      hadoop-env.sh(本机的安装路径为/opt/jdk1.7):



    vi hadoop-env.sh
    export JAVA_HOME=${JAVA_HOME}
      yarn-site.xml:



    vi yarn-site.xml


    yarn.nodemanager.aux-services
    mapreduce_shuffle


    yarn.nodemanager.aux-services.mapreduce.shuffle.class
    org.apache.hadoop.mapred.ShuffleHandler


    yarn.resourcemanager.address
    master:8032


    yarn.resourcemanager.scheduler.address
    master:8030


    yarn.resourcemanager.resource-tracker.address
    master:8031


    yarn.resourcemanager.admin.address
    master:8033


    yarn.resourcemanager.webapp.address
    master:8088


      mapred-site.xml:



    vi mapred-site.xml


    mapreduce.framework.name
    yarn


    mapreduce.jobhistory.address
    master:10020


    mapreduce.jobhistory.webapp.address
    master:19888


      slaves:



    vi slaves
    master
    slave1
    slave2
      此设置中,将master也作为一个datanode节点来使用,只有在集群机器数量不足的情况下才会如此设置。
    这样就设置完成了,然后将/home/hadoop2/hadoop2目录,整个拷贝到slave1和slave2的hadoop2的工作目录下,就算完成了安装:



    scp -r /home/hadoop2/hadoop2  slave1:/home/hadoop2
    scp -r /home/hadoop2/hadoop2  slave2:/home/hadoop2
      

  •   启动集群
    执行hadoop2的sbin目录下的启动脚本:



    sbin/start-dfs.sh
    (此命令启动了namenode、secondaryNamenode以及datanode)
    sbin/start-yarn.sh
    (此命令启动了ResourceManager和NodeManager,相当于hadoop1中的jobtracker和TaskTracker)
      然后用jps命令来查看运行的java进程,如果下列进程都存在,则说明集群正常启动:



    NameNode
    SecondaryNameNode
    ResourceManager
    NodeManager
    DataNode
      至此,hadoop 2.2.0集群安装完毕。

  •   
      注意事项
    需要注意的一点是:hadoop集群的进程pid文件默认保存在linux的/tmp目录下,而/tmp目录为保存临时文件的目录,会定期清除,所以我们最好手动修改hadoop集群的pid文件的存放目录。配置步骤如下:
    在/var目录下创建目录/var/hadoop/pids,作为hadoop的pid文件存放目录,并且需要修改目录的所有者和所属组群,因为hadoop2用户需要向该目录下写入pid文件:



    cd /var
    sudo mkdir hadoop
    cd hadoop
    sudo mkdir pids
    sudo chown -R hadoop2:hadoop2 /var/hadoop/pids
      然后修改hadoop2的配置文件如下:



    vi hadoop-env.sh
    export HADOOP_PID_DIR=/var/hadoop/pids

    vi yarn-env.sh
    export YARN_PID_DIR=/var/hadoop/pids
      然后重新启动集群就可以了。

  •   
      转载请注明出处:http://www.iyunv.com/bxljoy/p/3880250.html



运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-85492-1-1.html 上篇帖子: 在没Hadoop 、GP 前提下怎么进行实时数据统计。 下篇帖子: Hadoop示例程序WordCount详解及实例
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表