ZFS NFS¶
ZFS内置NFS功能为企业级应用提供了方便的共享存储,在很多应用领域有广泛应用:
Machine Learning Atlas 大量的训练共享数据
医疗影像行业存储大量的医疗图片
...
备注
本文实现ZFS NFS服务配置,为后续构建 ZFS架构 的企业应用提供基础
ZFS管理准备¶
在 ZFS管理准备 划分了3个分区,其中 zpool-data
用于数据存储并构建 NFS 共享给 kind(本地docker模拟k8s集群) 部署 在Kubernetes中部署NFS
Model: APPLE SSD AP0512R (nvme)
Disk /dev/nvme0n1: 500GB
Sector size (logical/physical): 4096B/4096B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name Flags
1 24.6kB 524MB 524MB iBootSystemContainer
2 524MB 149GB 148GB
3 149GB 151GB 2500MB
4 151GB 152GB 500MB fat32 boot, esp
5 152GB 181GB 29.0GB ext4
7 181GB 231GB 50.2GB zpool-data
8 231GB 381GB 150GB zpool-libvirt
9 381GB 495GB 114GB zpool-docker
6 495GB 500GB 5369MB RecoveryOSContainer
创建 zpool 和 zfs¶
对
/dev/nvme0n1p7
构建 zpool:
# 在NVMe 分区7创建zpool-data,挂载在 /data
sudo zpool create -f zpool-data -m /data /dev/nvme0n1p7
创建ZFS文件系统
docs
:
# 创建zpool-data存储池中的ZFS文件系统docs
zfs create zpool-data/docs
# ZFS文件系统docs开启压缩
zfs set compression=lz4 zpool-data/docs
准备
docs
数据(将我的文档目录迁移到docs
ZFS存储中):
sudo chown huatai:staff /data/docs
(cd /home/huatai/docs && tar cf - .)|(cd /data/docs && tar xf -)
ZFS共享NFS存储数据集¶
ZFS的NFS服务也是通过Linux nfs服务 来实现,所以也需要 arch linux配置NFS服务 相同的软件包安装:
sudo pacman -S nfs-utils