๐งฑ Proxmox:ZFS ่ LVM-Thin ็ๆง่ฝๆฏ่ผ、ๅฟซ็
ง、ๅไปฝ่ๅฏฆๆฐๆกไพ
ZFS ่ LVM-Thin ๆฏ Proxmox ๆๅธธ่ฆ็ๅ
ฉๅคงๅฒๅญๆถๆง,ๅ่ช้ฉ็จๆผไธๅๆ
ๅข。ๆฌ็ฏๅพๆง่ฝ、ๅฟซ็
ง、ๅไปฝ、่ณๆบ้ๆฑ、่ณๆๅฎๅ
จๆง่ๅฏฆๆฐๆกไพๅฎๆดๅๆ,ๅๅฉไฝ ้ธๆๆ้ฉๅ Proxmox ็ๅฒๅญๅพ็ซฏ。
๐ ไธ、ZFS ่ LVM-Thin ๅบๆฌๆฆๅฟตๅฟซ้ๆฏ่ผ
| ้
็ฎ | ZFS | LVM-Thin |
| ้กๅ | ๅ
้ฒๆชๆก็ณป็ตฑ(ๆดๅ RAID / Volume / FS) | ๅณ็ตฑ LVM + Thin Pool |
| ๅฟซ็
ง | ๅ็、ๅฟซ้、ๆฏๆด Clone | ๆฏๆด,ไฝๅ่ฝ่ผๅผฑ |
| ้ฉ็จๅ ดๆฏ | ้ซๅฏ้ 、้ซๅฎน้、่ชๅไฟฎๅพฉ、NAS ็ดๆๅ | ้ซๆ็、ไฝๅปถ้ฒ、่ๆฌๆฉๅคง้้จ็ฝฒ |
| ่จๆถ้ซ้ๆฑ | ้ซ,้่ฆ ARC(ๅปบ่ญฐ 16GB+) | ไฝ,2–4GB ไธปๆฉไน่ฝ็จ |
| ่ณๆๅฎๆดๆง | ๆๅผท,ๆฏๆดๆ ก้ฉ่่ชๆไฟฎๅพฉ | ไพ็กฌ็ข่ช่บซ่ฝๅ,็ก้กๅคไฟ่ญท |
| RAID ๅ่ฝ | ๅ
งๅปบ RAIDZ1/2/3、Mirror、Striped | ้้ ็กฌ้ซ RAID ๆ mdadm |
---
๐ ไบ、ZFS:็น่ฒ、ๅช้ป่้ๅถ
✔ ๅช้ป
- ่ณๆๅฎๆดๆงๆๅผท(End-to-End ๆ ก้ฉ)
- Copy-on-Write(CoW)ๅฟซ็
งๅนพไนๅณๆ
- ๆฏๆด ZFS Send/Receive,ๅฏ่ TrueNAS / PBS ๆดๅ
- ๅฃ็ธฎ(lz4)ๅฏๆๅๆ่ฝ、้ไฝ็ฉบ้ไฝฟ็จ
- ๆฏๆด่ชๅไฟฎๅพฉ(Scrub)้ฟๅ
Silent Data Corruption
✘ ้ๅถ
- ไฝ็จ่จๆถ้ซๆฅต้ซ(ARC ๅปบ่ญฐ่ณๅฐ 16GB+)
- ไธๅปบ่ญฐๅฏฆ้ซ RAID ๅก(ZFS ่ฆ็ด้็ฃ็ข)
- ๅค Disk ็ RAIDZ ๆดๅฎนไธๆ
---
๐ง Proxmox ๅปบ็ซ ZFS Pool(Mirror ็ฏไพ)
zpool create tank mirror /dev/sda /dev/sdb
ๅ็จๅฃ็ธฎ:
zfs set compression=lz4 tank
ๆฅ็็ๆ
:
zpool status
zfs list
---
๐ ไธ、LVM-Thin:็น่ฒ、ๅช้ป่้ๅถ
✔ ๅช้ป
- ๆ่ฝๆฅตไฝณ,ๅปถ้ฒๆฏ ZFS ไฝ
- ้ฉๅๅคง่ฆๆจก VM ้จ็ฝฒ(Thin Provisioning)
- ่ณๆบ้ๆฑไฝ,4GB RAM ไน่ฝ่ท
- ๆด้ฉๅไผๆฅญ็กฌ้ซ RAID(ๅฐคๅ
ถ RAID10)
- ๆดๅ
Volume Group ๆด็ฐกๅฎ
✘ ็ผบ้ป
- ็ก่ณๆๆ ก้ฉ,ไพ้ ็กฌ็ข่ช่บซไฟ่ญท่ฝๅ
- ๅฟซ็
ง็บ CoW,ไฝๅ่ฝไธๅฆ ZFS ๅฎๆด
- ็ก Send/Receive,็กๆณๅ ZFS ้ฃๆจฃ่ค่ฃฝ
---
๐ง ๅปบ็ซ LVM-Thin Pool(็ฏไพ)
pvcreate /dev/sda
vgcreate pve-vg /dev/sda
lvcreate -L 500G -T pve-vg/pve-thin
ๆฅ็:
lvs -a
vgs
pvs
---
๐ ๅ、ๆง่ฝๆฏ่ผ:ๅปถ้ฒ、IOPS、ๅๅ้
| ้
็ฎ | ZFS(lz4) | LVM-Thin |
| ๅปถ้ฒ Latency | ่ผ้ซ(ๅคๅฑค CoW) | ไฝ(ๆฅ่ฟ่ฃธ็กฌ็ข) |
| ่ฎๅ IOPS | ไธญ็ญ,ๅ ARC ๅฝฑ้ฟ | ้ซ |
| ๅฏซๅ
ฅ IOPS | ไธญ็ญ(้้กๅค ZIL/SLOG ๆไฝณๅ) | ้ซ |
| ๅๅ้ | ้ซ,ๅฐคๅ
ถๅฃ็ธฎๅฏๆๅๆๆ้ๅบฆ | ้ซ |
| ๆไฝณ็จ้ | NAS、VM ้่ฆ่ณๆ、PBS | ๅคง้ VM、Database、ๅคง้ IO ๅฏซๅ
ฅ |
๐ **็ฐกๅฎ็ต่ซ:ๆ่ฝไปฅ LVM-Thin ่ด;่ณๆๅฎๅ
จๆง ZFS ๅฑ
ๅ 。**
---
๐ ไบ、ๅฟซ็
ง่ Clone ๅ่ฝๆฏ่ผ
| ๅ่ฝ | ZFS | LVM-Thin |
| ๅฟซ็
ง้ๅบฆ | ๆฅตๅฟซ,0.1 ็ง | ๅฟซ,ไฝ่ผ ZFS ๆ
ข |
| ๅฟซ็
งๆธ้ | ๅคง้ๅฟซ็
งไนๆฒๅ้ก | ๅฟซ็
ง่ถๅคๆง่ฝ่ถๅทฎ |
| Clone | ๆฏๆด | ๆฏๆด(ไฝ่ผๆ้) |
| ๅๆปพ | ๅผทๅคง、ๅฎๆด、ๅฏ่ชไฟฎๅพฉ | ๅฏ็จ,ไฝๆด้ซๆฉๅถ่ผๅผฑ |
๐ ่ฅไฝ ๅธธ็จ VM ๅฟซ็
ง、Clone,ๅคงๅ้็ผๆธฌ่ฉฆ็ฐๅข → **ZFS ๆด้ฉๅ。**
---
๐ ๅ
ญ、ๅไปฝ:ZFS Send/Receive vs LVM
๐ฆ ZFS Send/Receive(ๆๅคงๅชๅข)
ๅฏ่ทจไธปๆฉๅๆญฅๅฎๆด filesystem,้ฉ็จๆผ:
- Proxmox Node → ๅฆไธๅฐ ZFS NAS
- Proxmox Node → PBS(ZFS backend)
- ZFS → ZFS ๅไปฝ่็ฝ้ฃๅพฉๅ
็ฏไพ:
zfs send tank/vm-100-disk-1@snap1 | ssh node2 zfs receive backup/tank
๐ฅ LVM-Thin ๅไปฝๆนๅผ
- Proxmox Backup Server(ๆจ่ฆ)
- vzdump
- rsync / dd / ๅข้ๅญๆพ
ไธๅ
ทๅ ZFS ็ Send/Receive ๅ็ญ่ฝๅ。
---
๐ ไธ、ๅฏฆๆฐๆกไพ:ไธๅๅ ดๆฏๅฆไฝ้ธๆ?
๐ ๆกไพ 1:ๅฎถๅบญๅฏฆ้ฉๅฎค + PBS + TrueNAS
๐ **้ธๆ ZFS**
็็ฑ:
- ZFS ๅฏไปฅ็ดๆฅ Send/Receive
- ๅผทๅ่ณๆๅฎๆดๆง
- ๅฟซ็
งๅคง้ไฝฟ็จไธๆๆๅฎๆ่ฝ
๐ ๆกไพ 2:่ทๅคง้ VM ็ Node(ไผๆฅญ)
๐ **้ธๆ LVM-Thin + RAID10**
็็ฑ:
- Latency ๆไฝ
- ๅฏซๅ
ฅ IOPS ๆฅต้ซ
- ๆด้ฉๅ DB / ้ซ I/O ็ณป็ตฑ
๐ ๆกไพ 3:่จๆถ้ซ่ผๅฐ(16GB ไปฅไธ)
๐ **LVM-Thin**
ZFS ๆๅๆๅคง้ RAM,ไธๅปบ่ญฐ。
๐ ๆกไพ 4:ๅฎๅ
จๆงๆฏๆง่ฝ้่ฆ(ๆฟๅบๆจๆก、็ฃๆง、้่)
๐ **ZFS(Mirror)**
็็ฑ:
- ้ซๅฏ้
- ่ชๅไฟฎๅพฉ
- Snap + Send/Receive ่ถ
ๅผท
---
๐ ๅ
ซ、Proxmox ๅฎๆนๅปบ่ญฐ(ๆดๅๆง)
Proxmox File System ๅฎๆนๅปบ่ญฐๅฆไธ:
| ็จ้ | ๅปบ่ญฐ |
| ไธ่ฌ็จ้ | LVM-Thin |
| ้ซๅฎๅ
จๆง | ZFS |
| ไฝ่จๆถ้ซไธปๆฉ | LVM-Thin |
| ๆดๅ NAS / PBS | ZFS |
| ๅคๅฟซ็
งๅคง้ๅตๅปบ | ZFS |
---
๐ ๅปถไผธ้ฑ่ฎ
— WWFandy・Proxmox ๅฒๅญๆ่ก็ญ่จ
ๆฒๆ็่จ:
ๅผต่ฒผ็่จ