大数据 HDFS集群搭建 文件配置详解
2020-02-15 本文已影响0人
喵感数据
HDFS有用的配置文件及说明
1、hdfs-site.xml
HA集群需要使用命名空间区分一个HDFS集群。同一个集群中的不同NameNode,使用不同的NameNode ID区分。为了支持所有NameNode使用相同的配置文件,因此在配置参数中,需要把“nameservice ID”作为NameNode ID的前缀。
dfs.nameservices 命名空间的逻辑名称。提供服务的NS(nameservices)逻辑名称,与core-site.xml里的对应。如果有多个HDFS集群,可以配置多个命名空间的名称,使用逗号分开即可。
<property>
<name>dfs.nameservices</name>
<value>ns1</value>
<description>提供服务的NS逻辑名称,与core-site.xml里的对应</description>
</property>
dfs.ha.namenodes.[nameservice ID] 命名空间中所有NameNode的唯一标示名称。可以配置多个,使用逗号分隔。该名称是可以让DataNode知道每个集群的所有NameNode。
<property>
<name>dfs.ha.namenodes.ns1</name>
<value>nn1,nn2</value>
<description>列出该逻辑名称下的NameNode逻辑名称</description>
</property>
dfs.namenode.rpc-address.[nameservice ID].[name node ID] 每个namenode监听的RPC地址。
dfs.namenode.http-address.[nameservice ID].[name node ID] 每个namenode监听的http地址。
<!--主要的-->
<property>
<name>dfs.namenode.rpc-address.ns1.nn1</name>
<value>nn1.hadoop:9000</value>
<description>指定NameNode的RPC位置</description>
</property>
<!--主要的-->
<property>
<name>dfs.namenode.http-address.ns1.nn1</name>
<value>nn1.hadoop:50070</value>
<description>指定NameNode的Web Server位置</description>
</property>
<!--主要的-->
<property>
<name>dfs.namenode.rpc-address.ns1.nn2</name>
<value>nn2.hadoop:9000</value>
<description>指定NameNode的RPC位置</description>
</property>
<!--主要的-->
<property>
<name>dfs.namenode.http-address.ns1.nn2</name>
<value>nn2.hadoop:50070</value>
<description>指定NameNode的Web Server位置</description>
</property>
RPC(Remote Procedure Call Protocol)
远程过程调用协议。一个通俗的描述是:客户端在不知道调用细节的情况下,调用存在于远程计算机上的某个对象,就像调用本地应用程序中的对象一样。
目前,主流的平台中都支持各种远程调用技术,以满足分布式系统架构中不同的系统之间的远程通信和相互调用。
2、core-site.xml
3、hadoop-env.sh
HADOOP_CLASSPATH:hadoop的classpath
JAVA_LIBRARY_PATH:java加载本地库的地址
HADOOP_HEAPSIZE:java虚拟机使用的最大内存
HADOOP_OPTS:hadoop启动公用参数
HADOOP_NAMENODE_OPTS:namenode专用参数
HADOOP_DATANODE_OPTS:datanode专用参数
HADOOP_CLIENT_OPTS:hadoop client专用参数
4、slaves
slaves文件里面记录的是集群里所有DataNode的主机名
hadoop-daemons.sh 中用到了 slaves 文件
注意:配置文件里的host改成你自己的