TSF – Giải pháp IT toàn diện cho doanh nghiệp SMB | HCM

P17 - Cấu hình ZFS RAID 1 Proxmox và thay thế ổ đĩa bị lỗi

🚀 Proxmox VE P17 – Thiết Lập ZFS RAID và Thay Thế Ổ Đĩa Lỗi (Full Step-by-Step Guide)

Hệ thống lưu trữ ổn định là nền tảng của mọi nền tảng ảo hóa.

Trong bài hướng dẫn này, bạn sẽ học cách thiết lập ZFS RAID trên Proxmox VE 9 và thay thế ổ đĩa bị lỗi mà không làm mất dữ liệu. Bài viết bao gồm toàn bộ quy trình từ cấu hình RAID ban đầu đến quy trình thay disk, resilver và khôi phục bootloader.

Sau khi hoàn thành, bạn có thể tự tin vận hành hệ thống Proxmox với khả năng chịu lỗi và bảo vệ dữ liệu ở mức production.

Trong bài này bạn sẽ học:

  • 🧱 Cấu hình ZFS RAID khi cài đặt Proxmox

  • 💾 Theo dõi trạng thái ZFS bằng zpool statuszfs list

  • ❌ Xác định và offline ổ đĩa lỗi

  • 🔄 Thay thế ổ đĩa an toàn

  • ⚙ Khôi phục bootloader bằng Proxmox Boot Tool


🧪 LAB Environment

Server Proxmox có 2 hoặc nhiều ổ đĩa.

Disk 1, 2:

  • Chạy RAID chứa hệ điều hành Proxmox

  • Lưu trữ VM, file Backup, file ISO

Demo sử dụng chuẩn phân vùng: GPT


🧱 Step 1 – Set Serial cho DISK VM

Để mô phỏng RAID chính xác, cần đặt serial khác nhau cho từng ổ đĩa.

Chỉnh cấu hình VM:

 
nano /etc/pve/qemu-server/105.conf

Thêm dòng serial:

 
serial=AbcxyzDSK001 serial=AbcxyzDSK002

Việc này đảm bảo mỗi ổ đĩa có định danh riêng như ổ cứng vật lý thật.


💿 Step 2 – Cài OS với ZFS RAID 1

Lưu ý quan trọng:

  • GPT partition scheme

  • 2 Disk

  • ZFS RAID 1

Trong quá trình cài đặt Proxmox, chọn:

ZFS (RAID1)

Hệ thống sẽ tự tạo:

  • BIOS Boot partition

  • EFI partition

  • ZFS root partition


🖥 Step 3 – Setup VM trên Host và Chạy

Triển khai và chạy VM để xác nhận ZFS pool hoạt động bình thường.


❌ II – Mô Phỏng Disk Failure

Step 1 – Xác Định Ổ Đĩa Lỗi

Kiểm tra trạng thái pool:

 
zpool status

Ví dụ thông tin ổ lỗi:

  • ID: 14912614961185646598

  • Name: scsi-0QEMU_QEMU_HARDDISK_AbcxyzDSK001-part3

Offline ổ lỗi:

 
zpool offline rpool scsi-0QEMU_QEMU_HARDDISK_AbcxyzDSK001-part3

🔧 Step 2 – Shutdown Host và Thay Ổ Đĩa Lỗi

Nếu server không hỗ trợ hot-swap:

  • Shutdown Proxmox

  • Tháo ổ lỗi

  • Gắn ổ mới vào đúng vị trí

Nếu server hỗ trợ hot-swap:

  • Có thể thay trực tiếp

Trong demo (VM simulation), thêm disk mới và gán serial:

 
nano /etc/pve/qemu-server/105.conf

Thêm:

 
serial=AbcxyzDSK003

⚠ Lưu ý quan trọng:

Nếu Proxmox được cài bằng MBR (SeaBIOS):

  • Có thể lỗi boot

  • Boot bằng ổ còn lại

  • Backup toàn bộ VM/Data ra NFS/SMB/OneDrive/Physical Disk

  • Shutdown host

  • Gắn ổ mới

  • Cài lại Proxmox từ đầu với 2 disk

  • Mount storage và restore VM


🔍 Step 3 – Xác Định Ổ Đĩa Mới

Sau khi mount:

 
ls -l /dev/disk/by-id/

Ví dụ:

 
scsi-0QEMU_QEMU_HARDDISK_AbcxyzDSK003

