Hadoop分布式计算配置详解

需积分: 9 0 下载量 185 浏览量 更新于2024-07-15 收藏 141KB PPTX 举报
"本资源是关于Hadoop分布式计算配置的教程,由北风网的讲师tom5提供。主要内容包括配置Hadoop的核心站点、HDFS站点和MapReduce站点的XML文件,以及集群中Master和Slave节点的设定。" 在Hadoop分布式计算环境中,配置是至关重要的,因为它直接影响到系统的性能、稳定性和数据安全性。以下将详细解析给定的配置信息: 1. **核心站点配置 (conf/core-site.xml)**: - `<name>hadoop.tmp.dir</name>`: 这个属性定义了Hadoop临时文件的根目录,用于存放日志和其他临时数据。在这里设置为`/home/hadoop/hadoop-1.0.4/tmp`,需确保该路径已创建。 - `<name>fs.default.name</name>`: 这个属性指定了默认文件系统的URI,通常是一个HDFS集群的名称节点(Namenode),这里是`hdfs://192.168.134.150:9000`。这表明HDFS的名字节点运行在IP地址为192.168.134.150的机器上,端口为9000。 2. **HDFS站点配置 (conf/hdfs-site.xml)**: - `<name>dfs.replication</name>`: 这个属性定义了数据块的副本数量。默认值是3,但在这个配置中设置为2。这意味着每个数据块会在集群中保存两个副本,以保证容错性。如果Slave节点少于3台,设置副本数为3会导致错误。 3. **MapReduce站点配置 (conf/mapred-site.xml)**: - `<name>mapred.job.tracker</name>`: 这个属性定义了JobTracker的位置,它是MapReduce作业调度和任务管理的中心。这里的值`http://192.168.134.150:9001`表示JobTracker运行在同一IP地址的机器上,但使用9001端口。 4. **Master和Slave节点配置**: - `conf/masters` 文件列出Master节点,仅包含一个条目`namenode`,表示Namenode的角色。 - `conf/slaves` 文件列出了Slave节点,这里是`datanode1` 和 `datanode2`,分别代表两个DataNode节点。DataNodes是HDFS中的数据存储节点。 5. **集群部署与启动**: - Hadoop软件需要被复制到所有Slave节点上。示例中通过`scp`命令将`/home/hadoop/hadoop-1.0.4`目录复制到了`datanode1`和`datanode2`的相同路径下。 - 首次启动前,需要对HDFS进行格式化,使用命令`hadoop namenode -format`,这会初始化NameNode的数据结构并清除所有现有数据。 理解这些配置是管理和维护Hadoop集群的基础,对于调整性能、优化资源分配以及故障排查都至关重要。在实际操作中,还需要根据具体的硬件配置、数据量和业务需求来定制这些配置参数。

at org.apache.hadoop.ipc.Client.call(Client.java:1476) at org.apache.hadoop.ipc.Client.call(Client.java:1413) at org.apache.hadoop.ipc.ProtobufRpcEngine$Invoker.invoke(ProtobufRpcEngine.java:229) at com.sun.proxy.$Proxy29.mkdirs(Unknown Source) at org.apache.hadoop.hdfs.protocolPB.ClientNamenodeProtocolTranslatorPB.mkdirs(ClientNamenodeProtocolTranslatorPB.java:563) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.apache.hadoop.io.retry.RetryInvocationHandler.invokeMethod(RetryInvocationHandler.java:191) at org.apache.hadoop.io.retry.RetryInvocationHandler.invoke(RetryInvocationHandler.java:102) at com.sun.proxy.$Proxy30.mkdirs(Unknown Source) at org.apache.hadoop.hdfs.DFSClient.primitiveMkdir(DFSClient.java:3014) at org.apache.hadoop.hdfs.DFSClient.mkdirs(DFSClient.java:2984) at org.apache.hadoop.hdfs.DistributedFileSystem$21.doCall(DistributedFileSystem.java:1047) at org.apache.hadoop.hdfs.DistributedFileSystem$21.doCall(DistributedFileSystem.java:1043) at org.apache.hadoop.fs.FileSystemLinkResolver.resolve(FileSystemLinkResolver.java:81) at org.apache.hadoop.hdfs.DistributedFileSystem.mkdirsInternal(DistributedFileSystem.java:1043) at org.apache.hadoop.hdfs.DistributedFileSystem.mkdirs(DistributedFileSystem.java:1036) at org.apache.hadoop.hive.ql.session.SessionState.createPath(SessionState.java:751) at org.apache.hadoop.hive.ql.session.SessionState.createSessionDirs(SessionState.java:674) at org.apache.hadoop.hive.ql.session.SessionState.start(SessionState.java:586)

2023-07-16 上传