本节目的:搭建Hadoop分布式集群环境

  1. 环境准备
    1. LZ用OS X系统 ,安装两台Linux虚拟机,Linux系统用的是CentOS6.5;Master Ip:10.211.55.3 ,Slave Ip:10.211.55.4
    2. 各虚拟机环境配置好Jdk1.8(1.7+即可)
  2. 资料准备
    1. hadoop-2.7.3.tar.gz
  3. 虚拟机配置步骤
    1. 以下操作都在两台虚拟机 root用户下操作,切换至root用户命令
    2. 配置Master hostname 为Master ;
      vi /etc/sysconfig/network
      

    3. 生效hostname 
      hostname master
      

      检测主机名是否修改成功命令如下,在操作之前需要关闭当前终端,重新打开一个终端:即可看到终端命令前是[user@hostname]

    4. 按照步骤6+7 配置Slave hostname 为 Slave;
    5. 关闭Slave防火墙
      service iptables stop
      

    6. 各虚拟机配置hosts列表,
      vi /etc/hosts
      

      添加内容(LZ master Ip是10.211.55.3,Salve Ip 是10.211.55.4)

    7. 验证
      ping slave
      ping master

      如图表示修改成功

    8. 免密钥登录配置(此部分操作均在用户mfz下操作,切换至用户:su mfz)
      1. Master节点上操作:

        ssh-keygen -t rsa      (多次回车(Enter)即可)
      2. 复制公钥文件

        cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
      3. 执行 ll查看  

      4. 修改authorized_keys文件的权限,命令如下:

        chmod  ~/.ssh/authorized_keys   (执行后文件权限为 -rw------- )

            

      5. 将authorized_keys文件复制到slave节点,命令如下:

        scp ~/.ssh/authorized_keys mfz@slave:~/       (如果提示输入yes/no的时候,输入yes,回车密码是mfz slave登录密码)
      6. slave节点上操作
      7. 在终端生成密钥,命令如下(一路点击回车生成密钥)
        ssh-keygen -t rsa

        将authorized_keys文件移动到.ssh目录

        mv authorized_keys ~/.ssh/
      8. 修改authorized_keys文件的权限,命令如下:
        cd ~/.ssh
        chmod authorized_keys
      9. 验证免密钥登录 ,在master节点上执行命令如下
        ssh slave

        如果还提示输入slave登录密码则配置出错。检查步骤。

  4. Hadoop配置
    1. 每个节点上的Hadoop配置基本相同,在HadoopMaster节点操作,然后完成复制到另一个节点。下面所有的操作都使用mfz用户,切换mfz用户的命令是:su mfz

    2. 资源包上传到 /home/mfz/resources/下
      1.   
    3. 执行命令,最后如果显示目录如下图则表示操作成功
    4. cp /home/mfz/resources/hadoop-2.7..tar.gz /home/mfz/
      cd /home/mfz
      tar -xzvf hadoop-2.7..tar.gz
      ll hadoop-2.7.

    5. 修改配置环境变量hadoop-env.sh 环境变量
      vi /home/mfz/hadoop-2.7./etc/hadoop/hadoop-env.sh

      
      
    6. 配置hdfs-site.xml,添加\替换 如下

      <configuration>
      <property>
      <name>dfs.replication</name>
      <value></value>
      </property>
      </configuration>
    7. 配置core-site.xml ,添加\替换 如下
      <configuration>
      <property>
      <name>fs.defaultFS</name>
      <value>hdfs://master:9000</value>
      </property>
      <property>
      <name>hadoop.tmp.dir</name>
      <value>/home/mfz/hadoopdata</value>
        <description>A base for other temporary directories.</description>
      </property>
      </configuration>
    8. 修改yarn-env.sh  环境变量
      vi yarn-env.sh

    9. 配置yarn-site.xml
      <configuration>
      <property>
      <name>yarn.nodemanager.aux-services</name>
      <value>mapreduce_shuffle</value>
      </property>
      <property>
      <name>yarn.resourcemanager.address</name>
      <value>master:</value>
      </property>
      <property>
      <name>yarn.resourcemanager.scheduler.address</name>
      <value>master:</value>
      </property>
      <property>
      <name>yarn.resourcemanager.resource-tracker.address</name>
      <value>master:</value>
      </property>
      <property>
      <name>yarn.resourcemanager.admin.address</name>
      <value>master:</value>
      </property>
      <property>
      <name>yarn.resourcemanager.webapp.address</name>
      <value>master:</value>
      </property>
      </configuration>
    10. 配置计算框架mapred-site.xml

      cp mapred-site.xml.template mapred-site.xml
      vi mapred-site.xm --添加/替换 如下 <configuration>
      <property>
      <name>mapreduce.framework.name</name>
      <value>yarn</value>
      </property>
      </configuration>
    11. 修改slaves文件,插入slave 节点hostname (可配置多个slave)
      vi /home/mfz/hadoop-2.7./etc/hadoop/slaves
      cat /home/mfz/hadoop-2.7./etc/hadoop/slaves

    12. 复制到从节点(使用下面的命令将已经配置完成的Hadoop复制到从节点HadoopSlave上)  (可复制到多个slave)

      cd
      scp -r hadoop-2.7. slave:~/ --注意:因为之前已经配置了免密钥登录,这里可以直接远程复制。

      
      
  5. 运行验证-启动Hadoop集群 
    1. 该节的配置需要同时在两个节点(HadoopMaster和HadoopSlave)上进行操作
    2. 操作命令如下:(LZ 环境变量统一放在了/etc/profile 下,也可放于单个用户~/.base_profile 下)
      cd
      vi /etc/profile 添加如下内容 #HADOOP
      export HADOOP_HOME=/home/mfz/hadoop-2.7.
      export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH 生效配置
      source /etc/profile
    3. 创建数据目录(该节的配置需要同时在两个节点(HadoopMaster和HadoopSlave)上进行操作。)

      1. cd 
        mkdir hadoopdata
        说明:(在用户mfz主目录下操作,此hadoopData目录是hadoop-2.7.3/etc/hadoop/core-site.xml 中hadoop.tmp.dir 的 value)
      2. 格式化文件系统   ---格式化命令如下,该操作需要在HadoopMaster节点上执行:
        hdfs namenode -format

      3. 如果出现ERROR/Exception 则表示出现问题了。自行百度解决。。。
      4. Master节点上启动hadoop 集群
        cd /home/mfz/hadoop-2.7./
        
        sbin/start-all.sh

        在master的终端执行jps命令,在打印结果中会看到4个进程,分别是ResourceManager、Jps、NameNode和SecondaryNameNode,如下图所示。如果出现了这4个进程表示主节点进程启动成功。

        在slave的终端执行jps命令,在打印结果中会看到3个进程,分别是NodeManager、DataNode和Jps,如下图所示。如果出现了这3个进程表示从节点进程启动成功。

    4.  验证启动结果

      1. 验证1:Web UI查看集群是否成功启动,在Master上启动Firefox浏览器,在浏览器地址栏中输入输入http://master:50070/,检查namenode 和datanode 是否正常。UI页面如下图所示。

      2. 验证2: 在Master上启动Firefox浏览器,在浏览器地址栏中输入输入http://master:18088/,检查Yarn是否正常,页面如下图所示。

      3. 验证3:mfz用户下输入如下命令,得到结果最后输出'Job Finished in 72.742 seconds   Estimated value of Pi is 3.20000000000000000000'则表示操作成功。
      4. cd
        cd hadoop-2.7./share/hadoop/mapreduce/
        hadoop jar hadoop-mapreduce-examples-2.7..jar pi

      5. 以上3个步骤验证都没有问题的话表示你成功完成了Hadoop分布式集群搭建。:)

