Yêu cầu VM cho lab chức năng (chuẩn bị trước, chưa setup)
Hypervisor nào cũng được: Proxmox, VMware Workstation/ESXi, KVM/libvirt, VirtualBox. Tổng tài nguyên host cần khoảng 20 vCPU (oversubscribe thoải mái), 28–32 GB RAM, ~350 GB disk trống.
| VM | Vai trò | vCPU | RAM | Disk | IPaddr |
|---|---|---|---|---|---|
mds01 |
MGS + MDS | 4 | 8 GB | OS 40 GB + 1 disk 5 GB (MGT) + 1 disk 20 GB (MDT) | 10.237.7.31 |
oss01 |
OSS | 4 | 8 GB | OS 40 GB + 2 disk 50 GB (OST0, OST1) | 10.237.7.32 |
oss02 |
OSS | 4 | 8 GB | OS 40 GB + 2 disk 50 GB (OST2, OST3) | 10.237.7.33 |
client-a1 |
Client tenant A | 2 | 4 GB | OS 40 GB | 10.237.7.34 |
client-b1 |
Client tenant B | 2 | 4 GB | OS 40 GB | 10.237.7.35 |
Vài điểm quan trọng khi tạo VM, chuẩn bị sai mấy cái này là lúc setup sẽ vướng:
- OS: Rocky Linux > 8.x hoặc Amalinux Linux > 8.x cho cả 5 máy. Đây là lựa chọn an toàn nhất vì Lustre LTS 2.15.x có sẵn gói binary khớp kernel EL8. Đừng dùng Ubuntu hay Rocky 9 cho lần đầu — được nhưng phiền hơn. Sau khi cài OS, khoan update kernel (kernel phải khớp chính xác với bản Lustre server, mình sẽ pin version khi setup).
- Disk MGT/MDT/OST phải là disk ảo riêng, thô, chưa format — đừng partition, đừng LVM, đừng gắn vào fstab. Lustre sẽ format trực tiếp lên đó. 2 OST mỗi OSS là cố ý: để lab được stripe file qua nhiều OST và tạo OST pool cho multi-tenant.
- Mạng: mỗi VM 2 NIC. NIC1 nối mạng NAT/bridge bình thường (SSH, tải gói). NIC2 nối một mạng nội bộ riêng (host-only / internal network, ví dụ subnet
10.10.10.0/24) — đây sẽ là mạng LNet. Tách riêng như vậy để mô phỏng đúng thực tế và để bạn thấy rõ khái niệm NID (10.10.10.x@tcp0) — thứ mà toàn bộ config nodemap/multi-tenant xoay quanh. - Đặt IP tĩnh cho NIC2 ngay từ đầu và ghi lại (ví dụ mds01=10.10.10.11, oss01=.21, oss02=.22, client-a1=.31, client-b1=.41). Nodemap phân tenant theo dải NID nên client A và client B nên nằm ở dải IP tách bạch như trên.
- Tắt Secure Boot trên VM (module kernel Lustre không ký), và chuẩn bị tinh thần đặt SELinux sang permissive trên các node server.
- Hai client thuộc hai "tenant" — nếu hypervisor cho phép, sau này bạn có thể thêm
client-a2,client-b2để test squash/UID mapping chéo, nhưng 2 client là đủ cho vòng đầu.
Lab này sẽ demo được đầy đủ: mount/stripe, fileset + nodemap per tenant, root squash, project quota, và cả NRS TBF (giới hạn theo NID vẫn hoạt động trên tcp). Thứ duy nhất nó không demo được là con số hiệu năng và phần RDMA/o2ib — đúng như kế hoạch hai giai đoạn của bạn.