Как создать образ FreeBSD 10 для последующего развертывания в Windows Azure

Задача развернуть образ операционной системы для последующего развертывания в Windows Azure не является уникальной и, в большинстве случаев, решается уже готовой библиотекой. Цель этой статьи – познакомить читателя с процессом подготовки собственного образа системы . В качестве примера будет использоваться операционная система Unix семейства FreeBSD версии 10. И так, поехали…

Первое условие, которое должно быть выполнено, это наличие установленной ОС в VHD диске.

В качестве среды виртуализации можно использовать следующие средства:

1)         Windows 8 / 8.1 с возможностью поддержки процессорных инструкций SLAT, в этом случае можно использовать встроенную роль Hyper-V;

2)         Windows Server с ролью Hyper-V;

3)         VirtualBox.

Выбор средства виртуализации будет зависеть сугубо от ваших возможностей. Во время демонстрации я буду использовать Windows Server с ролью Hyper-V.

Операционную систему можно либо установить самостоятельно, либо скачать уже готовую с официального сайта FreeBSD в виде VHD диска. Если использовать уже готовый образ, его можно взять с FTP сервера ftp://ftp.freebsd.org/pub/FreeBSD/snapshots/VM-IMAGES/10.0-RELEASE/amd64/Latest/, а именно нужен образ с расширением vhd.xz ftp://ftp.freebsd.org/pub/FreeBSD/snapshots/VM-IMAGES/10.0-RELEASE/amd64/Latest/FreeBSD-10.0-RELEASE-amd64-20140116-r260789.vhd.xz. Он находится в архиве, по этому нам нужен архиватор и WinRAR отлично подойдет для этой задачи.

Скачанный и разархивированный образ необходимо подготовить. Дело в том, что он имеет тип «динамически расширяемого», данный тип невозможно использовать в Windows Azure, поэтому требуется произвести его конвертирование в тип «фиксированный размер».

В мастере выбираем загруженный VHD диск.

2014-12-20_15-17-26

 

Далее, заказываем операцию конвертирования диска.

2014-12-20_15-18-06

 

Необходим только формат VHD.

2014-12-20_15-18-19

 

На следующем шаге определим, что тип диска будет фиксированный.

2014-12-20_15-19-40

 

Дадим название новому диску.

2014-12-20_15-20-05

 

После работы мастера, мы получим новый VHD диск уже с фиксированным размером. Это очень важный шаг, так как я уже писал, Azure не умеет работать с динамически расширяемыми дисками.

Следующий шаг, будет правка полученного диска путем увеличения его размер. Опытным путем было доказано, если взять диск как он есть, во время загрузки в Azure получается ошибка:

“The VHD http://<mystorageaccount>.blob.core.windows.net/vhds/freebsd10.vhd has an unsupported virtual size of 21475270656 bytes. The size must be a whole number (in MBs).”

Решение довольно простое — необходимо расширить полученный диск на один гигабайт. Воспользуемся все тем же мастером для работы с VHD дисками:

2014-12-20_16-13-27

 

Заказываем операцию «расширение диска».

2014-12-20_16-13-27

 

И указываем размер в 21 гигабайт.

2014-12-20_16-14-48

 

Далее, я создал виртуальную машину:

2014-12-20_16-17-48

 

И в качестве жесткого диска указал созданный ранее VHD диск. Подготовительные работы завершены и можно запускать виртуальную машину, продолжив ее конфигурирование.

Логинимся под root без пароля

Настроим сетевой интерфейс на получение IP адреса по DHCP

Добавим сервер SSH  в автозагрузку и произведем генерирование необходимых ключей

Установим необходимые пакеты

Следующий шаг, будет загрузка и установка агента

Так как python устанавливается в каталог /usr/local/bin/, а агент же для своей работы требует другой путь – /usr/bin/python, то в данном случае решаем проблему используя жесткие ссылки

Далее устанавливаем агент

Последняя команда выполнит очистку OS к последующему развертыванию

На завершающем шаге необходимо загрузить подготовленный образ в Azure. Для этого воспользуемся Azure Powershell и определив место хранения в Azure Storage

И нахождение локального файла VHD

Выполним коммандлет Add-AzureVhd

Во время его выполнения будет подсчитана MD5 хеш сумма, определены заполненные блоки диска, а так же осуществлена их выгрузка в Azure.

В завершении необходимо выполнить регистрацию образа

После этого, образ готов к развертыванию.

Оставить комментарий

  Подписаться  
Уведомление о