Я хочу добавить DVD-привод к виртуальной машине на xenserver с помощью Python. Я создал виртуальную машину с помощью Python, и теперь я хочу добавить DVD-привод, подключенный к хосту, чтобы он также был доступен в виртуальной машине. Поэтому мне также нужно создать VBD для DVD-привода. Но я не могу получить, какое свойство мне нужно установить в VBD.Record, как при подключении диска, я установил свойство VDI, и оно было подключено. Но для DVD-привода я не могу понять, какое свойство мне нужно установить, чтобы подключить этот CD-привод к XenServer. Помогите мне в этом.....
Как добавить DVD-привод к виртуальной машине в XenServer с помощью Python
Ответы (3)
Я не могу помочь вам напрямую с частью Python, но я попытаюсь дать вам правильные операторы командной строки.
Предполагая, что у виртуальной машины уже есть DVD-привод, вы можете просто ввести эти команды
xe cd-list
xe vm-cd-insert uuid=... cd-name="xs-tools.iso"
xe vm-cd-eject uuid=...
. .
Если вас интересует материал vbd, следующие команды могут получить вам uuid vbd для DVD-привода:
Начните с одной виртуальной машины. Из XenCenter извлеките DVD. Теперь подключитесь к хосту XenServer в командной строке и выполните:
xe vbd-list vm-uuid=...
Если на виртуальной машине есть пустой DVD-привод, ее vdi-uuid будет указан как «нет в базе данных». Это позволит вам точно определить uuid вашего VBD!
Для получения дополнительной информации перейдите по этой ссылке:
http://docs.vmd.citrix.com/XenServer/5.0.0/1.0/en_gb/guest.html
Я написал об этом в своем блог:
sr=session.xenapi.SR.get_by_name_label("DVD drives") record_dvd=session.xenapi.SR.get_record(sr[0]) VDI_dvd=record_dvd["VDIs"] vbdconnectcd={'VDI':VDI_dvd[0], 'VM':VM_ref, 'userdevice':"1", 'mode':"RO", 'type':"cd", 'bootable':True, 'unpluggable':True, 'empty':False, 'other_config':{}, 'qos_algorithm_type':'', 'qos_algorithm_params':{}} vbdref1=session.xenapi.VBD.create(vbdconnectcd)
Здесь
VM_ref
относится кuuid
вновь созданной виртуальной машине, к которой мы хотим добавить DVD-привод. Каждый физический DVD-привод имеет свой VDI, который хранится в его свойствах, и его можно получить и передать в качестве одного из параметров для создания VBD, связывающего DVD-привод с виртуальной машиной.
Добавьте CD-привод в XenServer VM с помощью Java
Сначала вам нужно подключиться к xenserver и получить переменную подключения.
public VBD makeCDDrive(VM vm) throws Exception {
VBD.Record vbdrecord = new VBD.Record();
vbdrecord.VM = vm;
vbdrecord.VDI = null;
vbdrecord.userdevice = "3";
vbdrecord.mode = Types.VbdMode.RO;
vbdrecord.type = Types.VbdType.CD;
vbdrecord.empty = true;
return VBD.create(connection, vbdrecord);
}