Citrix PVS расширение vDisk’а или изменение объема VHD-файла с размером блока больше 16Mb.
Доброго
времени суток, коллеги.
В данной
статье рассмотрим возможность увеличения объема виртуального жесткого диска типа
«.VHD» используемым Citrix PVS Service
для доставки ОС целевым устройствам.
Для
расширения виртуального диска Citrix рекомендует использовать Hyper-V,
подробнее тут.
Но операционная
система Windows 2008R2, ровно, как и Hyper-V, не поддерживает диски с размером
блока больше чем 2Mb,подробнее тут и тут.
И при попытке подключения vDisk’а в Hyper-V возникает
ошибка:
Unable to
edit virtual disk
Failed to
open attachment «.vhd». Error: “The file or directory is corrupted and
unreadable”
Для решения нашей задачи воспользуемся планом:
- Преобразование размера блока файла виртуального жесткого диска в размер, поддерживаемый Hyper-V, т.е. 2Mb block size.
- Расширение объем жесткого диска при помощи Hyper-V
- Разметка файловой системы vDisk на целевом устройстве.
1. Преобразование размера блока «.VHD» файла
Предположим, что роли Hyper-V и Citrix Provisioning Service установлены
на разных серверах.
Благодаря статье «Установка и настройка Citrix ProvisioningServices 7.1» мы уже знаем, что Citrix PVS позволяет смонтировать vDisk в понятный операционной системе Windows Server 2008R2 диск при помощи утилиты «CVHDMount.exe»
Для этого c сервера PVS копируем утилиту «CVHDMount.exe» из папки «C:\Program Files\Citrix\Provisioning Services\»
на сервер Hyper-V, например, в папку «C:\CVHDMount»
А также копируем c сервера PVS папку «C:\Program Files\Citrix\Provisioning Services\drivers» на сервер Hyper-V в
папку «C:\CVHDMount»,
тут находятся драйвера необходимые для корректной работы «CVHDMount.exe»
Установим драйвера на сервер Hyper-V.
Открываем «Device Manager», переходим в меню «Action», в
выпадающем контекстном меню выбираем «Add legacy hardware».
В появившемся окне приветствия нажимаем «Next».
В окне «The wizard can help you install other hardware» выделяем «Install the hardware that I manually select from a list (Advanced)»,
нажимаем «Next».
В появившемся окне «From the list below, select the
type of hardware you are installing» в разделе «Common hardware type» выбираем «Show All Devices», нажимаем «Next».
В окне «Select the device driver you want to install for this hardware» нажимаем на «Have Disk…»
В появившемся окне «Install From Disk» нажимаем «Browse», переходим в папку «C:\CVHDMount\drivers», выбираем файл «cfsdep2.inf»
и нажимаем «Ок». Далее нажимаем «Next».
В окне «Select the device driver you want to install for this hardware» в разделе «Model»
выбираем «Citrix Virtual Hard Disk Enumerator PVS»,
нажимаем «Next».
В окне «The wizard is ready to install your hardware» нажимаем «Next»
Далее «Finish».
Аналогичную процедуру проделываем и для файла «cvhdbusp6.inf».
После успешной установки необходимых драйверов необходимо
смонтировать виртуальный жесткий диск в систему, для этого в консоли CMD прописываем
команду:
C:\Cvhdmount\CVhdMount.exe -p 1 \\VHD_Share\pvs$\Test\Test.vhd
где «\\VHD_Share\pvs$\Test\Test.vhd» - сетевой путь с тестовым виртуальным жестким диском «Test.vhd»..
После успешного монтирования VHD, необходимо зайти в диспетчере
дисков и выставить состояние диска на «Offline».
В командной строке вводим «diskmgmt.msc», нажимаем «Ok».
Щелкаем
правой кнопкой мыши по диску, в контекстном меню нажимаем на «Offline», диск переходит в состояние «Вне сети».
Открываем консоль управление Hyper-V «Hyper-V Manager». Щелкаем правой кнопкой
мыши по серверу, выбираем «New->Hard Disk».
В окне «Before You Begin» нажимаем «Next»
Так как в данном случае используемый виртуальный диск
является динамически расширяемым, то в окне «Choose Disk Type» выбираем «Dynamically expanding». Это поможет сократить используемое место,
занимаемое файлом VHD,
так как размер файла растет по мере записи в него данных. Нажимаем «Next».
В окне «Specify Name and Location» в поле «Name» вводим имя конвертируемого виртуального жесткого диска,
например, «Test_2MB.vhd». В поле «Location» указываем путь,
например, «\\VHD_Share\pvs$\Test».
Нажимаем «Next».
В окне «Configure Disk» выбираем «Copy the contents of the
specified disk:», выделяем необходимый нам
диск, нажимаем «Next».
В окне «Completing
the New Virtual Hard Disk Wizard» нажимаем «Finish».
Начнется конвертирование диска «Test.vhd» с размером блока в 16Mb в диск «Test_2MB.vhd» с размером блока 2MB.
Хочу отметить, что при выборе типа жесткого диска в Hyper-V можно выбрать и параметр «Fix size», но
данный тип занимает все размеченное место, вследствие чего файл «.VHD» изначально будет
большим.
После завершения конвертирования необходимо отключить
примапленный диск. Для этого в командной консоли CMD выполним:
C:\Cvhdmount\CVhdMount.exe
-u 1 \\VHD_Share\pvs$\Test\Test.vhd
2. Расширение объем жесткого диска при помощи Hyper-V.
В консоли управления Hyper-V «Hyper-V Manager» щелкаем правой кнопкой мыши по серверу, выбираем «New->Edit Disk».
В окне «Before You Begin» нажимаем «Next»
В окне
«Locate Virtual Hard Disk» в поле «Location»
вводить путь до сконвертированного диска «\\VHD_Share\pvs$\Test\Test_2MB.vhd».
Нажимаем «Next»
В окне «Chose Action» выбираем «Expand», нажимаем «Next».
В окне «Expand Virtual Hard Disk» в поле «New size» выставим значение «50», тем самым увеличим объем
виртуального жесткого диска на 10Gb до 50Gb. Нажимаем «Next».
В окне «Completing the Edit Virtual Hard Disk Wizard» нажимаем «Finish».
Теперь можно добавить расширенный диск на PVS-сервер и назначить его целевому
устройству.
Открываем консоль управления «Provisioning Service Console». Щелкаем правой кнопкой мыши по необходимому
хранилищу, в нашем случае «Test», в контекстном меню
выбираем «Add or Import Existing vDisks».
В появившемся окне нажимаем на кнопку «Search»,
далее выделяем необходимый виртуальный диск, в нашем случае «Test_2MB», нажимаем «Add», после чего - «Close».
Видим,
что в хранилище образов добавился виртуальный жесткий диск размером в 50Gb
3. Разметка файловой системы vDisk на целевом устройстве.
Теперь переводим целевое устройство в режим обслуживания,
назначаем ей vDisk с
именем «Test_2MB» и
загружаемся с него. На целевом устройстве запускаем консоль «Disk Management»,
щелкаем правой кнопкой по диску, выбираем «Extend Volume».
В окне «Select Disks» в поле «Available» выделяем все
доступное и нажимаем «Add», далее «Next».
В окне «Complete the Extend Volume Wizard» нажимаем «Finish».
Диск успешно расширился до 50 Gb.
На этом предлагаю закончить.
Вопросы, замечания и предложения пишите в комментариях или
на почту.
Удачного тестирования!