Как добавить DVD-привод в ВМ в XenServer с помощью Python - PullRequest
4 голосов
/ 12 августа 2011

Я хочу добавить привод DVD к виртуальной машине на xenserver, используя Python. Я создал виртуальную машину с использованием Python, и теперь я хочу добавить подключенный к хосту DVD-привод, который также будет доступен в виртуальной машине. Поэтому мне нужно создать VBD для DVD-привода. Но я не могу получить какое свойство мне нужно установить в VBD.Record, так как при подключении диска я настроил свойство VDI, и оно было присоединено. Но для привода DVD я не могу определить, какое свойство мне нужно установить, чтобы подключить этот привод CD к XenServer. Помогите мне с этим .....

Ответы [ 3 ]

3 голосов
/ 26 августа 2011

Я не могу помочь вам напрямую с частью 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

2 голосов
/ 27 сентября 2011

Я написал об этом в моем блоге :

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-привод с ВМ.

0 голосов
/ 11 марта 2015

Добавление CD-привода в виртуальную машину XenServer с использованием 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);
}
...