Как импортировать OVF и OVA шаблон в vCloud Director
Доброго времени суток! Уважаемые читатели и гости лучшего блога, о Vmware технологиях Pyatilistnik.org. Облака, облака, в 21 веке, это слово обрело новое значение, это уже не пушистые и мягкие, белые подушки на небе, а высокотехнологичные сервисы по обработке данных. Многие организации уже перенесли и переносят туда свои сервисы, доверяя свой бизнес таким компаниям, как Microsoft или Vmware. Моя организация не исключение, и мы арендуем некоторые мощности в Цоде Dataline. Там облака построены на технологии vCloud Director, о которой я уже рассказывал. Сегодня я хочу рассказать, как без дополнительной инфраструктуры, вы можете перенести или мигрировать вашу виртуальную машину в облако Vmware. Я буду импортировать OVF или OVA шаблон в vCloud Director в Dataline Цод.
Процесс переноса виртуальной машины в облако vCloud Director
Существует два вида переноса виртуальных машин между вашей локальной инфраструктурой и удаленным облаком:
- Использование инфраструктуры VMware vCloud Connector и VMware vCloud Extender - данный метод подойдет для постоянного переноса и миграции ваших ресурсов в облако.
- Ручное импортирование шаблонов виртуальных машин OVF или OVA - подойдет при нескольких миграциях, дабы не устанавливать дополнительную инфраструктуру.
Я в данной статье расскажу именно, о втором методе, о первом я хочу сделать отдельную статью, так как она будет довольно таки масштабной. И так, первым делом вам необходимо:
- Произвести экспорт вашей виртуальной машины в OVF или OVA формат, если у вас обычная папка с файлами виртуальной машины в виде VMDK, то нужно выполнить преобразование VMDK в OVF.
- Произвести импорт вашей VM, через интерфейс vCloud Director или же, через утилиту VMware OVF Tool 4.3
Ручной импорт OVF в vCloud Director
Мы будем использовать веб-интерфейс, как при создании виртуальной машины в vCloud Director. Откройте вкладку "My Cloud", выберите пункт vApps и нажмите кнопку "Add vApp from OVF"
У вас откроется мастер по переносу в облако vCloud Director, тут будет два варианта:
- URL - предполагается, что вы поместите вашу виртуальную машину в формате OVF или OVA на веб сервис или ftp. Тут вам нужно указать прямую ссылку.
- Local file - тут вы укажите путь до локального файла или файла лежащего на UNC (сетевой шаре), и ваш компьютер будет работать как proxy сервер.
Вот так вот выглядит пример http пути до шаблона OVF, при первом методе импортирования.
При выборе второго метода, вам нужно, через кнопку "Browse" указать путь до вашего OVF файла. В моем случае это тестовая виртуалка с именем "Test"
Как только вы определились с методом переноса, нажмите "Next"
На следующем шаге, если проблем нет с OVF файлом, то вы получите содержимое виртуальной машины, в моем случае vCloud Director видит, что есть название "test" , два жестких диска с "thin provisioned".
Далее вам необходимо задать имя виртуальному контейнеру vApp и указать в каком виртуальном датацентре (Virtual Datacenter) вы будите разворачивать ваш сервер.
Следующим шагом, будет выбор датастора, на который вы будите разворачивать ваш сервер.
Далее, вы задаете имя компьютера и указываете к какому виртуальному коммутатору его подключить.
На предпоследнем шаге мастера по импорту OVF шаблона в vCloud Director, вам дадут возможность задать нужное вам количество виртуальных процессоров, оперативной памяти и размер виртуальных дисков.
Проверяем сводную информацию по импортированию и нажимаем "Finish"
Начинается копирование данных в облако Vmware.
Как только файлы будут переданы начнется импорт vApps.
Как только файлы виртуальной машины импортированы, производим тестирование нашего vApps.
Импорт OVF в vCloud Director через VMware OVF Tool
VMware OVF Tool - это утилита командной строки Windows, которую вы устанавливаете, она очень удобно позволяет использовать ее в различных сценариях или скриптах, например, на powershell.
Откройте утилиту VMware OVF Tool в командной строке или оболочке powershell и введите вот такую команду:
- "C:\Temp\OVF\OVF\test.ovf" - это локальное расположение моего файла
- vcloud - это адрес куда нужно подключаться, он состоит из разных параметров
- testovfimport - это логин для доступа к облаку vCloud Director
- Password - пароль для доступа к облаку vCloud Director
- dcloud.ru/cloud - адрес подключения
- org= - имя организации, можете посмотреть в меню "Administration".
- vdc= - Имя виртуального, можете посмотреть в меню "Administration".
- catalog= - виртуальный датастор, можете посмотреть в "Storage Policies'.
- vapp=имя, которое будет у vApps, задаете какое вам угодно.
Выполняю команду в VMware OVF Tool. Начинается подключение к облаку vCloud Director. Проверяется файл манифест, который содержит все настройки и хэш суммы. Если проблем нет, то начнется передача данных (Disk progress)
В данном случае, вам придется задать другой пароль, если знаете другой метод, то прошу описать его в комментариях.
Так же утилита VMware OVF Tool позволяет использовать скрипты powershell, вот вам пример такого:
param ([Parameter(Mandatory=$true)][string]$FILE_TO_UPLOAD,[Parameter(Mandatory=$true)][string]$FILE_FILENAME_IN_VCA,[switch]$ISvappTemplate = $false,[switch]$SaveConfig = $false,[switch]$ClearConfig = $false)# Global variables$OVFTOOL = "$env:programfiles\VMware\VMware OVF Tool\ovftool.exe"$Config = "$env:userprofile\vCloudAir\vCloud-air.conf"if(!(Test-Path $OVFTOOL)){throw "ovftool.exe was not found!####Hey Yo!What's UP - Something went wrongCouldn't find ovftool.exe in it default location!Have you installed it, why not ? https://www.vmware.com/support/developer/ovf/You claim to have... hmm happy hacking then####"}if($ISvappTemplate -eq $true){$vappType = "vappTemplate"$vCloudTemplate = "true"}else{$vappType = "vapp"$vCloudTemplate = "false"}#Delete config if $ClearConfig is trueif($ClearConfig -eq $True){del $config}#Get input from console if config files doesn't exist or get it from file if file existsif(!(Test-path $Config)){# vCloud Air On-Demand VCD URL$VCA_URL = Read-Host "Enter your url for vCloud Air"# VCD Org Name$VCA_ORG_NAME = Read-Host "Enter your org name"# VCD VDC Name$VCA_ORG_VDC_NAME = Read-host "Enter your VDC name"# VCD Catalog Name$VCA_CATALOG_NAME = Read-Host "Enter your catalog name"}elseif(Test-path $Config){$File = gc $Config$VCA_URL = $File[0]$VCA_ORG_NAME = $File[1]$VCA_ORG_VDC_NAME = $File[2]$VCA_CATALOG_NAME = $File[3]}#Save input to config fileif($SaveConfig -eq $True){if(!(Test-path $Config.TrimEnd("vCloud-air.conf"))){New-Item $Config.TrimEnd("vCloud-air.conf") -type directory}if(!(Test-path $Config)){New-Item $Config -type file | out-null}$VCA_URL > $Config$VCA_ORG_NAME >> $Config$VCA_ORG_VDC_NAME >> $Config$VCA_CATALOG_NAME >> $Config}#Upload dataif($FILE_TO_UPLOAD.Split(".")[($FILE_TO_UPLOAD.Split(".").length)-1] -match "iso"){&${OVFTOOL} ${FILE_TO_UPLOAD} vcloud://${VCA_URL}?org=${VCA_ORG_NAME}"&"vdc=${VCA_ORG_VDC_NAME}"&"catalog=${VCA_CATALOG_NAME}"&"media=${FILE_FILENAME_IN_VCA}}elseif($FILE_TO_UPLOAD.Split(".")[($FILE_TO_UPLOAD.Split(".").length)-1] -match "ovf"){&${OVFTOOL} --acceptAllEulas --skipManifestCheck --vCloudTemplate=$vCloudTemplate --allowExtraConfig ${FILE_TO_UPLOAD} vcloud://${VCA_URL}?org=${VCA_ORG_NAME}"&"vdc=${VCA_ORG_VDC_NAME}"&"catalog=${VCA_CATALOG_NAME}"&"${vappType}=${FILE_FILENAME_IN_VCA}}elseif($FILE_TO_UPLOAD.Split(".")[($FILE_TO_UPLOAD.Split(".").length)-1] -match "ova"){&${OVFTOOL} --acceptAllEulas --skipManifestCheck --vCloudTemplate=$vCloudTemplate --allowExtraConfig ${FILE_TO_UPLOAD} vcloud://${VCA_URL}?org=${VCA_ORG_NAME}"&"vdc=${VCA_ORG_VDC_NAME}"&"catalog=${VCA_CATALOG_NAME}"&"${vappType}=${FILE_FILENAME_IN_VCA}}
- FILE_TO_UPLOAD - тут указываете полный путь до файла OVF
- FILE_FILENAME_IN_VCA - пишите любое название vApps
- Enter your url for vCloud Air - задается ваш адрес, в формате login:Password@dcloud.ru/cloud
- Enter your org name - имя организации
- Enter your VDC name - имя виртуального датацентра
- Enter your catalog name - имя виртуального диска
Начнется подключение к вашему облаку и передача файлов. Надеюсь этот сценарий вам сэкономит время. Материал сайта pyatilistnik.org,
Добрый день. Может быть подскажите: как из OVF импортировать несколько дисков на разные датасторы?