1.   Core-site.xml配置说明(文件所在目录:${Hadoop_Home}/etc/hadoop/)

(1)    配置namdenode节点URI

<property>
<name>fs.defaultFS</name>
<value>hdfs://bigdata1:8020</value>
</ property >

(2)    设置回收站

默认trash功能没有启动,生产环境中最好可以把他起来,以恢复误删数据。启用回收站后,用户删除的目录和文件会移到自己家目录下的.trash文件夹暂时保存。可以配置一个延迟时间,文件到期就会被删除。如果误删文件,直接把文件从.trash目录拷出来即可。如果删除时需要马上释放空间,可以使用能够下面语句删除文件:

[root@hexel ~]#hadoop fs -rm -skipTrash  /index.php

回收站重要参数

fs.trash.interval:表示文件可以存放的事件,以分钟为单位,0表示禁用trash。CDH4.2以上可以在server和client两端设置,Server端的值优先于Client.

fs.trash.checkpoint.interval:表示回收站检查点的间隔时间,单位也是分钟,只能在服务端设置。这个参数默认是0,就等于fs.trash.interval。

本文两个参数配置如下:

<property>
<name>fs.trash.checkpoint.interval</name>
<value>90</value>
</property>
 
<property>
<name>fs.trash.interval</name>
<value>180</value>
</property>

2.   Hdfs-site.xml配置说明(文件所在目录:${Hadoop_Home}/etc/hadoop/)

(1)    关闭权限检查

关闭权限检查后,任何客户端都可以登录hadoop进行操作,不受权限影响

<property>
<name>dfs.permissions</name>
<value>false</value>
</property>
</configuration>

(2)namenode节点数据放置位置

最好写多个路径,不同路径的数据是冗余关系

<property>

<name>dfs.namenode.name.dir</name>

<value>/hadoop/hadoop-2.0.0-cdh4.5.0/name1,/hadoop/hadoop-2.0.0-cdh4.5.0/name2</value>

</property>

(3)启用WebHDFS

Namenode的web访问方式是否开启,默认已经开启了,要关闭就设成false:

<property>
<name>dfs.webhdfs.enabled</name>
<value>true</value>
</property>

(4)配置namenode节点的http访问地址和端口

默认端口是50070,可手动设置:

<property>
<name>dfs.namenode.http-address</name>
<value>bigdata1:50071</value>
</property>

(5)datanode节点数据存放位置

多个路径之间是循环写入,负载均衡的关系:

<property>
<name>dfs.datanode.data.dir</name>
<value>/hadoop/hadoop-2.0.0-cdh4.5.0/data1,/hadoop/hadoop-2.0.0-cdh4.5.0/data2</value>
</property>

(6)配置数据副本份数

默认是3份,这里暂时写成两份:

<property>
<name>dfs.replication</name>
<value>2</value>
</property>

     (7)配置block的大小

Hdfs的块大小由dfs.block.size参数决定,默认是67108864
<property>
<name>dfs.block.size</name>
<value>67108864</value>
<description>Thedefault block size for new files</description>
</property>

(8)配置数据节点本地磁盘目录失效的阀值

默认条件下,数据节点上单个数据目录失效会导致datanode进程关闭,namenode节点将在其他datanode节点上复制该datanode节点上的数据,以保证冗余度。但是实际上该datanode上正常目录的数据是不需要复制的,参数dfs.datanode.failed.volumes.tolerated可以改变这个特性。假定设定为3,只有当datanode节点上4个以上目录失效,datanode进程才会关闭。如果目录本来就较少,那么不建议设置这个数