Hadoop基础之环境搭建

Posted 珍珠奶茶不加糖

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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目录,重新格式化

以上是关于Hadoop基础之环境搭建的主要内容,如果未能解决你的问题,请参考以下文章

Hadoop基础教程4Hadoop之完全分布式环境搭建

Hadoop学习第一步之基础环境搭建

Hadoop之服务器基础环境搭建

大数据测试之hadoop单机环境搭建(超级详细版)

大数据测试之hadoop单机环境搭建(超级详细版)

湿货|大数据测试之hadoop单机环境搭建(超级详细版)