gpt4 book ai didi

hadoop - HDFS 下复制 block

转载 作者:可可西里 更新时间:2023-11-01 14:20:27 29 4
gpt4 key购买 nike

我在我的“集群”上使用 Cloudera Manager 免费版,所有服务都在我的单台机器上。

我的机器充当数据节点、名称节点以及辅助名称节点。

HDFS 中与复制相关的设置,

dfs.replication                                   - 1
dfs.replication.min, dfs.namenode.replication.min - 1
dfs.replication.max - 1

我仍然得到复制不足的 block ,因此健康状况不佳,

Namenode 日志说,

Requested replication 3 exceeds maximum 1
java.io.IOException: file /tmp/.cloudera_health_monitoring_canary_files/.canary_file_2013_10_21-15_33_53 on client 111.222.333.444
Requested replication 3 exceeds maximum 1
at org.apache.hadoop.hdfs.server.blockmanagement.BlockManager.verifyReplication(BlockManager.java:858)
at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.startFileInternal(FSNamesystem.java:1848)
at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.startFileInt(FSNamesystem.java:1771)
at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.startFile(FSNamesystem.java:1747)
at org.apache.hadoop.hdfs.server.namenode.NameNodeRpcServer.create(NameNodeRpcServer.java:439)
at org.apache.hadoop.hdfs.protocolPB.ClientNamenodeProtocolServerSideTranslatorPB.create(ClientNamenodeProtocolServerSideTranslatorPB.java:207)
at org.apache.hadoop.hdfs.protocol.proto.ClientNamenodeProtocolProtos$ClientNamenodeProtocol$2.callBlockingMethod(ClientNamenodeProtocolProtos.java:44942)
at org.apache.hadoop.ipc.ProtobufRpcEngine$Server$ProtoBufRpcInvoker.call(ProtobufRpcEngine.java:453)
at org.apache.hadoop.ipc.RPC$Server.call(RPC.java:1002)
at org.apache.hadoop.ipc.Server$Handler$1.run(Server.java:1751)
at org.apache.hadoop.ipc.Server$Handler$1.run(Server.java:1747)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAs(Subject.java:396)
at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1408)
at org.apache.hadoop.ipc.Server$Handler.run(Server.java:1745)

我已经更改了值,保存,部署客户端配置,也重新启动。还是一样。

我需要设置什么属性才能使 CM 读取复制因子为 1 而不是 3

最佳答案

直接在shell中修改复制因子

hadoop fs -setrep -R 1 /

如果您有权限问题,对我有用的是作为每个文件的用户更改复制因子。我必须按如下方式更改 oozie 文件的复制因子:

sudo -u oozie bash
hadoop fs -setrep -R 1 /

对权限失败的每个用户重复。

关于hadoop - HDFS 下复制 block ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19491919/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com