大数据系列之Hadoop分布式集群部署的更多相关文章

  1. Hadoop分布式集群部署(单namenode节点)

    Hadoop分布式集群部署 系统系统环境: OS: CentOS 6.8 内存:2G CPU:1核 Software:jdk-8u151-linux-x64.rpm hadoop-2.7.4.tar. ...

  2. Hadoop教程(五)Hadoop分布式集群部署安装

    Hadoop教程(五)Hadoop分布式集群部署安装 1 Hadoop分布式集群部署安装 在hadoop2.0中通常由两个NameNode组成,一个处于active状态,还有一个处于standby状态 ...

  3. hadoop分布式集群部署①

     Linux系统的安装和配置.(在VM虚拟机上) 一:安装虚拟机VMware Workstation 14 Pro 以上,虚拟机软件安装完成. 二:创建虚拟机. 三:安装CentOS系统 (1)上面步 ...

  4. 大数据平台搭建-hadoop/hbase集群的搭建

    版本要求 java 版本:1.8.*(1.8.0_60) 下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downl ...

  5. Hadoop实战:Hadoop分布式集群部署(一)

    一.系统参数优化配置 1.1 系统内核参数优化配置 修改文件/etc/sysctl.conf,使用sysctl -p命令即时生效.   1 2 3 4 5 6 7 8 9 10 11 12 13 14 ...

  6. 大数据【三】YARN集群部署

    一 概述 YARN是一个资源管理.任务调度的框架,采用master/slave架构,主要包含三大模块:ResourceManager(RM).NodeManager(NM).ApplicationMa ...

  7. Hadoop分布式集群部署

    环境准备 IP HOSTNAME SYSTEM 192.168.131.129 hadoop-master CentOS 7.6 192.168.131.135 hadoop-slave1 CentO ...

  8. CentOS6安装各种大数据软件 第四章:Hadoop分布式集群配置

    相关文章链接 CentOS6安装各种大数据软件 第一章:各个软件版本介绍 CentOS6安装各种大数据软件 第二章:Linux各个软件启动命令 CentOS6安装各种大数据软件 第三章:Linux基础 ...

  9. 基于Hadoop分布式集群YARN模式下的TensorFlowOnSpark平台搭建

    1. 介绍 在过去几年中,神经网络已经有了很壮观的进展,现在他们几乎已经是图像识别和自动翻译领域中最强者[1].为了从海量数据中获得洞察力,需要部署分布式深度学习.现有的DL框架通常需要为深度学习设置 ...

