четверг, 29 сентября 2016 г.

Создание виртуальной машины из образа ISO в Windows Azure Pack.

Один из основных принципов Cloud Computing - стандартизация. Портал самообслуживания Windows Azure Pack полностью ему соответствует, но реальные задачи клиентов довольно часто требуют выполнения нестандартных кейсов. Один из них - установка операционной системы, шаблон для которой сделать средствами SCVMM проблематично или невозможно. Для этого надо либо создавать виртуальную машину через администратора (провайдера), либо все же найти способ предоставить такую возможность клиенту. Мы пойдем по второму пути. Для примера создадим машину c ОС FreeBSD 10.


Выполнять данную задачу мы будем используя удаленное управление клиентской подпиской Windows Azure Pack через PowerShell. Для этого надо:

1. Скачать и установить оснастку Windows Azure PowerShell на ПК пользователя: http://www.hyper-v.nu/archives/mvaneijk/2014/06/windows-azure-pack-tenant-public-api/ (Install the Windows Azure PowerShell module)

2. Залогиниться на портале Windows Azure Pack в браузере.

3. Перейти https://wap.activecloud.com/publishsettings и скачать файл (запустится автоматически)

4. Открыть на локальном ПК оснастку Windows Azure PowerShell и выполнить:

Add-WAPackEnvironment -Name ActiveCloud -PublishSettingsFileUrl https://wap.activecloud.com/publishsettings -ServiceEndpoint https://wap.activecloud.com:30006

Name - имя подключения, можно указать любое
PublishSettingsFileUrl - URL публикации настроек портала WAP
ServiceEndpoint - точка доступа к публичному API портала WAP. Возможно, придется уточнить у администратора (провайдера).

Import-WAPackPublishSettingsFile C:\Users\myUSER\Downloads\XXXXX.publishsettings -Environment ActiveCloud

$id = (Get-WAPackSubscription | ? Environment -eq ActiveCloud).SubscriptionId

Select-WAPackSubscription -Id $id

Теперь убедимся, что поключение прошло успешно:

Get-WAPackVMTemplate | select name


В первую очередь нам надо получить список дисков, которые мы можем использовать для создания новой ВМ:

Get-WAPackVMOSDisk | ? Enabled -eq "True" | SELECT name


В нашем случае есть только один диск. Отлично, нет проблем с выбором:

$Disk = Get-WAPackVMOSDisk -Name "50GB.VHDX"

Далее получим список профилей, которые мы можем использовать для создания ВМ:

Get-WAPackVMSizeProfile |  Sort-Object name | ft name, ID


Параметры профилей мы можем посмотреть либо через портал WAP, либо с помощью этого же командлета, например, так:

Get-WAPackVMSizeProfile |  Sort-Object name | ft name, CPUCount, Memory

Допустим, с выбором профиля мы определились. В нашем случае будем использовать "Быстрый старт 6 Gen1":

$Profile = Get-WAPackVMSizeProfile -ID 96f7729b-1f2b-408a-9667-0cb1e05c3b4a

Все готово, осталось создать ВМ:

New-WAPackVM -Name "FreeBSD" -OSDisk $Disk -VMSizeProfile $Profile

Теперь возвращаемся на портал Windows Azure Pack и подключаем необходимый нам ISO к созданной ВМ:

Так же лучше сразу добавить сеть. После этого запускаем виртуальную машину, подключаемся к ней через консоль и выполняем установку операционной системы. Если будут проблемы с драйверами для сетевой карты (очень редко), необходимо попросить техподдержку предоставить доступ к ISO образу, в котором они есть.


Если клиентов, которым нужен данный функционал будет много - интегрируем возможность создания виртуальной машины без ОС в портал.




1 комментарий: