文档章节

hadoop安装和使用过程中遇到的问题

Z
 Zoe_2016
发布于 2017/04/10 11:27
字数 1507
阅读 36
收藏 0

1. 使用高版本的VMware安装的系统,在低版本的VMware打开出现bu'j不兼容问题:

    VMware本身高版本的能够支持低版本VMware配置的虚拟机,但是反过来就不支持了。如果想在低版本的VMware打开用高版本VMware配置的虚拟机,可以如下操作:

    1. 在欲打开虚拟机文件夹中找到后缀名为“.vmx”的文件,用记事本打开;

    2. 找到“virtualHW.version = "11"”,将数字改为你现用VMware版本号或更低版本号;

    3. 保存,操作完成,可以打开了。

2. 无法连接虚拟设备 floppy0。主机上没有相对应的设备。

    默认情况下,虚拟机的虚拟软驱是使用主机的物理软驱,而我们的电脑一般不安装软驱,所以会提示“主机上没有相应的设备”。

    解决:不用软驱,在虚拟机的设置里,将软盘取消掉,就不会出现此提示了。

3. Name node is in safe mode.

    #1因为在分布式文件系统启动的时候,开始的时候会有安全模式,当分布式文件系统处于安全模式的情况下,文件系统中的内容不允许修改也不允许删除,直到安全模式结束。安全模式主要是为了系统启动的时候检查各个DataNode上数据块的有效性,同时根据策略必要的复制或者删除部分数据块。运行期通过命令也可以进入安全模式。在实践过程中,系统启动的时候去修改和删除文件也会有安全模式不允许修改的出错提示,只需要等待一会儿即可。

    也可以手动关闭:bin/hadoop dfsadmin -safemode leave

#1【错误Name node is in safe mode的解决方法

4.Unauthorized request to start container.

    其原因是namenode,datanode时间同步问题。(date命令分别看每个节点的时间)

    解释同步:在Linux系统中,为了避免主机时间因为在长时间运行下所导致的时间偏差,进行时间同步(synchronize)的工作是非常必要的。Linux系统下,一般使用ntp服务来同步不同机器的时间。NTP 是网络时间协议(Network Time Protocol)的简称。

    检查虚拟机是否可以使用网络,如果可以则进行时间按同步:

法一:

    root#crontab -e

    添加:0 1 * * * /usr/sbin/ntpdate cn.pool.ntp.org

法二:

    root# /usr/sbin/ntpdate cn.pool.ntp.org

一下是关于ntp的一些指令:

    查看ntp服务的状态:

# service ntpd status

    检查是否有ntp相关包(使用rpm或yum安装):

#  rpm -qa | grep ntp
#使用rpm方式安装
rpm -ivh ntp-4.2.2p1-8.el5.i386.rmp
#使用yum方式安装
yum -y install ntp.i*
#使用rpm方式删除
rpm -e ntp-4.2.2pl-8.el5.i386.rpm
#使用yum方式删除
yum -y remove ntp.i*

    ntp服务配置:

配置文件:/etc/ntp.conf,将internet上的时间服务器作为内部标准时间来源

restrict default kod nomodify notrap nopeer noquery
restrict 127.0.0.1
restrict -6::1
restrict 192.168.0.0 mask 255.255.255.0 nomodify notrap
restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap
#指定Internet上的时间服务器
restrict 207.46.232.182 mask 255.255.255.255 nomodify notrap noquery
server 207.46.232.182
server 127.127.1.0
fudge 127.127.1.0 stratum 10
keys /etc/ntp/keys
#指定NTP服务器日志文件
logfile /var/log/ntp  

    修改/etc/ntp/stpe-tickers文件(当ntpd服务启动时,会自动与该文件中的记录的上层ntp服务进行时间校对)

207.46.232.182
127.127.1.0

    修改/etc/sysconfig/ntpd文件:

#允许BIOS与系统时间同步,也可以通过hwclock -w 命令  
SYNC_HWCLOCK=yes  

    重新启动服务:

/sbin/service network restart

    查看:

#显示本机上一次与上层ntp服务器同步时间的情况
ntpstat
如下显示:
synchronised to local net at stratum 6 
   time correct to within 11 ms
   polling server every 64 s
#查看本机与上层ntp服务器通信情况
ntpq -p
如下显示
     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
*LOCAL(0)        .LOCL.           5 l   23   64  377    0.000    0.000   0.000

    ntp服务的启动和暂停(NTP属于system):

#启动
service ntpd start
#停止
Service ntpd stop
#重新加载
service ntpd reload
#查看当前启动状态
service ntpd status

    ntp服务自动加载:

#在运行级别2、3、4、5上设置为自动运行
chkconfig ntpd on
#在运行级别2、3、4、5上设置为不自动运行
chkconfig ntpd off
#在运行级别3、5上设置为自动运行
chkconfig ntpd --level 35 on
#在运行级别3、5上设置为不自动运行
chkconfig ntpd --level 35 off

    查看ntp服务器时间:

ntpdate ntpserver

    解决:多个datanode与namenode进行时间同步,在每台服务器执行

5.mfile3 not a SequenceFile

    aggregatewordcount只能对二进制SequenceFile进行解析,而不能解析普通文本,需要hadoop 的api把file.txt转换成SequenceFile。

    另外的解决办法:把文件的编码改为utf-8重新上传覆盖后就可以了(但是我的情况无法使用该方法解决)

