Bài viết này mình sẽ hướng dẫn cách sử dụng ổ đĩa USB gắn ngoài để làm datastore chứa dữ liệu máy ảo trên máy chủ ESXi. Mục đích nhằm cung cấp thêm nhiều không gian ổ cứng cho ESXi.
Thao tác theo các bước dưới đây để tạo VMFS datastore từ ổ đĩa USB trên ESXi 7.0
1. Kích hoạt truy cập SSH
Xem lại bài viết này để biết cách kích hoạt SSH trên ESXi
2. Tắt tính năng passthrough cho ổ đĩa USB
Mặc định trên ESXi, mọi ổ đĩa USB cắm vào máy chủ sẽ được tự động kích hoạt tính năng passthrough cho máy ảo. Do đó, mình cần phải tắt tính năng passthrough cho ổ đĩa USB muốn sử dụng làm VMFS datastore.
Đăng nhập SSH vào máy chủ ESXi vào kiểm tra danh sách thiết bị usb
esxcli hardware usb passthrough device list
Ghi lại thông số Bus, Dev, VendorId, ProductId của ổ đĩa USB để sử dụng trong lệnh dưới đây nhằm tắt chức năng passthrough.
esxcli hardware usb passthrough device disable -d 1:3:bc2:5032
Kiểm tra lại danh sách một lần nữa, sẽ thấy thông số Enabled của ổ đĩa USB đã chuyển thành False.
3. Xác định tên mã của ổ đĩa USB
Tiếp theo, cần phải xác định tên mã của ổ đĩa USB, được đặt theo định dạng mpx.vmhbaX:CX:TX:LX
cuả ESXi.
Gõ lệnh sau để xem danh sách các ổ cứng
vdq -q
Có thể xác định được ngay USB mình vừa cắm vào có mã Device Identifier là mpx.vmhba32:C0:T0:L0
, vì cái đầu tiên là NVMe SSD gắn trong máy.
4. Tạo VMFS datastore từ ổ đĩa USB
Sử dụng lệnh sau để thiết lập phân vùng cho ổ đĩa USB, và tạo VFMS datastore. Bạn cần sửa lại mục DEVICE_PATH cho tương ứng với tên mã của ổ USB đã xác định ở bước 3.
DEVICE_PATH="/vmfs/devices/disks/mpx.vmhba32:C0:T0:L0"
partedUtil mklabel ${DEVICE_PATH} msdos
END_SECTOR=$(eval expr $(partedUtil getptbl ${DEVICE_PATH} | tail -1 | awk '{print $1 " \* " $2 " \* " $3}') - 1)
partedUtil "setptbl" "${DEVICE_PATH}" "gpt" "1 2048 ${END_SECTOR} AA31E02A400F11DB9590000C2911D1B8 0"
vmkfstools -C vmfs6 -b 1m -S USB-Data ${DEVICE_PATH}:1
5. Kiểm tra Datastore trên ESXi
Nếu thực hiện trơn tru, quay lại trang quản lý của ESXi, bạn sẽ thấy xuất hiện thêm 1 datastore với tên gọi USB-Data.