一. 安装背景:VirtualBox下安装三台Centos6.8虚拟机(一主:master, 两从:slave1,slave2)

  Centos版本:CentOS-6.8-x86_64

  网络配置:三台虚拟机配置静态IP,并配置主机名master,slave1,slave2

  系统配置:安装JDK,增加hadoop用户(三台都需要)

  Hadoop安装包:hadoop-2.6.0-cdh5.6.0.tar.gz

  无密码ssh:配置ssh无密码连接(master->slave1, master->slave2)

二. 安装过程

  1. 在master节点上,将hadoop安装包解压到安装目录/opt/hadoop-2.6.0-cdh5.6.0

  2. 配置配置文件:hadoop-env.sh, core-site.xml, hdfs-site.xml, mapred-site.xml, yarn-site.xml, salves

    slaves文件内容如下:

    salve1

    salve2

  3. 从master节点将已配置好的hadoop发送到从节点

    scp -i /opt/hadoop-2.6.0-cdh5.6.0 hadoop@slave1:/opt

    scp -i /opt/hadoop-2.6.0-cdh5.6.0 hadoop@slave2:/opt

  4. 配置环境变量(三台),修改/etc/profile文件,添加内容如下:

    export HADOOP_HOME=/opt/hadoop-2.6.0-cdh5.6.0

    export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

三. 疑难问题

1.启动时,报错"Unable to load native-hadoop library for your platform... "

  ① 问题分析:修改日志级别export  HADOOP_ROOT_LOGGER=DEBUG,console ,查看启动日志信息"GLIBC_2.14 not found",

      使用 "strings /lib64/libc.so.6 |grep GLIBC" 查看系统glibc版本, Centos6及Centos7只支持到2.12,而hadoop需要glibc-2.14.so

  解决方法:(使用root用户)升级glibc版本,下载glibc-2.14.tar.gz到/var/soft/目录

      cd /var/soft

      tar -zxvf glibc-2.14.tar.gz

      cd glibc-2.14

      mkdir build

      cd build

      ../configure --prefix=/opt/glibc-2.14

      make -j4

      make install

    注:make install 安装报错缺少gperf工具,使用"yum install gperf"命令安装

      替换libc.so.6

      cp /opt/glibc-2.14/lib/libc-2.14.so /lib64/libc-2.14.so    

      mv /lib64/libc.so.6 /lib64/libc.so.6.bak

      #此时ll,cp等需要用到libc.so.6的命令都无法使用,更新libc.so.6链接库即可

      LD_PRELOAD=/lib64/libc-2.14.so ln -s /lib64/libc-2.14.so /lib64/libc.so.6 #务必使用root用户操作

    此时再查看glibc的版本,已经支持到2.14了。

  ② 此时仍然报错,因为我们的hadoop-2.6.0-cdh5.6.0.tar.gz安装包是64位版本,内部并没有提供对应的hadoop 64位的native库

    解决方法:下载hadoop官网已编译好的的native库 hadoop-native-64-2.6.0.tar,解压后,将其拷贝到我们的hadoop安装目录下

        $HADOOP_HOME/lib和$HADOOP_HOME/lib/native目录下都拷贝一份,未验证hadoop会加载哪一份。

2.网络问题

  确保master主节点可以telnet通,且hadoop响应的端口可以telnet

  a.关闭防火墙

    service iptables stop #关闭防火墙

    service iptables status #查看防火墙状态

    chkconfig iptables off  #关闭防火墙开机启动

  b.安装telnet和telnet-server

    rpm -qa | grep telnet  #查看telnet是否安装

    #安装

    yum install telnet    

    yum install telnet-server

  安装完telnet-server之后修改配置/etc/xinetd.d/telnet, 将disable=yes改为disable=no,重启管理telnet的xinetd进程"service xinetd restart"

3. 执行命令hadoop dfs -mkdir /user/hadoop/input 创建目录报错"No such file or directory"

  需要-p选项创建目录 hadoop dfs -mkdir -p /user/hadoop/input

4. 执行wordcount测试用例一直卡住,查看日志显示"org.apache.hadoop.ipc.Client: Retrying connect to server: 0.0.0.0/0.0.0.0:8030"

  在伪分布式模式下无此问题,在完全分布式下会出现此错误。

  如果没有配置调度地址,NodeManager会默认为0.0.0.0:8030。如果MR ApplicationMaster在 master机器上启动,0.0.0.0:8030 对应的调度器地址 恰好在本机;否则,在slave机器上0.0.0.0:8030 是找不到调度器的,因为调度器必须在master机器上。而完全分布式中MR ApplicationMaster是启动在slave机器上的,所以需要在yarn-site.xml中配置调度器地址,如下:

  <property>

    <name>yarn.resourcemanager.hostname</name>

    <value>master</value> <!-- 此处master为master节点的主机名-->

  </property>

  注:不同版本的实现不一样,需要看源码才能知道读取的是哪一个配置。

