hadoop集群安装

Hadoop笔记

基本思想

分布式存储

如果有1T数据需要存储?

1.先将整个数据按照一定规则进行切分

2.将切分的数据存放在多台电脑上

3.记录存储位置以及相应的数据的信息

4.考虑后续使用时,快速加载并能够正常使用

 

5.Hadoop版本为2.7.6

HADOOP组件

  • HDFS:主要用于做数据存储

  • mapreduce:主要用于分布式计算

  • yarn:主要用于做资源调度(1.X中和MapReduce融合在一起,耦合性太强)

    • 资源调度:在做 数据计算时,需要CPU、内存、带宽等资源,针对每个计算任务都需要将任务进行划分开

Hadoop安装:

1.前提条件

  • 三台虚拟机能够使用Java环境

    • 第一台虚拟机

配置网络

修改主机名

关闭防火墙

配置映射

安装jdk(删除自带jdk)

    • 克隆两台

修改主机名

修改网络

  • 修改启动级别之后重启

    systemctl set-default multi-user.target
  • 在master节点上验证 ssh node1 ssh node2 ssh master

2.免密登录

  • 在Master节点上执行

    • ssh-keygen -t rsa

      三次回车

 

  • 发送密钥至所有节点

    • ssh-copy-id master ssh-copy-id node1 ssh-copy-id node2

  • 发送过后需要验证

    ssh node1:不需要输入密码即为成功

  • 在node1上配置

    • ssh-keygen -t rsa

    • 发送密钥至所有节点

      • ssh-copy-id node1 ssh-copy-id master ssh-copy-id node2

  • 在node2上配置

    • ssh-keygen -t rsa

    • 发送密钥至所有节点

      • ssh-copy-id node2 ssh-copy-id master ssh-copy-id node1

3.上传hodoop架包

  • 通过Xftp上传 hadoop-2.7.6.tar.gz 文件至 /usr/local/soft/

  • 注意:必须在解压在/usr/local/soft/

 

  • 解压架包

    tar -zxvf hadoop-2.7.6.tar.gz 
  • 文件目录

    • bin Hadoop操作命令目录

    • etc/hadoop :用于存放Hadoop配置文件

    • sbin 用于存放Hadoop启动脚本

    • share/hadoop 用于存放Hadoop的API及其生成的相关依赖

4.配置环境变量

#在Hadoop-2.7.6文件下配置
vim /etc/profile
# HADOOP_HOME
export HADOOP_HOME=/usr/local/soft/hadoop-2.7.6
export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH
# source 生效
source /etc/profile

  • 1.修改slaves

    • 位置/usr/local/soft/hadoop-2.7.6/etc/hadoop

       

    • vim slaves

    删除原有内容

    新加从节点主机名

    node1

    node2

 

  • 2.修改hadoop-env.sh

    • 位置/usr/local/soft/hadoop-2.7.6/etc/hadoop/

    • vim hadoop-env.sh

      删除export JAVA_HOME=${JAVA_HOME}
      新加export JAVA_HOME=/usr/local/soft/jdk1.8.0_171 (自己电脑中的Java路径)
      ​
      ======================================
      如何查询Java路径:
      whereis java
      ls -l 路径
      找到绿色的为止,对应的就是自己的Java路径

  • 3.修改core-site.xml

    • 位置/usr/local/soft/hadoop-2.7.6/etc/hadoop/

    • vim core-site.xml

    在core-site.xml标签configuration中复制一下内容

     

    <property>
    <name>fs.defaultFS</name>
    <value>hdfs://master:9000</value>
    </property>
    <property>
    <name>hadoop.tmp.dir</name>
    <value>/usr/local/soft/hadoop-2.7.6/tmp</value>
    </property>
    <property>
    <name>fs.trash.interval</name>
    <value>1440</value>
    </property>

    4.修改hdfs-site.xml

    • 位置/usr/local/soft/hadoop-2.7.6/etc/hadoop/

    • vim hdfs-site.xml

      在vim hdfs-site.xml标签configuration中复制一下内容

      <property>
          <name>dfs.replication</name>
          <value>1</value>
      </property>
      <property>
          <name>dfs.permissions</name>
          <value>false</value>
      </property>
  • 5.修改yarn-site.xml

    • 位置/usr/local/soft/hadoop-2.7.6/etc/hadoop/

    • vim yarn-site.xml

      在vim yarn-site.xml标签configuration中复制一下内容

      <property>
      <name>yarn.resourcemanager.hostname</name>
      <value>master</value>
      </property>
      <property>
      <name>yarn.nodemanager.aux-services</name>
      <value>mapreduce_shuffle</value>
      </property>
      <property>
      <name>yarn.log-aggregation-enable</name>
      <value>true</value>
      </property>
      <property>
      <name>yarn.log-aggregation.retain-seconds</name>
      <value>604800</value>
      </property>
      <property>  
      <name>yarn.nodemanager.resource.memory-mb</name>  
      <value>20480</value>  
      </property>  
      <property>  
      <name>yarn.scheduler.minimum-allocation-mb</name>  
      <value>2048</value>  
      </property>  
      <property>  
      <name>yarn.nodemanager.vmem-pmem-ratio</name>  
      <value>2.1</value>  
      </property>
  • 6.修改mapred-site.xml

    • 位置/usr/local/soft/hadoop-2.7.6/etc/hadoop/

    • vim mapred-site.xml

      第一步:先将mapred-site.xml.template  的.template去掉
      mv mapred-site.xml.template mapred-site.xml.template  
      第二步:在vim mapred-site.xml标签configuration中复制一下内容
      <property>
          <name>mapreduce.framework.name</name>
          <value>yarn</value>
      </property>
      <property>  
          <name>mapreduce.jobhistory.address</name>  
          <value>master:10020</value>  
      </property>  
      <property>  
          <name>mapreduce.jobhistory.webapp.address</name>  
          <value>master:19888</value>  
      </property>
      ​
  • 7.将配置好的环境变量复制到node1 和 node 2

    位置/usr/local/soft/hadoop-2.7.6/etc/hadoop/
    hadoop分发到node1和node2
        scp -r /usr/local/soft/hadoop-2.7.6 node1:/usr/local/soft
        scp -r /usr/local/soft/hadoop-2.7.6 node2:/usr/local/soft
  • 8.生效环境变量

    • source /etc/profile

  • 9.启动hadoop

    • 在master格式化

      hdfs namenode -format
      • 格式化完成以后会生成 tmp 目录 :主要用于存放当前Hadoop中的一些临时文件,包括其命名空间的信息

    • 启动hadoop

      start-all.sh
  • 10.jps 查看进程

    # 所有Java进程都可以通过该命令查看
    jps
    ​
    • 所有进程划分

      • Hdfs

        dataNode

        NameNode

        SecondaryNameNode

      • Yarn

        ResourceManager

        nodemanager

  • 11.如果安装失败

    stop-all.sh

  • 再次重启的时候

    • 1需要手动将每个节点的tmp目录删除: 所有节点都要删除 rm -rf /usr/local/soft/hadoop-2.7.6/tmp 然后执行将namenode格式化

    • 2在主节点执行命令: hdfs namenode -format

    • 3启动hadoop start-all.sh

  • 112.判断Hadoop进程没有问题(jps进程)

    master节点
    4755 SecondaryNameNode
    4906 ResourceManager
    4557 NameNode
    5582 Jps
    node节点
    2676 Jps
    2538 NodeManager
    2431 DataNode

  • 13.打开Hadoop网页:出现下面截图表示成功

    master:50070

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值