zoukankan      html  css  js  c++  java
  • 集群搭建(三)Hadoop搭建HDFS(完全分布式)

    Hadoop集群搭建(完全分布式)

    1. 前期准备(4台linux服务器),具体搭建过程可以参考https://www.cnblogs.com/monco/p/9046614.html(克隆虚拟机比较方便)
    2. 新建hadoop用户(这一步可以在克隆机器之前就做好)
    3. 设置4台机器ssh免密登录https://blog.csdn.net/lz_1992/article/details/50523507(百度很多这种文章,很简单的)
    4. jdk安装部署,hadoop安装部署(不想说了,4台虚拟机都设置一样,可以在克隆机器之前做好,我的配置如下)
      HADOOP_HOME=/home/hadoop/apps/hadoop-2.6.4
      JAVA_HOME=/opt/software/java/jdk1.7.0_76
      JRE_HOME=/opt/software/java/jdk1.7.0_76/jre
      CLASS_PATH=.:${JAVA_HOME}/lib:${JAVA_HOME}/lib
      #PATH=${JAVA_HOME}/bin:$PATH
      PATH=$PATH:${JAVA_HOME}/bin:${JRE_HOME}/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
      export HADOOP_HOME
      export JAVA_HOME
      export PATH
    5. hadoop集群需要理解NameNode,DataNode,SecondNameNode的关系,具体参考下篇博客
    6. 修改配置文件 hadoop-env.sh 用来设置java的环境变量 ,此文件在(/home/hadoop/apps/hadoop-2.6.4/etc/hadoop),hadoop安装目录下的etc下的hadoop文件夹中
      # The java implementation to use.
      export JAVA_HOME=/home/hadoop/apps/jdk1.7.0_51
    7. 修改配置文件(core-site.xml)设置NameNode属性(ruixuan.com 是我本机的主机名,可以在/etc/hosts里设置)
      <configuration>
      <property>
      <name>fs.defaultFS</name>
      <value>hdfs://ruixuan.com:9000</value>
      </property>
      <property>
      <name>hadoop.tmp.dir</name>
      <value>/home/HADOOP/apps/hadoop-2.6.1/tmp</value>
      </property>
      </configuration>

      这里设置了NameNode的地址,是在ruixuan.com这台主机上,设置hadoop的临时目录,自己指定。

    8. 修改配置文件(hdfs-site.xml)设置NameNode和DataNode的文件保存路径
      <configuration>
      <property>
      <name>dfs.namenode.name.dir</name>
      <value>/home/hadoop/data/name</value>
      </property>
      <property>
      <name>dfs.datanode.data.dir</name>
      <value>/home/hadoop/data/data</value>
      </property>
      
      <property>
      <name>dfs.replication</name>
      <value>3</value>
      </property>
      
      </configuration>

      replication的是副本数,意思是一个文件需要在HDFS分布式文件系统中保存几分,建议 DataNode的数量应大于等于replication。

    9. 修改配置文件(mapred-site.xml)
      <configuration>
      <property>
      <name>mapreduce.framework.name</name>
      <value>yarn</value><!--默认为local -->
      </property>
      </configuration>
    10. 修改配置文件(yarn-site.xml)
      <configuration>
      <!-- Site specific YARN configuration properties -->
      <property>
      <name>yarn.resourcemanager.hostname</name>
      <value>ruixuan.com</value>
      </property>
      
      <property>
      <name>yarn.nodemanager.aux-services</name>
      <value>mapreduce_shuffle</value>
      </property>
    11. 添加文件(salves),如果不添加或者不修改此文件,hadoop也可以正常启动,只是不可以使用hadoop的一键启动命令,但是可以一一启动,并不影响hadoop的实际操作
      mini01
      mini02
      mini03

      配置的是主机名

    12. 初始化hadoop路径(bin/hadoop  namenode  -format),在bin目录下执行format操作(关于这个操作,之后会详细讲解,很重要,对于数据恢复,误删等)
    13. 执行启动操作 sbin/start-dfs.sh 启动完成后 jps 会在4台机器上分别查到1个NameNode和3个DataNode,这样Hadoop的HDFS模块就配置完成了。
  • 相关阅读:
    Android 废弃方法属性解决
    Android RecycleView分组
    Android 第三方库FlycoTabLayout
    Android 自定义dialog出现的位置
    Android 底部弹窗实现
    Android 自定义设置布局
    Android 微信、qq分享文本 (Intent)
    SpringBoot关于跨域的三种解决方案
    记录一次通用Mapper+自定义mapper出现的问题分析以及排查
    IDEA配置Maven+新建Maven项目
  • 原文地址:https://www.cnblogs.com/monco/p/9202964.html
Copyright © 2011-2022 走看看