zoukankan      html  css  js  c++  java
  • Hadoop基础之环境搭建

    Hadoop基础之环境搭建

    环境搭建

    • 本地环境
      • 可以用于开发的单节点模式,没有分布式的概念
    • 伪分布式环境
      • 一个节点表示一整个集群,但是分布式的概念,一个节点充当分布式里的所有角色
    • 完全分布式
      • 一个集群中有N个节点,他们分别充当分布式中不同的角色,完成不同的任务

    伪分布式环境搭建

    #set hadoop enviornment
    export HADOOP_HOME=/home/bduser/model/hadoop-2.7.6
    PATH=$PATH:${HADOOP_HOME}/bin:${HADOOP_HOME}/sbin
      • 修改配制文件
        • hdfs-site.xml
    <configuration>
        <property>
                   <name>dfs.namenode.secondary.http-address</name>
                   <value>hadoop100:9001</value>
        </property>
         <property>
                <name>dfs.replication</name>
                <value>1</value>
          </property>
    
          <property>
                <name>dfs.namenode.name.dir</name>
                <value>/home/bduser/model/hadoop-2.7.6/dfs/name</value>
          </property>
    
          <property>
                <name>dfs.datanode.data.dir</name>
                <value>/home/bduser/model/hadoop-2.7.6/dfs/data</value>
          </property>
    
          <property>
                <name>dfs.namenode.checkpoint.dir</name>
                <value>/home/bduser/model/hadoop-2.7.6/dfs/secondaryName</value>
          </property>
    
          <property>
                <name>dfs.hosts</name>
                <value>/home/user/modules/hadoop/etc/hadoop/dfs</value>
          </property>
    
          <property>
                <name>dfs.hosts.exclude</name>
                <value>/home/user/modules/hadoop/etc/hadoop/dfs.hosts.exclude</value>
          </property>
    </configuration>
        • core-size.xml
    <configuration>
          <property>
                <name>fs.default.name</name>
                   <value>hdfs://hadoop100:9000</value>
          </property>
    
          <property>
                <name>net.topology.node.switch.mapping.impl</name>
                <value>hdfs.RackPerception</value>
          </property>
    </configuration>
        • yarn-size.xml
    <configuration>
          <property>
                <name>yarn.nodemanager.aux-services</name>
                <value>mapreduce_shuffle</value>
          </property>
    
          <property>
                <name>yarn.resourcemanager.hostname</name>
                <value>hadoop100</value>
          </property>
    </configuration>
      • slaves
        • 填写DataNode从节点
      • hadoop-env.sh
        • 修改JAVA_HOME路径
        • 填写DataNode节点
    • 格式化Hadoop
      • hadoop   namenode   format
    • 启动
      • hadoop/sbin/start-all.sh
      • 需要什么启动什么
    • 注意事项
      • 配置前
        • jdk
        • ssh免密登录
        • 防火墙关闭
      • 如果访问不到webUI
        • 检查防火墙
        • 检查映射关系
        • 浏览器不能使用IE或兼容模式
      • 需要格式化时
        • 关闭服务
        • 删除创建出来的文件
        • 重新格式化

    完全分布式

    • 角色分配
      • 第一台机器,NameNode,R esourcesManager
      • 中间机器,DataNode,NodeManager
      • 最后一台机器,DataNode,SecondaryNameNode
    • 配制过程:虚拟机为例
      • 克隆虚拟机
      • 修改物理地址
        • sudo   vim   /etc/udev/rules.d/70-persistent-net.relus
        • 将原网卡注释掉
        • 将新网卡改名为原网卡
        • 记录网卡的物理地址
      • 修改IP地址
        • sudo   vim   /etc/sysconfig/network-scripts/ifcfg-etho
        • 修改网卡配制文件中的物理地址,将记录的物理地址写入
        • 修改ip地址
        • 重启网络:service   network   restart
      • 修改主机名
        • sudo   vim   /etc/sysconfig/network
        • HOSTNAME=新主机名
        • 重新启动:reboot
      • 免密登录
        • 由于节点时完整复制的,包括ssh
        • 不需要重新配制
        • 如果是实体机,需要将不同的公钥附加到authorized_keys
      • 修改Hadoop配制文件
        • 修改配制文件
        • 同步到所有节点
          • rsync   -r   原路径/原文件   目标用户名@目标地址:目标路径
            • 核心命令:rsync,用法与scp一致
            • 区别:
              • scp全部复制
              • rsync只同步不一样的
          • 可以使用脚本来快速操作
        • 远程操作所有节点
          • xcall
            • 核心命令:ssh   用户   主机名/ip   命令
      • 格式化Hadoop集群
        • 只在主节点格式化
        • hadoop/hdfs   namenode   -format
      • 启动服务
    • 常见问题
      • 时间不同步导致服务启动失效
        • 使用网络,连接国家受时中心进行自动同步
        • 使用date命令手动设置
      • 端口占用问题
        • 在启动hadoop时,如果SecondaryNameNode没有起来,很有可能是所需要的端口被占用,检查是什么服务已经占据了端口,进行修改
      • 多次格式化问题
        • 如果多次格式化会导致dfs的id信息与集群不同步
          • 删除dfs目录,重新格式化
    如有问题,请发送邮件至buxiaqingcheng@163.com或者buxiaqingcheng@dingtalk.com
  • 相关阅读:
    STM32:SPI&w25qxx的配置与代码
    STM32:USART的原理与配置
    C的抽象数据类型:二叉树
    DSP:TMS320C66x 系列SPI NOR自启动
    C的抽象数据类型:链表、队列
    STM32:GPIO口的使用
    STM32:时钟树
    STM32:预备知识
    makefile:简单小结
    ubuntu:tar、apt、vim、gcc的配置和简单使用
  • 原文地址:https://www.cnblogs.com/zhenzhunaichabujiatang/p/13873566.html
Copyright © 2011-2022 走看看