Computer >> Máy Tính >  >> Phần mềm >> Máy ảo

Truy cập Ổ đĩa flash USB từ VMWare ESXi

Đôi khi bạn có thể cần kết nối trực tiếp ổ đĩa flash USB bên ngoài (thẻ nhớ) với máy chủ VMWare ESXi của mình. Ví dụ:bạn có thể cần nó để sao chép một hình ảnh máy ảo để gửi nó đến một văn phòng từ xa (nếu kênh WAN giữa các văn phòng được tải chậm hoặc nhiều), để sao lưu các tệp VM vào phương tiện USB bên ngoài, để sao chép tệp ISO hoặc Hình ảnh máy ảo đến máy chủ ESXi (tốt hơn là không làm quá tải mạng LAN của bạn). Trong bài viết này, chúng tôi sẽ hướng dẫn cách kết nối ổ USB flash / thẻ nhớ với máy chủ ESXi làm kho dữ liệu VMFS hoặc sao chép trực tiếp tệp từ phân vùng FAT32 / NTFS.

Cách kết nối Ổ USB bên ngoài làm Kho dữ liệu VMFS trong VMWare ESXi?

Giả sử bạn muốn kết nối ổ USB với máy chủ ESXi và tạo kho dữ liệu VMFS trên đó để sao chép / di chuyển tệp và hình ảnh của máy ảo một cách thuận tiện.

Chính thức, VMWare không hỗ trợ ổ USB bên ngoài làm kho dữ liệu VMFS. Tuy nhiên, nó hoạt động và bạn có thể sử dụng nó. Ngoài ra, ESXi không hỗ trợ thiết bị USB lớn hơn 2 TB.

Trong VMWare ESXi 6.5 trở lên, phương thức kết nối thiết bị USB với máy chủ đã được thay đổi. Trước đó, một số trình điều khiển (xhci, ehci-hcd, usb-uhci, usb-storage) đã được sử dụng. Sau đó, một trình điều khiển USB duy nhất ( vmkusb ) đã thay thế tất cả chúng.

  1. Kết nối với bảng điều khiển ESXi qua SSH;
  2. Dừng Trình phân xử USB . Dịch vụ được sử dụng để chuyển thiết bị USB từ máy chủ ESXi sang máy ảo (USB Passthrough):# /etc/init.d/usbarbitrator stop Nếu bạn không muốn trình phân xử USB khởi động sau khi máy chủ khởi động lại, hãy chạy lệnh:# chkconfig usbarbitrator off
  3. Kết nối ổ USB trống với máy chủ ESXi của bạn;
  4. Bạn có thể xác định tên của ổ USB trong nhật ký: /var/log/vmkernel.log hoặc sử dụng / dev / disks :# ls /dev/disks/ Đĩa USB thường được đặt tên là mpx.vmhbaX hoặc naa.X . Truy cập Ổ đĩa flash USB từ VMWare ESXi
  5. Tạo bảng phân vùng GPT (GUID) trên ổ USB của bạn:# partedUtil mklabel /dev/disks/naa.5000000000000001 gpt
  6. Sau đó, tạo phân vùng trên ổ đĩa của bạn theo cách thủ công. Để làm điều đó, hãy chỉ định khu vực đầu tiên và khu vực cuối cùng trên ổ đĩa. Liệt kê thông tin về các ngành đĩa: # partedUtil getptbl /dev/disks/naa.5000000000000001 Truy cập Ổ đĩa flash USB từ VMWare ESXi
  7. Khu vực đầu tiên luôn là 2048 . Kích thước của khu vực cuối cùng được tính toán dựa trên đầu ra getptbl. Trong ví dụ của tôi, nó được tính như sau:121597 * 255 * 63 -1 = 1953455804
    Nếu có một phân vùng trên ổ đĩa, bạn có thể xóa nó:# partedUtil delete /dev/disks/naa.5000000000000001 1
  8. Tạo phân vùng VMFS (GUID của phân vùng như vậy luôn là AA31E02A400F11DB9590000C2911D1B8):# partedUtil setptbl /dev/disks/naa.5000000000000001 gpt "1 2048 1953455804 AA31E02A400F11DB9590000C2911D1B8 0"
  9. Sau đó, bạn có thể định dạng phân vùng bằng VMFS6:# vmkfstools -C vmfs6 -S USB-HDD-DSDatastore /dev/disks/naa.5000000000000001:1
  10. Mở VMWare vSphere Client đồ họa và đi tới Kho lưu trữ . Ổ USB của bạn sẽ xuất hiện trong danh sách các kho dữ liệu có sẵn.

Truy cập Ổ đĩa flash USB từ VMWare ESXi

Làm cách nào để sao chép trực tiếp tệp từ ổ USB (NTFS / FAT32) sang ESXi?

Nếu bạn không muốn thay đổi hệ thống tệp trên ổ USB của mình thành VMFS (có một mẹo nhỏ để truy cập VMFS từ Windows), bạn có thể truy cập tệp trên phân vùng có định dạng NTFS hoặc FAT32 từ bảng điều khiển ESXi và sao chép tệp bạn muốn .

Tắt dịch vụ trọng tài USB trước khi kết nối ổ USB với máy chủ ESXi.

Để truy cập các phân vùng có định dạng FAT32 từ ESXi, bạn có thể sử dụng mcopy dụng cụ. Để truy cập phân vùng NTFS trên ổ USB, hãy sử dụng ntfscat . Hệ thống tệp Ext3 cũng được hỗ trợ ban đầu. Các hạn chế cơ bản là:

  • FAT32 Ext3 phân vùng có sẵn để đọc và ghi;
  • NTFS ổ đĩa ở chế độ chỉ đọc (có nghĩa là bạn có thể sao chép dữ liệu từ ổ USB NTFS sang máy chủ ESXi, nhưng không thể ngược lại).

Để sao chép tệp từ thiết bị USB FAT32 sang ESXi, hãy sử dụng lệnh sau:

# /bin/mcopy -i "/dev/disks/naa.5000000000000001:2" ::/some.iso /vmfs/volumes/12345678-ddd654321-4321-aaaabbbb2222/iso/some.iso

ở đâu /some.iso là một đường dẫn đến một tệp trên ổ USB của bạn. Đường dẫn thứ hai hiển thị nơi sao chép tệp trên máy chủ ESXi (ví dụ:trực tiếp vào kho dữ liệu VMFS).

Để sao chép lại một tệp từ ESXi sang USB, chỉ cần hoán đổi các đường dẫn trong lệnh.

Vấn đề chính của FAT32 là nó không hỗ trợ các tệp trên 4 GB. Vì vậy, việc sao chép các tập tin VMDK của máy ảo là khá khó khăn. Theo quy tắc, bạn có thể chia tệp nguồn thành một số phần trước khi sao chép (ví dụ:3 GB):

# split -b 3221225472 /vmfs/volumes/xx/vm1/vm1.vmdk

Sau đó, bạn có thể sao chép tất cả các phần vào ổ USB và kết hợp chúng trên một máy chủ ESXi đích:

# cat vm1* > vm1.vmdk

Để sao chép tệp từ ổ USB có định dạng NTFS sang máy chủ ESXi, lệnh sau được sử dụng:

# /bin/ntfscat -f /dev/disks/naa.5000000000000001:2" some.iso > /vmfs/volumes/12345678-ddd654321-4321-aaaabbbb2222/iso/some.iso

Bạn chỉ có thể sao chép tệp sang ESXi, không thể quay lại. Không thể ghi NTFS bằng ntfscat.