标签: hadoop2

Hadoop"无法为您的平台加载native-hadoop库"警告

我目前正在运行CentOs的服务器上配置hadoop .当我运行start-dfs.sh或时stop-dfs.sh,我收到以下错误:

WARN util.NativeCodeLoader:无法为您的平台加载native-hadoop库...使用适用的builtin-java类

我正在运行Hadoop 2.2.0.

在线搜索提出了这个链接:http://balanceandbreath.blogspot.ca/2013/01/utilnativecodeloader-unable-to-load.html

但是,/native/hadoop 2.x上的目录内容似乎不同,所以我不知道该怎么做.

我还在这两个环境变量中添加了hadoop-env.sh:

export HADOOP_OPTS ="$ HADOOP_OPTS -Djava.library.path =/usr/local/hadoop/lib /"

export HADOOP_COMMON_LIB_NATIVE_DIR ="/ usr/local/hadoop/lib/native /"

有任何想法吗?

java linux hadoop java.library.path hadoop2

256
推荐指数
11
解决办法
40万
查看次数

Datanode无法正确启动

我试图在伪分布式模式下安装Hadoop 2.2.0.当我尝试启动datanode服务时,它显示以下错误,任何人都可以告诉如何解决这个问题?

**2**014-03-11 08:48:15,916 INFO org.apache.hadoop.hdfs.server.datanode.DataNode: Block pool <registering> (storage id unknown) service to localhost/127.0.0.1:9000 starting to offer service
2014-03-11 08:48:15,922 INFO org.apache.hadoop.ipc.Server: IPC Server Responder: starting
2014-03-11 08:48:15,922 INFO org.apache.hadoop.ipc.Server: IPC Server listener on 50020: starting
2014-03-11 08:48:16,406 INFO org.apache.hadoop.hdfs.server.common.Storage: Lock on /home/prassanna/usr/local/hadoop/yarn_data/hdfs/datanode/in_use.lock acquired by nodename 3627@prassanna-Studio-1558
2014-03-11 08:48:16,426 FATAL org.apache.hadoop.hdfs.server.datanode.DataNode: Initialization failed for block pool Block pool BP-611836968-127.0.1.1-1394507838610 (storage id DS-1960076343-127.0.1.1-50010-1394127604582) service to localhost/127.0.0.1:9000
java.io.IOException: Incompatible clusterIDs in /home/prassanna/usr/local/hadoop/yarn_data/hdfs/datanode: namenode clusterID = CID-fb61aa70-4b15-470e-a1d0-12653e357a10; datanode clusterID = CID-8bf63244-0510-4db6-a949-8f74b50f2be9
    at**** …
Run Code Online (Sandbox Code Playgroud)

hadoop hadoop2

36
推荐指数
7
解决办法
5万
查看次数

如何从本地Hadoop 2.6安装访问S3/S3n?

我正在尝试在本地计算机上重现Amazon EMR集群.为此,我已经安装了最新的稳定版Hadoop - 2.6.0.现在我想访问一个S3存储桶,就像我在EMR集群中一样.

我在core-site.xml中添加了aws凭据:

<property>
  <name>fs.s3.awsAccessKeyId</name>
  <value>some id</value>
</property>

<property>
  <name>fs.s3n.awsAccessKeyId</name>
  <value>some id</value>
</property>

<property>
  <name>fs.s3.awsSecretAccessKey</name>
  <value>some key</value>
</property>

<property>
  <name>fs.s3n.awsSecretAccessKey</name>
  <value>some key</value>
</property>
Run Code Online (Sandbox Code Playgroud)

注意:由于密钥上有一些斜杠,我已使用%2F转义它们

如果我尝试列出存储桶的内容:

hadoop fs -ls s3://some-url/bucket/
Run Code Online (Sandbox Code Playgroud)

我收到此错误:

ls:没有用于方案的FileSystem:s3

我再次编辑了core-site.xml,并添加了与fs相关的信息:

<property>
  <name>fs.s3.impl</name>
  <value>org.apache.hadoop.fs.s3.S3FileSystem</value>
