У меня есть тестовый сервер с XenServer 6.5, точнее, это версия 6.5.0-90233c. К настоящему времени у меня есть две виртуальные машины Linux (Debian и Ubuntu), которые работают без сбоев. Я подключил USB-накопитель емкостью 1 ТБ, на котором я успешно установил весь диск в качестве хранилища (SR).
Я хочу создать образы виртуальных дисков, которые будут подключены к виртуальным машинам. Моя проблема началась, когда я попытался создать образ виртуального диска (VDI). Не имеет значения размер VDI, который я пытаюсь создать, он просто терпит неудачу.
(Команда, выданная для создания VDI):
xe vdi-create sr-uuid=[my SR's UUID] name-label="Virtual Disk 01 USB SR" type=user virtual-size=15GiB
Возвращено сообщение об ошибке:
Error code: SR_BACKEND_FAILURE_78
Error parameters: VDI Creation failed [opt=error 22]
Я попытался воссоздать хранилище хранилища с его типом, установленным на EXT3, который по умолчанию был LVM, но это не имеет значения, в любом случае это не удается.
Если заглянуть в / var / log / SMlog, в случае сбоя он выдаст следующее:
xensvr0 SM: [24602] ['uuidgen', '-r']
xensvr0 SM: [24602] pread SUCCESS
xensvr0 SM: [24602] lock: opening lock file /var/lock/sm/[my SR-uuid's value]/sr
xensvr0 SM: [24602] lock: acquired /var/lock/sm/[my SR-uuid's value]/sr
xensvr0 SM: [24602] vdi_create {'sr_uuid': '[my SR-uuid's value]', 'subtask_of': 'DummyRef:|dad93ce4-adf8-b4de-9df5-1b3a912bb9d3|VDI.create', 'vdi_type': 'user', 'args': ['5368709120', 'Virtual Disk 01 USB SR', '', '', 'false', '19700101T00:00:00Z', '', 'false'], 'o_direct': False, 'host_ref': 'OpaqueRef:cf883175-4885-7efc-a35c-3a8967bc447b', 'session_ref': 'OpaqueRef:d379b1bf-8d01-6143-053c-2312312b4988', 'device_config': {'device': '/dev/disk/by-id/usb-OEM_Ext_Hard_Disk_00000000D2066881-part1', 'SRmaster': 'true'}, 'command': 'vdi_create', 'sr_ref': 'OpaqueRef:54604806-2115-d3eb-55ca-43ffd2a15687', 'local_cache_sr': '28117830-ec01-f5cf-f8be-5b3c31eb7507', 'vdi_sm_config': {}}
xensvr0 SM: [24602] ['/usr/sbin/td-util', 'create', 'vhd', '5120', '/var/run/sr-mount/[my SR-uuid's value]/2598c91f-fdca-40a0-a900-92a28adc6743.vhd']
xensvr0 SM: [24602] FAILED in util.pread: (rc 22) stdout: '', stderr: ''
xensvr0 SM: [24602] Raising exception [78, VDI Creation failed [opterr=error 22]]
xensvr0 SM: [24602] lock: released /var/lock/sm/[my SR-uuid's value]/sr
xensvr0 SM: [24602] ***** generic exception: vdi_create: EXCEPTION SR.SROSError, VDI Creation failed [opterr=error 22]
xensvr0 SM: [24602] File "/opt/xensource/sm/SRCommand.py", line 110, in run
xensvr0 SM: [24602] return self._run_locked(sr)
xensvr0 SM: [24602] File "/opt/xensource/sm/SRCommand.py", line 159, in _run_locked
xensvr0 SM: [24602] rv = self._run(sr, target)
xensvr0 SM: [24602] File "/opt/xensource/sm/SRCommand.py", line 215, in _run
xensvr0 SM: [24602] return target.create(self.params['sr_uuid'], self.vdi_uuid, long(self.params['args'][0]))
xensvr0 SM: [24602] File "/opt/xensource/sm/FileSR.py", line 521, in create
xensvr0 SM: [24602] opterr='error %d' % inst.code)
xensvr0 SM: [24602] File "/opt/xensource/sm/xs_errors.py", line 52, in в этом
xensvr0 SM: [24602] raise SR.SROSError(errorcode, errormessage)
xensvr0 SM: [24602]
xensvr0 SM: [24602] lock: closed /var/lock/sm/[my SR-uuid's value]/sr
Есть идеи о том, что мне может не хватать?
Я думаю, вы пытались создать свой файл в системе, которая не поддерживает o_direct. Вы используете ZFS? У вас для параметра o_direct в журнале установлено значение false, но на самом деле td-util не открывает файл без передачи O_DIRECT, его исходный код не позволяет передавать аргумент, чтобы избежать O_DIRECT.