Centos6下安装Hadoop2.6 问题总结的更多相关文章

  1. centos6下安装dedecms

    几经波折,终于安装成功!!! 一.centos6下安装WDCP 1.连接linux 在百度直接搜索下载xshell,通过ssh连接 2.安装wdcp 下载安装wget http://dl.wdlinu ...

  2. Ubuntu14.04下安装Hadoop2.5.1 (单机模式)

    本文地址:http://www.cnblogs.com/archimedes/p/hadoop-standalone-mode.html,转载请注明源地址. 欢迎关注我的个人博客:www.wuyudo ...

  3. 二、Ubuntu14.04下安装Hadoop2.4.0 (伪分布模式)

    在Ubuntu14.04下安装Hadoop2.4.0 (单机模式)基础上配置 一.配置core-site.xml /usr/local/hadoop/etc/hadoop/core-site.xml ...

  4. Mysql系列三:Centos6下安装Mysql和Mysql主从复制的搭建

    一.Centos6下安装Mysql 检测下系统有没有自带的mysql:yum list installed | grep mysql, 如果已经有的话执行命令yum -y remove mysql-l ...

  5. 【转】CentOS6下安装mysql后,重置root密码方法

    本文转自:CentOS6下安装mysql后,重置root密码方法 centos下安装mysql,居然不知道root用户密码,本想重装,不过还是先度娘了一些,发现这篇文章,刚好解决我的燃眉之急,太赞了. ...

  6. centos6下安装部署hadoop2.2

    环境准备1.操作系统:centos6.0 64位2.hadoop版本:hahadoop-2.2.0 安装和配置步骤具体如下:1.主机和ip分配如下     ip地址                  ...

  7. 一、Ubuntu14.04下安装Hadoop2.4.0 (单机模式)

    一.在Ubuntu下创建hadoop组和hadoop用户 增加hadoop用户组,同时在该组里增加hadoop用户,后续在涉及到hadoop操作时,我们使用该用户. 1.创建hadoop用户组 2.创 ...

  8. Ubuntu 14.04下安装Hadoop2.4.0 (单机模式)

    转自 http://www.linuxidc.com/Linux/2015-01/112370.htm 一.在Ubuntu下创建Hadoop组和hadoop用户 增加hadoop用户组,同时在该组里增 ...

  9. OS X Yosemite下安装Hadoop2.5.1伪分布式环境

    最近开始学习Hadoop,一直使用的是公司配好的环境.用了一段时间后发现对Hadoop还是一知半解,故决定动手在本机上安装一个供学习研究使用.正好自己用的是mac,所以没啥说的,直接安装. 总体流程 ...

随机推荐

  1. canvas 图片拖拽旋转之一——坐标转换translate

    引言 对canvas中绘制的图片进行旋转操作,需要使用ctx.translate变换坐标系,将图片旋转的基点设为坐标系的原点,然后ctx.rotate旋转. 这个时候,因为canvas坐标系发生了旋转 ...

  2. 【JUC】JDK1.8源码分析之CountDownLatch(五)

    一.前言 分析完了CyclicBarrier后,下面分析CountDownLatch,CountDownLatch用于同步一个或多个任务,强制他们等待由其他任务执行的一组操作完成.CountDownL ...

  3. 6.Struts2简单类型数据的接受

    简单类型数据的接收 在Action类中定义与请求参数同名的属性, 即,要定义该属性的set方法,便能够使struts2自动接收请求参数并赋予同名属性. 简单类型数据的接受举例: 新建工程项目,名称为: ...

  4. Nancy之给我们的网站添加自定义图标

    当我们在做一个网站时,可能经常会有这样一个需求,要给我们做的网站添加一个自定义的图标. 在Nancy中,默认是的下面这样 一个妹子的头像,其实也是挺好看的!! 那么当我们想要替换这个默认的,应该要怎么 ...

  5. 艾伦 Visual Studio 批量自动化代码操作工具-VS插件发布

    艾伦 Visual Studio 批量自动化代码操作工具 以下简称--艾伦工具箱. 艾伦工具箱是一个多文件批量处理插件,目的是为了广大开发者提高开发效率,减少项目代码规范化审计,缩短开发者的项目开发周 ...

  6. JSON帮助类

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...

  7. PHP+MYSQL网站SQL Injection攻防

    程序员们写代码的时候讲究TDD(测试驱动开发):在实现一个功能前,会先写一个测试用例,然后再编写代码使之运行通过.其实当黑客SQL Injection时,同样是一个TDD的过程:他们会先尝试着让程序报 ...

  8. ASP.NET5,MVC 6,Beta 7与VS 2015 RTM的兼容问题

    温馨提示:本文杂而乱,最终不知所云. Visual Studio 2015 RTM已经于2015年7月20号正式发布,我也在第一时间下载安装了起来. 虽然在5月份就开始使用RC版本,但是还是很期待正式 ...

  9. jquery html属性和text属性的区别

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  10. Lind.DDD.Domain.IOwnerBehavor对实体的意义

    回到目录 对于Lind.DDD架构,我之前写了不少文章,对于它的Domain模式也介绍了不少,像之前的IEntity,ILogicDeleteBehavor,IModifyBehavor,IStatu ...