原地址:http://hi.chinaunix.net/?uid-9976001-action-viewspace-itemid-48380
- 有时候DFSClient 操作hdfs总报连接超时的time out错,不一定都是因为网络原因造成,还有一种比较大的可能性是由于namenode的dfs.namenode.handler.count配置参数太低,默认为10。对hdfs和nameno的的rpc调用线程太少导致rpc call出现超时造成,这是一点小经验。
- 如果由于namenode内存限制,dfs.namenode.handler.count参数实在无法调的太大,也可以加大ipc.server.listen.queue.size这个参数,这样的话,对namenode的rpc调用在繁忙时虽然会响应慢一点,但是不至于导致socket连接refuse的过多,可以缓解一点namenode的访问出错频率。这个值默认是128
- mapred.local.dir.minspacestart:在mapreduce运行任务之前,检查temporary 目录下是否还有该选项配置的空闲空间,如果少于该配置,则map或reduce task不会分配到该TaskTracker上,以避免由于磁盘空间不足导致的task失败。默认设置为0,disable该功能
- mapred.local.dir.minspacekill:如果该磁盘卷下剩余的磁盘空间不足该配置,则将正在运行的Task 杀掉。默认为0,diabled该功能
- dfs.datanode.du.reserved:dfs写文件块时,如果当前datanode上的dfs.data.dir下剩余磁盘空间不足该选项配置的空间大小,就不往该datanode继续写数据块