</property>

<property>
  <name>fs.s3n.impl</name>
  <value>org.apache.hadoop.fs.s3native.NativeS3FileSystem</value>
</property>
Run Code Online (Sandbox Code Playgroud)

这次我得到一个不同的错误:

-ls: Fatal internal error
java.lang.RuntimeException: java.lang.ClassNotFoundException: Class org.apache.hadoop.fs.s3.S3FileSystem not found
        at org.apache.hadoop.conf.Configuration.getClass(Configuration.java:2074)
        at org.apache.hadoop.fs.FileSystem.getFileSystemClass(FileSystem.java:2578)
        at org.apache.hadoop.fs.FileSystem.createFileSystem(FileSystem.java:2591)
Run Code Online (Sandbox Code Playgroud)

不知怎的,我怀疑纱线分布没有必要的罐子能够读取S3,但我不知道从哪里获得这些.任何指向这个方向的人都会非常感激.

hadoop amazon-s3 amazon-web-services hadoop-yarn hadoop2

31
推荐指数
2
解决办法
3万
查看次数

Spark无法为您的平台加载native-hadoop库

我是Ubuntu 16.04的假人,拼命想让Spark工作.我试图使用stackoverflow上找到的答案解决我的问题,但我无法解决任何问题.使用./spark-shellbin文件夹中的命令启动spark 我收到此消息

WARN NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable".
Run Code Online (Sandbox Code Playgroud)

我正在使用Java版本

java version "1.8.0_101
Java(TM) SE Runtime Environment (build 1.8.0_101-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.101-b13, mixed mode).
Run Code Online (Sandbox Code Playgroud)

Spark是最新版本:2.0.1与Hadoop 2. 7.我还重新使用了较旧的Spark软件包,1.6.2与Hadoop 2.4,但我得到了相同的结果.我也尝试在Windows上安装Spark,但它似乎比在Ubuntu上执行它更难.

我还尝试从我的笔记本电脑上运行Spark上的一些命令:我可以定义一个对象,我可以创建一个RDD并将其存储在缓存中,我可以使用类似的函数.map(),但是当我尝试运行该函数时,.reduceByKey()我会收到几个错误字符串消息.

可能是Hadoop库是为32位编译的,而我是在64位?

谢谢.

hadoop apache-spark hadoop2

28
推荐指数
1
解决办法
3万
查看次数

Hadoop namenode:单点故障

Hadoop架构中的Namenode是单点故障.

拥有大型Hadoop集群的人如何应对这个问题?

是否有一个行业认可的解决方案运行良好,其中一个辅助Namenode接管以防主要的一个失败?

hadoop mapreduce hdfs hadoop-yarn hadoop2

25
推荐指数
2
解决办法
1万
查看次数

如何将AWS Access Key ID和Secret Access Key指定为amazon s3n URL的一部分

我将输入和输出文件夹作为参数传递给来自网页的mapreduce字数统计程序.

得到以下错误:

HTTP状态500 - 请求处理失败; 嵌套异常是java.lang.IllegalArgumentException:必须将AWS Access Key ID和Secret Access Key指定为s3n URL的用户名或密码,或者通过设置fs.s3n.awsAccessKeyId或fs.s3n.awsSecretAccessKey属性(分别).

hadoop mapreduce amazon-s3 amazon-web-services hadoop2

25
推荐指数
3
解决办法
4万
查看次数

正在运行0个数据节点,并且此操作中不排除任何节点

我已经建立了一个多节点Hadoop集群.NameNode和Secondary namenode在同一台机器上运行,集群只有一个Datanode.所有节点都在Amazon EC2计算机上配置.

以下是主节点上的配置文件:

masters
54.68.218.192 (public IP of the master node)

slaves
54.68.169.62 (public IP of the slave node)
Run Code Online (Sandbox Code Playgroud)

核心的site.xml

<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://localhost:9000</value>
</property>
</configuration>
Run Code Online (Sandbox Code Playgroud)

