配额管理(quota)
目录配额
目录配额计算的是目录下所有文件的总个数。如果配额是1,则表示空白目录
hdfs dfsadmin -setQuota 1 data //设置data的配额为1,那么data下面就不能有目录,这是一个空的目录
image.png
空间配额
hdfs dfs -mkdir -p data //创建data目录
hdfs dfsadmin -setSpaceQuota 3 data //设置空间的配额为3B
echo a >> a.txt //创建a.txt文件
hdfs dfs -put a.txt data //报错 需要的配额是384M,你分配的是3B 解决方法是设置大于384M的配额,或者清空配额使用clrSpaceQuota
//put: The DiskSpace quota of /user/hadoop/data2 is exceeded: quota = 3 B = 3 B but diskspace consumed = 402653184 B = 384 MB
快照管理
迅速对文件(夹)进行备份。不产生新文件,使用差值存储。
默认是禁用快照,先启用快照。
命令
hdfs dfsadmin -allowSnapshot data //启用快照
hdfs dfsadmin -disallowSnapshot data //不启用快照
hdfs dfs -createSnapshot data ss1 //创建快照
hdfs dfs -renameSnapshot data ss1 ss2 //重命名快照
hdfs dfs -deleteSnapshot data ss1 //删除快照
节点的服役和退役
黑白名单的组合
image.png
白名单由dfs.include来控制,黑名单由dfs.hosts.exclude
添加新节点(hdfs)
- 在dfs.include文件中包含新节点名称,该文件在nn的本地目录中
白名单
nn1:/soft/hadoop/etc/dfs.include.txt
dn1
dn2
dn3
dn4 - 在hdfs-site.xml文件中添加属性
<property>
<name>dfs.hosts</name>
<value>/soft/hadoop/etc/dfs.include.txt</value>
</property>
- 在nn上刷新节点
hdfs dfsadmin -refreshNodes
- 在workers文件中添加新节点ip(主机名)
dn1
dn2
dn3
dn4 (新添加的节点) - 单独启动新的节点中的datanode
hdfs --daemon start datanode
退役节点(hdfs)
- 添加退役节点的ip到黑名单
/soft/hadoop/etc/dfs.hosts.exclude.txt
dn4 - 配置hdfs-site.xml
<property>
<name>dfs.hosts.exclude</name>
<value>/soft/hadoop/etc/dfs.hosts.exclude.txt</value>
</property>
- 在nn上刷新节点
hdfs dfsadmin -refreshNodes
- 进入webUI查看,节点的状态在Decommission In Progress(正在解除)
- 当所有退役节点的状态都为Decommissioned的时候,表明所有的数据转移工作都已经完成。
- 从白名单上删除节点,并且刷新节点
dfs.include.txt
hdfs dfsadmin -refreshNodes
- 从workers中删除退役节点
同样的yarn的节点的服役和退役也是类似的操作
添加新节点(yarn)
- 在dfs.include文件中包含新节点名称,该文件在nn的本地目录中
白名单
nn1:/soft/hadoop/etc/dfs.include.txt
dn1
dn2
dn3
dn4 - 在yarn-site.xml文件中添加属性
<property>
<name>yarn.resourcemanager.nodes.include-path</name>
<value>/soft/hadoop/etc/dfs.include.txt</value>
</property>
- 在nn上刷新节点
yarn rmadmin -refreshNodes
- 在workers文件中添加新节点ip(主机名)
dn1
dn2
dn3
dn4 (新添加的节点) - 单独启动新的节点中的nodemanager
yarn --daemon start nodemanager
退役节点(yarn)
- 添加退役节点的ip到黑名单
/soft/hadoop/etc/dfs.hosts.exclude.txt
dn4 - 配置yarn-site.xml
<property>
<name>yarn.resourcemanager.nodes.exclude-path</name>
<value>/soft/hadoop/etc/dfs.hosts.exclude.txt</value>
</property>
-
在nn上刷新节点
yarn rmadmin -refreshNodes
-
进入webUI查看,节点的状态在Decommission In Progress(正在解除)
-
当所有退役节点的状态都为Decommissioned的时候,表明所有的数据转移工作都已经完成。
-
从白名单上删除节点,并且刷新节点
dfs.include.txt
yarn rmadmin -refreshNodes
-
从workers中删除退役节点
网友评论