随机推荐

  1. js验证IP及子网掩码的合法性

    function checkIP(ip) {     obj=ip;    var exp=/^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0 ...

  2. jQuery 动画的执行

    jQuery 动画的执行 <%@ page language="java" import="java.util.*" pageEncoding=" ...

  3. MyEclipse 中 添加 js自动完成模版

    MyEclipse 中 添加 js自动完成模版: window>preference>MyEclipse>Files and Editors>JavaScript>Edi ...

  4. [心得]传统IT转互联网面试经验分享

    http://www.newsmth.net/bbstcon.php?board=Java&gid=374779 传统IT外企干了8年,两年前转互联网的,面的和被面的都不少.这几天项目空档期, ...

  5. 理解FMS中的实例

    FMS服务器端安装后,唯一需要注意的是设置端口,默认的访问端口是1935和80,如果服务器上安装了IIS提供 WEB服务,那么需要将80修改为其他端口如8080,否则,IIS将会无法工作.如果愿意,也 ...

  6. 在Node.js中使用RabbitMQ系列二 任务队列

    在上一篇文章在Node.js中使用RabbitMQ系列一 Hello world我有使用一个任务队列,不过当时的场景是将消息发送给一个消费者,本篇文章我将讨论有多个消费者的场景. 其实,任务队列最核心 ...

  7. JTable 的使用

    JTable是Swing编程中的一种控件. 一.创建表格控件的各种方式:1) 调用无参构造函数. JTable table = new JTable(); 2) 以表头和表数据创建表格. Object ...

  8. requests从api中获取数据并存放到mysql中

    python的requests库是一个非常强大的库,requests的安装方法十分简单,用: pip install requests 即可安装requests,安装成功后: import reque ...

  9. jquery 精度计算代码,指定精确小数位

    jquery代码: /** * 将标签的值格式化 * id 标签id * min 最小值 * max 最大值 */ function toFloat(id,min,max){ var htmlVal ...

  10. Kafka 0.10 KafkaConsumer流程简述

    ConsumerConfig.scala 储存Consumer的配置 按照我的理解,0.10的Kafka没有专门的SimpleConsumer,仍然是沿用0.8版本的. 1.从poll开始 消费的规则 ...