mapred-site.xml中

<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
Run Code Online (Sandbox Code Playgroud)

HDFS-site.xml中

<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:/usr/local/hadoop_store/hdfs/namenode</value>
</property>
<property>
<name>dfs.datanode.name.dir</name>
<value>file:/usr/local/hadoop_store/hdfs/datanode</value>
</property>
</configuration>
Run Code Online (Sandbox Code Playgroud)

现在是datanode上的配置文件:

核心的site.xml

<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://54.68.218.192:10001</value>
</property>
</configuration>
Run Code Online (Sandbox Code Playgroud)

mapred-site.xml中

<configuration>
<property>
<name>mapred.job.tracker</name>
<value>54.68.218.192:10002</value>
</property>
</configuration>
Run Code Online (Sandbox Code Playgroud)

HDFS-site.xml中

<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:/usr/local/hadoop_store/hdfs/namenode</value>
</property>
<property>
<name>dfs.datanode.name.dir</name>
<value>file:/usr/local/hadoop_store/hdfs/datanode</value>
</property>
</configuration>
Run Code Online (Sandbox Code Playgroud)

在Namenode上运行的jps给出以下内容: …

ubuntu hadoop amazon-ec2 hdfs hadoop2

22
推荐指数
4
解决办法
5万
查看次数

name node Vs secondary name node

Hadoop是一致的和分区容忍的,即它属于CAP theoram的CP类别.

Hadoop不可用,因为所有节点都依赖于名称节点.如果名称节点落下,则群集将关闭.

但考虑到HDFS集群有一个辅助名称节点,为什么我们不能将hadoop称为可用.如果名称节点已关闭,则辅助名称节点可用于写入.

名称节点和辅助名称节点之间的主要区别是什么使hadoop不可用.

提前致谢.

hadoop high-availability hdfs hadoop2

20
推荐指数
1
解决办法
4万
查看次数

Hadoop发布缺失/ conf目录

我正在尝试在Ubuntu上安装Hadoop的单节点设置.我开始按照Hadoop 2.3文档中说明进行操作.

但我似乎错过了一些非常简单的事情.

首先,它说

要获得Hadoop发行版,请从其中一个Apache下载镜像下载最新的稳定版本.

然后,

解压缩下载的Hadoop发行版.在分发中,编辑文件conf/hadoop-env.sh以至少将JAVA_HOME定义为Java安装的根目录.

但是,我似乎无法找到该conf目录.

我在其中一个镜像下载了2.3版本.然后解压缩tarball,ls内部返回:

$ ls
bin  etc  include  lib  libexec  LICENSE.txt  NOTICE.txt  README.txt  sbin  share
Run Code Online (Sandbox Code Playgroud)

我能够找到他们引用的文件,而不是在conf目录中:

$ find . -name hadoop-env.sh
./etc/hadoop/hadoop-env.sh
Run Code Online (Sandbox Code Playgroud)

我错过了什么,还是我抓错了包裹?或者文档是否过时了?

如果是这样,任何人都知道哪些更新的文档是什么?

hadoop hadoop2

19
推荐指数
3
解决办法
2万
查看次数

DataNode不在单节点hadoop 2.6.0中启动

我在运行Ubuntu 14.04LTS的笔记本电脑上安装了hadoop 2.6.0.我通过运行成功启动了hadoop守护进程start-all.shWourdCount成功运行了一个示例,然后我尝试运行一个不能与我一起使用的jar示例,所以我决定使用格式 hadoop namenode -format并重新开始,但是当我使用start-dfs.sh && start-yarn.shjps 启动所有守护进程时所有守护进程运行但不是如下所示的datanode:

hdferas@feras-Latitude-E4310:/usr/local/hadoop$ jps
12628 NodeManager
12110 NameNode
12533 ResourceManager
13335 Jps
12376 SecondaryNameNode
Run Code Online (Sandbox Code Playgroud)

怎么解决?

hadoop hadoop-plugins hadoop2

19
推荐指数
2
解决办法
3万
查看次数