Logo

Personal Ops Runbook

Personal runbook covering infrastructure operations for Cloud, Kubernetes, OpenStack, and Ceph environments. Includes deployment and teardown procedures, node management, cluster monitoring setup, and incident response workflows compiled from day-to-day operational work. Intended strictly for personal reference — configurations and scripts are environment-specific and not guaranteed to work as-is elsewhere.

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:

  1. 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).
  2. 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.
  3. 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.
  4. Đặ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.
  5. 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.
  6. 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.