Kvm-Virtualization
‘virsh’ 如何確定(iscsi)單元名稱,它們可以更改嗎?
我有一個執行有 iSCSI 支持的儲存池的 kvm 主機:
virsh # pool-info mypool Name: mypool UUID: 913210f2-f8a0-4a56-b7bf-ef00b0080ee1 State: running Persistent: yes Autostart: yes Capacity: 2,00 TiB Allocation: 2,00 TiB Available: 0,00 B
該池目前只有一個卷(即 LUN):
virsh # vol-list mypool Name Path ----------------------------------------- unit:0:0:1 /dev/disk/by-path/ip-192.168.44.44:3260-iscsi-iqn.2016-08.iscsihost:volume-lun-1
名稱或卷是如何確定的?獎勵問題:iscsi 目標使用“tgtd”。似乎卷名不受設置 LUN 的“vendor_id”或“product_id”的影響。有沒有辦法獲得更漂亮的名稱(理想情況下,LUN 是為特定 VM 創建的,並且該名稱顯示在 virsh 的 vol-list 或 virt-manager GUI 中)?
看起來它是硬編碼的,看起來 iscsi 和 scsi 後端共享一些程式碼。
scsi 儲存後端(re:設備名稱分配單元:x:x:x):https ://github.com/libvirt/libvirt/blob/master/src/storage/storage_backend_scsi.c#L197
儲存後端(re:iSCSI 使用單元:):https ://github.com/libvirt/libvirt/blob/master/src/storage/storage_driver.c#L3364
我不明白所有的程式碼,所以這裡是其餘的儲存內容:https ://github.com/libvirt/libvirt/tree/master/src/storage
您是否嘗試過從 libvirt 將 iSCSI 目標作為正常文件(作為“目錄”池)安裝和訪問?也許他們不會有模棱兩可的名字。https://libvirt.org/storage.html#StorageBackendDir
我不使用 iSCSI,但我使用 ZFS 並將其配置如下:
<pool type='dir'> <name>pool2</name> <uuid>e725f5e4-3f9b-44a9-a47c-2b04cb154636</uuid> <capacity unit='bytes'>0</capacity> <allocation unit='bytes'>0</allocation> <available unit='bytes'>0</available> <source> </source> <target> <path>/dev/zvol/pool2</path> </target> </pool>
所以設備名稱看起來像這樣
root@igor:~# virsh vol-list pool2 Name Path ------------------------------------------------------------------------------ echo_root /dev/zvol/pool2/echo_root echo_root-part1 /dev/zvol/pool2/echo_root-part1 echo_root-part2 /dev/zvol/pool2/echo_root-part2 echo_root-part5 /dev/zvol/pool2/echo_root-part5 landscape_root /dev/zvol/pool2/landscape_root landscape_root-part1 /dev/zvol/pool2/landscape_root-part1 landscape_root-part2 /dev/zvol/pool2/landscape_root-part2 landscape_root-part5 /dev/zvol/pool2/landscape_root-part5 mail_root /dev/zvol/pool2/mail_root mail_root-part1 /dev/zvol/pool2/mail_root-part1 mail_root-part2 /dev/zvol/pool2/mail_root-part2 mail_root-part5 /dev/zvol/pool2/mail_root-part5 spectre_root /dev/zvol/pool2/spectre_root spectre_root-part1 /dev/zvol/pool2/spectre_root-part1 spectre_root-part2 /dev/zvol/pool2/spectre_root-part2 swap /dev/zvol/pool2/swap test /dev/zvol/pool2/test www1_root /dev/zvol/pool2/www1_root www1_root-part1 /dev/zvol/pool2/www1_root-part1 www1_root-part2 /dev/zvol/pool2/www1_root-part2 www1_root-part5 /dev/zvol/pool2/www1_root-part5