Hadoop 知识点
1. hdfs dfsadmin -report
Configured Capacity: 50522284032 (47.05 GB)
Present Capacity: 32719339520 (30.47 GB)
DFS Remaining: 32718974976 (30.47 GB)
DFS Used: 364544 (356 KB)
DFS Used%: 0.00%
Under replicated blocks: 0
Blocks with corrupt replicas: 0
Missing blocks: 0
Missing blocks (with replication factor 1): 0
-------------------------------------------------
Live datanodes (1):
Name: 192.168.65.101:50010 (hadoop001)
Hostname: hadoop001
Decommission Status : Normal
Configured Capacity: 50522284032 (47.05 GB)
DFS Used: 364544 (356 KB)
Non DFS Used: 15236505600 (14.19 GB)
DFS Remaining: 32718974976 (30.47 GB)
DFS Used%: 0.00%
DFS Remaining%: 64.76%
Configured Cache Capacity: 0 (0 B)
Cache Used: 0 (0 B)
Cache Remaining: 0 (0 B)
Cache Used%: 100.00%
Cache Remaining%: 0.00%
Xceivers: 1
2. hdfs dfsadmin -safemode
安全模式 不可写 只能读
hdfs dfsadmin -safemode enter
hdfs dfsadmin -safemode leave
错误: Name node is in safe mode.
1.hdfs 发生故障会进去安全模式 nn log日志
先根据错误日志来处理问题,先离开安全模式
2.业务场景
3. hdfs的数据平衡性
/home/hadoop/app/hadoop/sbin ->start-balancer.sh
"$HADOOP_PREFIX"/sbin/hadoop-daemon.sh --config $HADOOP_CONF_DIR --script "$bin"/hdfs start balancer $@
[hadoop@hadoop001 sbin]$ ./start-balancer.sh
默认是10 threshold = 10.0
(10的意义是= 所有节点的磁盘使用率不要和平均的磁盘使用之差超过10 )
[hadoop@hadoop001 sbin]$ ./start-balancer.sh -thredshold 10.0
在凌晨可以使用该命令去做平衡操作
(定时每天)
调整平衡所使用的带宽,在hdfs-site.xml的文件内
dfs.datanode.balance.bandwidthPerSec 10m–>50m
3. 单个DN的多快磁盘的数据均衡
投产:生产上面上生产版本
(京东。美团,银行,p2p)
a.在投产前规划 这个DN机器上10块磁盘 2T标准 不做raid(让磁盘高可靠,但是降低磁盘空间)== 》20T
在DN的配置就配置多个磁盘
路径指向
<property>
<name>dfs.datanode.data.dir</name>
<value>/data01,/data02,/data03</value>
</property>
http://archive.cloudera.com/cdh5/cdh/5/hadoop-2.6.0-cdh5.16.2/
apache hadoop 3.x dfs.disk.balancer.enabled
apache hadoop 2.10 找不到
为什么用cdh,因为cdh2.6.0能使用这个磁盘的balancer到那时apache的2.X 没有这个功能
hdfs diskbalancer -execute hadoop001.plan.json 执行
hdfs diskbalancer -query hadoop001