Hadoop配置详解:core-site与hdfs-site.xml关键设置

需积分: 48 1 下载量 83 浏览量 更新于2024-09-08 收藏 2KB TXT 举报
Hadoop配置文件包括四个主要的XML文件,分别是core-site.xml、hdfs-site.xml、mapred-site.xml和yarn-site.xml,它们用于定义Hadoop集群的关键参数和设置。 1. core-site.xml配置文件: - `fs.default.name` 和 `fs.defaultFS`:这两个属性都是用来设置默认的文件系统名称节点URI。在Hadoop 2.x及以后的版本中,`fs.defaultFS`已经取代了`fs.default.name`,但为了兼容旧版本,两者通常会被设置成相同的值,如`hdfs://hadoop:9000`,表示HDFS服务运行在名为"hadoop"的主机上,端口为9000。 - `hadoop.tmp.dir`:这是Hadoop临时文件目录的配置,用于存放系统运行时生成的临时文件,如日志和元数据等。此处设置为`/hadoop/tmp`。 2. hdfs-site.xml配置文件: - `dfs.replication`:该属性定义了HDFS文件的副本数,默认值是3,但在这个配置中被设置为1,这意味着只有一个副本。这通常用于测试环境,减少存储需求,但在生产环境中,更多的副本能提供更高的容错性。 - `dfs.name.dir`:这个属性指定了NameNode持久化元数据的目录,即命名空间信息和编辑日志的位置。在这里设置为`/hadoop/name`,NameNode会在此目录下创建并存储其数据。 - `dfs.data.dir`:此属性定义了DataNode用于存储数据块的目录,多个目录可以用逗号分隔,形成一个列表。在这个例子中,DataNode的数据目录被设置为`/hadoop/data`。 这些配置文件对于Hadoop集群的正常运行至关重要,它们允许管理员根据集群的硬件资源、性能需求和安全性考虑来定制Hadoop的行为。例如,通过调整`dfs.replication`可以平衡存储效率和容错性,而`hadoop.tmp.dir`的设置则影响了系统的稳定性。在实际部署中,还需要根据集群的实际情况对其他配置文件如mapred-site.xml和yarn-site.xml进行相应的配置,以优化MapReduce作业的执行和资源管理。

INFO [upload-pool-47] c.e.d.j.DataUnitService.DataUnitService#tohiveWy[DataUnitService.java:172] /u01/tarsftp//2023070719592612007140001.txt.gz解压>>>>>>/u01/untarsftp/ 2023-07-07 20:11:54,787 WARN [Thread-4655234] o.a.h.h.DFSClient.DFSOutputStream$DataStreamer#run[DFSOutputStream.java:558] DataStreamer Exception org.apache.hadoop.ipc.RemoteException: File /dataunit/cu_access_log/10/2023070719592612007140001.txt could only be written to 0 of the 1 minReplication nodes. There are 11 datanode(s) running and no node(s) are excluded in this o peration. at org.apache.hadoop.hdfs.server.blockmanagement.BlockManager.chooseTarget4NewBlock(BlockManager.java:2121) at org.apache.hadoop.hdfs.server.namenode.FSDirWriteFileOp.chooseTargetForNewBlock(FSDirWriteFileOp.java:286) at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.getAdditionalBlock(FSNamesystem.java:2706) at org.apache.hadoop.hdfs.server.namenode.NameNodeRpcServer.addBlock(NameNodeRpcServer.java:875) at org.apache.hadoop.hdfs.protocolPB.ClientNamenodeProtocolServerSideTranslatorPB.addBlock(ClientNamenodeProtocolServerSideTranslatorPB.java:561) at org.apache.hadoop.hdfs.protocol.proto.ClientNamenodeProtocolProtos$ClientNamenodeProtocol$2.callBlockingMethod(ClientNamenodeProtocolProtos.java) at org.apache.hadoop.ipc.ProtobufRpcEngine$Server$ProtoBufRpcInvoker.call(ProtobufRpcEngine.java:524) at org.apache.hadoop.ipc.RPC$Server.call(RPC.java:1025) at org.apache.hadoop.ipc.Server$RpcCall.run(Server.java:876) at org.apache.hadoop.ipc.Server$RpcCall.run(Server.java:822) at java.security.AccessController.doPrivileged(Native Method) at javax.security.auth.Subject.doAs(Subject.java:422) at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1730) at org.apache.hadoop.ipc.Server$Handler.run(Server.java:2682)

2023-07-13 上传