定位瓶颈与快速自检
hadoop jar /opt/module/hadoop-3.1.3/share/hadoop/mapreduce/hadoop-mapreduce-client-jobclient-3.1.3-tests.jar TestDFSIO -write -nrFiles 10 -fileSize 128MBhadoop jar /opt/module/hadoop-3.1.3/share/hadoop/mapreduce/hadoop-mapreduce-client-jobclient-3.1.3-tests.jar TestDFSIO -read -nrFiles 10 -fileSize 128MBiostat -x 1、sar -n DEV 1、ulimit -n、free -m、nload/iftop,分别定位磁盘 IOPS/队列、网络带宽、文件句柄、内存、实时流量。系统层面优化 CentOS
/etc/security/limits.conf 增加
* soft nofile 65535、* hard nofile 65535/etc/pam.d/login 增加 session required pam_limits.soulimit -n 65535 临时生效,重启后验证。/etc/sysctl.conf 增加
fs.file-max = 131072net.ipv4.tcp_tw_reuse = 1net.core.somaxconn = 65535net.ipv4.ip_local_port_range = 1024 65535sysctl -p 生效。dfs.datanode.data.dir)分散 I/O。HDFS 关键参数与示例
<property><name>dfs.blocksize</name><value>256M</value></property><property><name>dfs.replication</name><value>3</value></property><property><name>dfs.namenode.handler.count</name><value>20</value></property><property><name>dfs.datanode.handler.count</name><value>30</value></property><property><name>dfs.client.read.shortcircuit</name><value>true</value></property><property><name>dfs.namenode.name.dir</name><value>/data/dfs/nn1,/data/dfs/nn2</value></property><property><name>dfs.datanode.data.dir</name><value>/data/dfs/dn1,/data/dfs/dn2</value></property><property><name>mapreduce.map.output.compress</name><value>true</value></property><property><name>mapreduce.map.output.compress.codec</name><value>org.apache.hadoop.io.compress.SnappyCodec</value></property>数据布局与作业优化
验证与持续监控