Назад | Перейти на главную страницу

Как надежно сопоставить диски vSphere <-> устройства Linux

Задача под рукой

После добавления виртуального диска к виртуальной машине Linux в vSphere 5 нам необходимо идентифицировать диски, чтобы автоматизировать предоставление хранилища LVM.

Виртуальные диски могут находиться в разных хранилищах данных (например, sas или flash), и хотя они могут быть одинакового размера, их скорость может различаться. Итак, мне нужен способ сопоставления дисков vSphere с устройствами Linux.

Идеи

Через vSphere API я могу получить информацию об устройстве:

Data Object Type: VirtualDiskFlatVer2BackingInfo
Parent Managed Object ID: vm-230
Property Path: config.hardware.device[2000].backing  

Properties

Name Type Value 
ChangeId string Unset 
contentId string "d58ec8c12486ea55c6f6d913642e1801" 
datastore ManagedObjectReference:Datastore datastore-216 (W5-CFAS012-Hybrid-CL20-004) 
deltaDiskFormat string "redoLogFormat" 
deltaGrainSize int Unset 
digestEnabled boolean false 
diskMode string "persistent" 
dynamicProperty DynamicProperty[] Unset 
dynamicType string Unset 
eagerlyScrub boolean Unset 
fileName string "[W5-CFAS012-Hybrid-CL20-004] l****9-000001.vmdk" 
parent VirtualDiskFlatVer2BackingInfo parent 
split boolean false 
thinProvisioned boolean false 
uuid string "6000C295-ab45-704e-9497-b25d2ba8dc00" 
writeThrough boolean false 

А в Linux я могу читать строки uuid:

[root@lx***** ~]# lsscsi -t
[1:0:0:0]    cd/dvd  ata:                            /dev/sr0
[2:0:0:0]    disk    sas:0x5000c295ab45704e          /dev/sda
[3:0:0:0]    disk    sas:0x5000c2932dfa693f          /dev/sdb
[3:0:1:0]    disk    sas:0x5000c29dcd64314a          /dev/sdc

Как видите, строка uuid для disk / dev / sda выглядит как-то знакомой со строкой, видимой в VMware API. Отличается только первая шестнадцатеричная цифра (5 против 6) и присутствует только в третьем дефисе. Так что это выглядит многообещающе ...

Альтернативная идея

Выбрать диски контроллером. Но насколько надежно то, что возрастающий идентификатор SCSI также соответствует следующему виртуальному диску vSphere? Что произойдет, если я добавлю еще один привод DVD-ROM / флэш-накопитель USB? Это, вероятно, приведет к появлению новых устройств SCSI между ними. Вот почему я думаю, что откажусь от этой идеи.

Вопросы

  1. Кто-нибудь знает более простой способ сопоставления дисков vSphere и устройств Linux?
  2. Может кто-нибудь объяснить различия в строках uuid? (Я думаю, что это как-то связано с SAS-адресом инициатора и цели ... WWN как ...)
  3. Могу ли я надежно сопоставить устройства с помощью этих строк uuid?
  4. Как насчет виртуальных дисков SCSI? Тогда uuid не видно ...
  5. Эта задача кажется такой очевидной. Почему Vmware не думает об этом и просто добавляет способ запроса сопоставления дисков с помощью Vmware Tools?

Используйте SCSI ID для идентификации виртуального диска. Кажется, у вас сложилось впечатление, что идентификатор SCSI назначается динамически при включении виртуальной машины. Это не вариант. В свойствах виртуальной машины вы можете установить для своего виртуального диска любой идентификатор, и он не изменится, если вы этого не захотите.