搭建hadoop环境

1、解压Hadoop的安装包,解压到modules文件夹中。(安装包下载地址:http://archive.apache.org/dist/hadoop/core/hadoop-2.7.2/)
  $ tar -zxf /softwares/installations/hadoop-2.7.2.tar.gz -C /modules/
  查看hadoop是不是64位:
  在hadoop-2.7.2/lib/native 下,执行file libhadoop.so.1.0.0

2、删除/home/admin/modules/hadoop-2.7.2/etc/hadoop目录下,cmd文件
  $ rm -rf *.cmd
  重命名文件
  $ mv mapred-site.xml.template mapred-site.xml

3、配置文件:/home/admin/modules/hadoop-2.7.2/etc/hadoop
  配置结果:
  Linux01 : namenode、datanode、nodeManager
  Linux02 : resourceManager、datanode、nodeManager
  Linux03 : datanode、nodeManager

  evn文件:把JAVA_HOME 环境变量改为,实际路径
    hadoop-env.sh
      修改# export JAVA_HOME=$JAVA_HOME
      为:export JAVA_HOME=/home/admin/modules/jdk1.8.0_191
    mapred-env.sh
      修改# export JAVA_HOME=/home/y/libexec/jdk1.6.0/
      为:export JAVA_HOME=/home/admin/modules/jdk1.8.0_191
    yarn-env.sh
      修改# export JAVA_HOME=/home/y/libexec/jdk1.6.0/
      为:export JAVA_HOME=/home/admin/modules/jdk1.8.0_191
  site文件:(参考官网文档:https://hadoop.apache.org/docs/r2.7.2/)
    core-site.xml
      在https://hadoop.apache.org/docs/r2.7.2/hadoop-project-dist/hadoop-common/core-default.xml中,
      fs.defaultFS 是用来配置namenode的路径的,是namenodeRPC通信地址。value:hadf://linux01:8020
      RPC是跨进程通信协议
      hadoop.tmp.dir是用来配置文件最终存储位置。value:haoop根目录/hoadoop-data
      <configuration>
        <property>
          <name>fs.defaultFS</name>
          <value>hdfs://linux01:8020</value>
        </property>
        <property>
          <name>hadoop.tmp.dir</name>
          <value>/home/admin/modules/hadoop-2.7.2/hadoop-data</value>
        </property>
      </configuration>
    hdfs-site.xml
      <configuration>
        <!-- 指定数据冗余份数,默认3份,会占用磁盘空间 -->
        <property>
          <name>dfs.replication</name>
          <value>1</value>
        </property>
        <!-- 关闭权限检查,非hadoop用户不可以操作hadoop集群 -->
        <property>
          <name>dfs.permissions.enabled</name>
          <value>false</value>
        </property>
        <!-- 配置namenode,减少namenode的压力 -->
        <property>
          <name>dfs.namenode.secondary.http-address</name>
          <value>linux03:50090</value>
        </property>
        <!-- namenode网页地址 -->
        <property>
          <name>dfs.namenode.http-address</name>
          <value>linux01:50070</value>
        </property>
        <!-- 浏览hdfs的方式,一种是webhdfs,一种格式https -->
        <property>
          <name>dfs.webhdfs.enabled</name>
          <value>true</value>
        </property>
    </configuration>
  mapred-site.xml
    <configuration>
      <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
      </property>
      <!-- 配置mapreduce的历史服务端口,产生的日志服务 -->
      <property>
        <name>mapreduce.jobhistory.address</name>
        <value>linux01:10020</value>
      </property>
      <!-- 配置mapreduce的历史服务页面端口,产生的日志服务 -->
      <property>
        <name>mapreduce.jobhistory.webapp.address</name>
        <value>linux01:19888</value>
      </property>
    </configuration>
  yarn-site.xml
    <configuration>
      <!-- 是否允许调度mapreduce的shuffle过程 -->
      <property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
      </property>
      <!-- 配置mapreduce到linux02 -->
      <property>
        <name>yarn.resourcemanager.hostname</name>
        <value>linux02</value>
      </property>
      <!-- -->
      <property>
        <name>yarn.log-aggregation-enable</name>
        <value>true</value>
      </property>
      <!-- -->
      <property>
        <name>yarn.log-aggregation.retain-seconds</name>
        <value>86400</value>
      </property>
      <!-- -->
      <property>
        <name>yarn.log.server.url</name>
        <value>http://linux01:19888/jobhistory/logs/</value>
      </property>
    </configuration>
  slaves文件:配置三台从节点,配置三台虚拟机的名称

    linux01
    linux02
    linux03

    配置datanode和nodeManager从节点

4、分发,将hadoop安装包,分发到linux02、Linux03(在modules目录,执行)

  scp -r hadoop-2.7.2/ linux02:/home/admin/modules
  scp -r hadoop-2.7.2/ linux03:/home/admin/modules
    说明:scp 命令是跨服务器复制文件。

5、格式化namenode (在hadoop的根目录下执行)
  linux01: bin/hdfs namenode -format

6、启动服务,(在hadoop根目录执行)
  HDFS:
    linux01:$ sbin/start-dfs.sh
    相当于:
    $ sbin/hadoop-daemon.sh start namenode 开namenode的命令
    $ sbin/hadoop-daemon.sh start datanode 开namenode的命令
  YARN: (在resourceManager所在的机器上启动)
    linux02:$ sbin/start-yarn.sh
  JobHistory:
    linux01:$ sbin/mr-jobhistory-daemon.sh start historyserver

  如果因为断电关系,造成启动过程中,发现NameNode已启动的提示。

    处理方式:删除/tmp下namenode对应的pid文件,rm -rf /tmp/hadoop-namenode.pid

7、启动检测(如果无法访问,请在windows的hosts文件中,配置虚拟机名称及对应的ip)
  浏览器访问:http://linux01:50070
    检查概览overview下的安全模式safemode一定要关闭,如果是打开的,说明有问题,安全模式数据只能读取,不能写入。
    datenode节点有三台服务器
    utilties中输入hdfs根目录/

  浏览器访问:http://linux02:8088

    8088是默认端口。点击左侧Notes选项,查看三台服务器的noteManager是否已经是Running状态,在判断资源是否不足。

  判断集群是否开启正确,输入命令 jps
    说明:jps是查看所有java进程的命令

8、测试成功后,配置工具脚本

  系统变量与用户变量

    使用xshell开启一个远程回话时,linux01 SSH linux02 默认加载用户变量配置文件,不会加载系统变量。

      /etc/profile (系统变量)

      /home/admin/.bash_profile (用户变量)

      /home/admin/.bashrc (用户变量)

    执行命令,配置系统变量中的环境变量到用户变量配置文件中:(三台linux都执行)

      $ cat /etc/profile >> .bashrc (在/home/admin下执行,把profile中内容,追加到.bashrc)

  编写shell脚本,查看三台服务器的jsp状态:

    #!/bin/bash

    # admin为用户名。
    for i in admin@linux01 admin@linux02 admin@linux03
    do
      echo "=============$i================"
      ssh $i 'jps'
    done

  编写shell脚本,在第一台及其执行脚本,启动hadoop所有节点:

    #!/bin/bash

    #HDFS
    modules/hadoop-2.7.2/sbin/start-dfs.sh

    #YARN
    ssh admin@linux02 modules/hadoop-2.7.2/sbin/start-yarn.sh

    #JobHistory
    modules/hadoop-2.7.2/sbin//mr-jobhistory-daemon.sh start historyserver

大数据 - hadoop三台linux虚拟服务器 - 初始化部署的更多相关文章

  1. 12.Linux软件安装 (一步一步学习大数据系列之 Linux)

    1.如何上传安装包到服务器 有三种方式: 1.1使用图形化工具,如: filezilla 如何使用FileZilla上传和下载文件 1.2使用 sftp 工具: 在 windows下使用CRT 软件 ...

  2. 大数据学习之Linux基础01

    大数据学习之Linux基础 01:Linux简介 linux是一种自由和开放源代码的类UNIX操作系统.该操作系统的内核由林纳斯·托瓦兹 在1991年10月5日首次发布.,在加上用户空间的应用程序之后 ...

  3. LVS (Linux虚拟服务器)模型及算法

    LVS(Linux Virtual Server)Linux虚拟服务器 LVS集群采用IP负载均衡技术和基于内容请求分发技术. 用户请求发给负载均衡调度器,由负载均衡调度器根据设定的调度算法将请求发给 ...

  4. 云计算分布式大数据Hadoop实战高手之路第八讲Hadoop图文训练课程:Hadoop文件系统的操作实战

    本讲通过实验的方式讲解Hadoop文件系统的操作. “云计算分布式大数据Hadoop实战高手之路”之完整发布目录 云计算分布式大数据实战技术Hadoop交流群:312494188,每天都会在群中发布云 ...

  5. 14周事情总结-机器人-大数据hadoop

    14周随着考试的进行,其他该准备的事情也在并行的处理着,考试内容这里不赘述了 首先说下,关于机器人大赛的事情,受益颇多,机器人的制作需要机械和电控两方面 昨天参与舵机的测试,遇到的问题:舵机不动 排查 ...

  6. 成都大数据Hadoop与Spark技术培训班

    成都大数据Hadoop与Spark技术培训班   中国信息化培训中心特推出了大数据技术架构及应用实战课程培训班,通过专业的大数据Hadoop与Spark技术架构体系与业界真实案例来全面提升大数据工程师 ...

  7. 大数据Hadoop学习之搭建hadoop平台(2.2)

    关于大数据,一看就懂,一懂就懵. 一.概述 本文介绍如何搭建hadoop分布式集群环境,前面文章已经介绍了如何搭建hadoop单机环境和伪分布式环境,如需要,请参看:大数据Hadoop学习之搭建had ...

  8. 我搭建大数据Hadoop完全分布式环境遇到的坑---hadoop: command not found

    搭建大数据hadoop环境,遇到很多问题,这里记录一部分,以备以后查看. [遇到问题].在安装配置完hadoop以后,需要格式化namenode,输入指令:hadoop namenode -forma ...

  9. Linux虚拟服务器--LVS

    LVS 百科名片 LVS是一个开源的软件,由毕业于国防科技大学的章文嵩博士于1998年5月创立,可以实现LINUX平台下的简单负载均衡.LVS是Linux Virtual Server的缩写,意思是L ...

随机推荐

  1. 使用js如何设置、获取盒模型的宽和高

    第一种: dom.style.width/height 这种方法只能获取使用内联样式的元素的宽和高. 第二种: dom.currentStyle.width/height 这种方法获取的是浏览器渲染以 ...

  2. ANSI/ISO C 关键字(汇总)

    ANSI/ISO C 关键字 汇总: auto  break  case  char  const  continue  default  do  double  else  enum  extern ...

  3. 手动脱壳—dump与重建输入表(转)

    文章中用到的demo下载地址: http://download.csdn.net/detail/ccnyou/4540254 附件中包含demo以及文章word原稿 用到工具: Ollydbg Lor ...

  4. padding和margin——内边距和外边距

    一.padding——内边距(内填充) 1.1.padding 简写属性在一个声明中设置所有填充属性.该属性可以有1到4个值. <style> div.outer{ width: 400p ...

  5. lockable JS function,解锁操作之前,不能重复操作

    (function () { var ed = []; window.Lockable = function (lockF, options) { if (!arguments.length) { v ...

  6. 服务器与客户端连接 & 聊天机器人

    服务器运行当显示 E:\pycharm\python\venv\Scripts\python.exe E:/pycharm/python/协议/机器人聊天服务器.py 开始监听 accept 说明服务 ...

  7. jqGrid选择列控件向右拖拽超出边界处理

    jqGrid选择列控件向右拖拽超出边界处理 $("#tb_DeviceInfo").jqGrid('navButtonAdd', '#jqGridPager', {         ...

  8. IntelliJ IDEA 注册码——亲测有效

    链接地址:http://idea.lanyus.com 使用时需要将“0.0.0.0 account.jetbrains.com”添加到hosts文件中,mac操作hosts文件可以参考链接: htt ...

  9. smb 访问时 提示权限不够

    1. 确认 防火墙关闭和getenforce 为Permissive 状态. 关闭防火墙 service iptables stop 关闭  setenforce 0 2.windows 登录切换 身 ...

  10. 性能测试遭遇TPS抖动问题

    目前性能测试组正在对独立秒杀进行性能压测,性能抖动特别厉害. 由于独立秒杀的接口大多数是经过volicity渲染过的页面和数据的整合,所以在压测的时候有很多volicity的错误.初步判定,感觉是vo ...