k8s使用自建nfs做持久化无法控制磁盘使用大小问题处理

如题,创建的pvc并无法控制用户实际使用多少nfs存储,使用xfs_quota来对用户nfs目录做磁盘配额管理

1、需使用xfs文件系统

2、/etc/fstab挂载中开启prjquota(项目配额)

具体操作如下

powershell 复制代码
xfs_quota  使用说明

/etc/fstab挂载磁盘
UUID="bd49b6be-1439-43f7-a6a6-dbec452dd236"     /testxfs        xfs     defaults,prjquota       0 0

#分配项目ID和目录  (一个路径一个ID)
echo "100:/testxfs/3G" >>/etc/projects
echo "3G:100" >>/etc/projid

xfs_quota -x -c 'project -s 3G' /testxfs
Setting up project 3G (path /testxfs/3G)...
Processed 1 (/etc/projects and cmdline) paths for project 3G with recursion depth infinite (-1).

#设置配额为3G
xfs_quota -x -c 'limit -p bhard=3g 3G' /testxfs


xfs_quota -x -c 'report -h' /testxfs
Project quota on /testxfs (/dev/mapper/nasvg-test)
                        Blocks
Project ID   Used   Soft   Hard Warn/Grace
---------- ---------------------------------
#0             7G      0      0  00 [------]
3G              0      0     3G  00 [------]

===========================================
[root@node01 3G]# dd if=/dev/zero of=3g_file bs=1G count=3
记录了3+0 的读入
记录了3+0 的写出
3221225472字节(3.2 GB,3.0 GiB)已复制,3.59724 s,895 MB/s
[root@node01 3G]# dd if=/dev/zero of=1g_file bs=1G count=3
dd: 打开'1g_file' 失败: 超出磁盘限额

[root@node01 3G]# df -h | grep xfs
/dev/mapper/nasvg-test                                                                               8.0G  3.1G  5.0G   39% /testxfs
[root@node01 3G]# pwd
/testxfs/3G

xfs_quota -x -c 'report -h' /testxfs
Project quota on /testxfs (/dev/mapper/nasvg-test)
                        Blocks
Project ID   Used   Soft   Hard Warn/Grace
---------- ---------------------------------
#0              0      0      0  00 [------]
3G             3G      0     3G  00 [------]
相关推荐
阿里云云原生1 小时前
「迁移急救包」全云平台无缝迁移云效实操手册
云原生
吃不胖没烦恼1 小时前
Docker 初学者需要了解的几个知识点 (五):建容器需要进一步了解的概念
运维·docker·容器
kfepiza2 小时前
安装 docker compose v2版 笔记250731
docker·容器
东风微鸣2 小时前
知识库与AI:程序员的进阶之路
docker·云原生·kubernetes·可观察性
白山云北诗4 小时前
云原生环境 DDoS 防护:容器化架构下的流量管控与弹性应对
云原生·架构·web·ddos·网站安全·网络攻击·安全防护
再看扣你眼9 小时前
Kubernetes 中 ConfigMap 与 Secret 的深度解析
云原生·容器·kubernetes
2301_7816686111 小时前
微服务 01
微服务·云原生·架构
liux352812 小时前
Helm在Kubernetes中的应用部署指南与案例解析
云原生·容器·kubernetes
AscendKing13 小时前
在 CentOS 系统上安装 Docker
云原生·安装 docker·centosdocker
JavaLearnerZGQ15 小时前
Docker部署Nacos
数据库·docker·容器