6.java.lang.ClassNotFoundException: Top3

    我是在宿主机的eclipse打包jar(未编译)包后移到hadoop安装目录下,再执行的时候提示该错误,很明显,我没有编译,当然还不能用,所以,不管你是在宿主机上或是虚拟机上,都要进行编译才可用。

7.错误: 程序包org.apache.hadoop.conf不存在

    如果你是在虚拟机指令编译的话,要注意:

    hadoop2.*的版本,所以需要使用的库都分散了(hadoop1.*的是集中在hadoop-1.*-core.jar),分别是hadoop-2.7.3/share/hadoop/common/hadoop-common-2.7.3.jar;hadoop-2.7.3/share/hadoop/mapreduce/hadoop-mapreduce-client-core-2.7.3.jar

    法一:指令中明确标出classpath:

$javac -classpath hadoop-2.7.3/share/hadoop/common/hadoop-common-2.7.3.jar /hadoop-2.7.3/share/hadoop/mapreduce/hadoop-mapreduce-client-core-2.7.3.jar/hadoop-2.7.3/share/hadoop/common/lib/commons-cli-1.2.jar -d 存放的文件名 程序.java

    法二:直接编辑classpath

超级用户身份打开/etc/profile编辑:

export HADOOP_HOME="hadoop的安装绝对目录hadoop-2.7.3"

export classpath="hadoop-2.7.3/share/hadoop/common/hadoop-common-2.7.3.jar;hadoop-2.7.3/share/hadoop/mapreduce/hadoop-mapreduce-client-core-2.7.3.jar;hadoop-2.7.3/share/hadoop/common/lib/commons-cli-1.2.jar"

保存退出

文件生效:source /etc/profile

    

© 著作权归作者所有

Z
粉丝 0
博文 36
码字总数 12725
作品 0
广州
私信 提问
Hadoop集群(三) Hbase搭建

前面已经完成Zookeeper和HDFS的安装,本文会详细介绍Hbase的安装步骤。以及安装过程中遇到问题的汇总。 系列文章: Hadoop集群(一) Zookeeper搭建 Hadoop集群(二) HDFS搭建 Hadoop集群(四) H...

hsbxxl
2017/10/11
0
0
零基础学习hadoop到上手工作线路指导(初级篇)

零基础学习hadoop,没有想象的那么困难,也没有想象的那么容易。才刚接触大数据时,曾经想过培训,但是培训机构的选择就让我很纠结。因为师兄跟我说,很多培训机构的老师其实以前就是他们的学...

我思gu我在
2017/01/09
212
3
玩转Ambari之二----基于ubuntu的源码编译和安装

网上关于ambari安装的有很多,有直接从现成的源直接下载安装的,也有自己构建本地源安装的,还有不少自己从apache网站下载源码编译安装的。前两者相对简单,依赖小,期间遇到问题也少,顺利的...

wqhlmark64
2017/10/13
0
0
从零开始的 Win7 64Bit 编译Hadoop3

前言 最近在接触Hadoop方面的知识。去官网逛了一圈发现最新版本已经是3.0.0-alpha1了。刚好在搭建Hadoop的环境,就决定使用最新版本的Hadoop试试水。因为自己使用的机器是windows的,逛了一圈...

Alex_Nine
2016/11/02
2.2K
0
Linux下安装Hadoop(2.7.1)详解及WordCount运行

一、引言   在完成了Storm的环境配置之后,想着鼓捣一下Hadoop的安装,网上面的教程好多,但是没有一个特别切合的,所以在安装的过程中还是遇到了很多的麻烦,并且最后不断的查阅资料,终于...

oO维尼熊Oo
2018/05/03
14
0

没有更多内容

加载失败,请刷新页面

加载更多

PhotoShop 高级应用:USM锐化/S锐化/防抖

、 高反差锐化+混合模式:叠加模式 【将更多的边缘细节添加到图像中】

东方墨天
26分钟前
6
0
Python数据可视化之matplotlib

常用模块导入 import numpy as npimport matplotlibimport matplotlib.mlab as mlabimport matplotlib.pyplot as pltimport matplotlib.font_manager as fmfrom mpl_toolkits.mplot3d i......

松鼠大帝
昨天
5
0
我用Bash编写了一个扫雷游戏

我在编程教学方面不是专家,但当我想更好掌握某一样东西时,会试着找出让自己乐在其中的方法。比方说,当我想在 shell 编程方面更进一步时,我决定用 Bash 编写一个扫雷游戏来加以练习。 我在...

老孟的Linux私房菜
昨天
7
0
Go语言Hello world(GOPATH和Go Module版)

本文是「vangoleo的Go语言学习笔记」系列文章之一。 官网: http://www.vangoleo.com/go/go-hello-world-02/ 往期回顾: Go语言入门-你好,Go语言 Go语言入门-Hello World(Go Playground版) 上...

vangoleo
昨天
9
0
C++虚函数以及虚函数表

在了解虚函数之前先了解下对象模型: 对象模型: 在C++中,有两种数据成员(class data members):static 和nonstatic,以及三种类成员函数(class member functions):static、nonstatic和v...

黑白双键
昨天
9
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部