Ổ mới: sda
Ổ hiện tại: sdb


📋 Step 4 – Copy Partition từ Ổ Cũ sang Ổ Mới

Trên GPT:

  • Partition 1 → BIOS Boot (1 MiB)

  • Partition 2 → EFI (FAT32, 512 MiB)

  • Partition 3 → ZFS root

Kiểm tra phân vùng:

 
lsblk /dev/sdb lsblk /dev/sda

Copy partition table:

 
sgdisk --replicate=/dev/sda /dev/sdb

Tạo:

  • sda1

  • sda2

  • sda3

⚠ Không copy dữ liệu ZFS từ sdb3 sang sda3.
ZFS sẽ tự rebuild.

Copy partition nhỏ nếu cần:

 
dd if=/dev/sdb1 of=/dev/sda1 bs=1M status=progress dd if=/dev/sdb2 of=/dev/sda2 bs=1M status=progress

Không copy sdb3.


🔄 Step 5 – Replace Disk trong Mirror

Giả sử disk lỗi:

 
/dev/disk/by-id/scsi-0QEMU_QEMU_HARDDISK_AbcxyzDSK001-part3

Thay disk:

 
zpool replace rpool <disk old> <disk new>

Ví dụ:

 
zpool replace rpool scsi-0QEMU_QEMU_HARDDISK_AbcxyzDSK001-part3 scsi-0QEMU_QEMU_HARDDISK_AbcxyzDSK003-part3

Theo dõi resilver:

 
zpool status -v

Chờ đến khi:

  • ONLINE

  • scan resilvered 100%

  • rpool mirror healthy


🗂 Step 6 – Mount Root Dataset để Chroot

Mount toàn bộ dataset:

 
zfs mount -a

Bind root:

 
mkdir -p /mnt mount --bind / /mnt

🧩 Step 7 – Mount EFI và Bind Filesystem

Mount EFI:

 
mkdir -p /mnt/boot/efi mount /dev/sda2 /mnt/boot/efi

Bind system:

 
mount --bind /dev /mnt/dev mount --bind /proc /mnt/proc mount --bind /sys /mnt/sys mount --bind /run /mnt/run

⚙ Step 8 – Chroot và Cài Bootloader

Chroot:

 
chroot /mnt /bin/bash

Format EFI đúng chuẩn Proxmox:

 
proxmox-boot-tool format /dev/sda

Refresh bootloader:

 
proxmox-boot-tool refresh

Kiểm tra EFI:

 
ls /boot/efi/EFI/proxmox

Nếu thấy file .efi → bootloader sẵn sàng.

Reboot:

 
reboot

📊 Theo Dõi Sức Khỏe ZFS

Kiểm tra định kỳ:

 
zpool status zfs list

ZFS pool khỏe mạnh sẽ hiển thị:

ONLINE


🔐 Best Practices cho Production

✔ Sử dụng ổ cứng enterprise
✔ Theo dõi SMART định kỳ
✔ Luôn có disk spare
✔ Test quy trình thay disk trước
✔ Dùng RAID 1 hoặc RAID 10 cho workload quan trọng
✔ Giám sát sự kiện resilver

ZFS có khả năng self-healing và kiểm tra toàn vẹn dữ liệu, nhưng giám sát chủ động vẫn là bắt buộc.


🎯 Kết Luận

Trong bài Proxmox VE P17 này, bạn đã:

  • Cài Proxmox với ZFS RAID 1

  • Mô phỏng disk failure

  • Xác định và offline disk lỗi

  • Thay disk an toàn

  • Rebuild ZFS mirror

  • Khôi phục bootloader bằng Proxmox Boot Tool

Hệ thống lưu trữ Proxmox của bạn giờ đã đạt mức resilient – redundant – production-ready.

ZFS RAID + Quy trình thay disk đúng chuẩn = Bảo vệ dữ liệu cấp độ doanh nghiệp.

Tham khảo thêm bài viết cùng chủ đề

P15 – Sao lưu và Khôi phục Máy Ảo Trên Proxmox

P15 – Sao lưu và Khôi phục Máy Ảo Trên Proxmox 🚀 Proxmox VE P15 – Backup và Restore Virtual Machines (Hướng dẫn Full Step-by-Step) Bảo vệ dữ liệu là một trong những trách nhiệm quan trọng nhất của bất kỳ System Administrator nào.Trong Proxmox VE, việc xây dựng chiến...

Read More