Найти тему
Игорь Сотников

VMware vCloud Director, Облако часть 1

Оглавление

Месяц назад подъехал неожиданно новый проект. В один прекрасный день Руководитель сказал, что будем двигаться в направлении облаков. А точнее рассматривается возможность миграции всей инфраструктуры в облако одного из провайдеров. Были выданы Учетная Запись с паролем в облаке, ссылка на облако и тел тех поддержки.

Было поставлено несколько задач:

1. Построить связь между локальной инфраструктурой и облачными ресурсами выделенными провайдером.

2. Развернуть копию одного из сервисов компании в облаке и протестировать работоспособность и качество работы сервисов в облаке.

3. Создать Гибридное облако путем присоединения облачных ресурсов к локальной инфраструктуре

4.Смигрировать тестовую ВМ в облако.

С задачей #1 Я справился достаточно быстро.

Решение сводится к поднятию VPN IPSEC туннеля между двумя точками. С одной стороны Cisco ASA 5515x с другой стороны виртуальный маршрутизатор Edge Gateway. Задача достаточно тривиальная, есть пара нюансов с виртуальным маршрутизатором в облаке. 1. Настраиваем сразу т.к перенастройку\внести изменения в VPN не получится , только удалять и заново (так и не понял это фича или глюк) . 2. Надо не забыть внести правила в Firewall для IPsec и внутренних подсетей.

Задача #2 Тоже не составила больших проблем, развертывание и настройка 5 машин: Шлюз+Брокер+ 3 терминальных ноды заняло порядка 2-х дней. Задача тоже достаточно тривиальная ничем практически не отличается от поднятия сервиса в локальной инфраструктуре.

Задача #3 и #4 Достаточно специфические , тут придется почитать и поработать. Сделаю несколько статей по данной теме.

И так, для чего необходимо подключение облачных ресурсов, в основном используется для миграции Виртуальных машин из локального облака в инфраструктуру облачного провайдера. Обратная миграция невозможна! Только выгрузка ВМ в шаблон с последующем переносом обратно, через носитель или по сети!

Для миграции потребуется Vmware vCloud Director Extender и Vmware NSX (опционально для расширения сети L2, с использованием VXLAN).

Развертывание Vmware vCloud Director Extender. Развертывание хорошо и пошагово описано на Хабре в блоге компании Selctel. https://habr.com/ru/company/selectel/blog/424371/

Данный продукт позволяет решать следующие задачи:

  • позволяет строить «растянутые» L2-сети между локальной инфраструктурой и облаком провайдера, без необходимости внедрения дополнительного оборудования или программных комплексов на стороне клиента;
  • производить перенос виртуальных машин из инфраструктуры организации в инфраструктуру облака провайдера, минимизируя простой сервисов клиента;
  • перенос виртуальных машин может быть автоматизирован согласно расписанию, что позволит выбирать временное окно наименьшей нагрузки на сеть компании, а также производить миграцию без участия персонала, освободив их время для решения других задач.

Миграция может осуществляться как в холодном, так и в горячем режиме, что позволяет максимально сократить возможный простой сервиса клиента. При этом весь процесс управляется из привычного интерфейса веб-клиента VMware vCenter Server.

  • Холодная миграция (Cold migration). Позволяет провести миграцию выключенной машины для ее последующего запуска в среде vCloud Director. Данная процедура, по сути, аналогична экспорту виртуальной машины в OVF шаблон и ее последующему импорту в vCloud Director, но при этом требуется меньше действий со стороны администратора.
  • Горячая миграция (Warm migration). Позволяет выполнить миграцию включенной виртуальной машины, с минимальным RPO (Recovery Point Objective) — 5 минут. Для миграции потребуется развернуть дополнительный компонент Edge Gateway Standalone, который позволит поднять L2VPN туннель с пограничным маршрутизатором организации виртуального датацентра. Завершающим процессом данной миграции является автоматическое выключение виртуальной машины в инфраструктуре клиента и запуск реплики в облаке.
  • Горячая миграция на предварительно загруженную копию виртуальной машины (Warm migration with preloaded seed). При этом копия может быть загружена как посредством холодной миграции, так и импортирована через OVF-шаблон. Сам процесс миграции также проводиться для включенной виртуальной машины с RPO от 5 минут.

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

Архитектура решения


Процесс развертывания и подготовки инфраструктуры можно условно разделить на пять шагов. Дэниэл Палузек (Daniel Paluszek) на своей презентации в рамках конференции VMWorld 2018 US смог кратко описать все шаги в одном слайде.

  • Развертывание OVF-шаблонов ВМ. Проектирование публичных сетевых подключений, подготовка L2VPN и расширения сетей дата-центра.
  • Настройка и развертывание компонентов инфраструктуры провайдера. Регистрация в vCloud Director и связывание с VMware vCenter.
  • Назначение расширенных прав для роли администратора организации на стороне vCloud Director.
  • Настройка и развертывание узлов клиентской инфраструктуры.
  • Готовность к миграции!

Посмотреть запись его выступления можно в его блоге.

Узлы инфраструктуры провайдера

В IT-инфраструктуре провайдера развернуты следующие компоненты.

  • vCD Extender Appliance. Основной компонент инфраструктуры vCloud Director Extender, предоставляющий веб-интерфейс настройки и управления остальными компонентами. Его установка представляет из себя процесс развертывания OVA шаблона, загруженного с портала VMware.
  • vCD Extender Replication Manager. Компонент управления репликаторами. Представлен в единственном экземпляре и только на стороне провайдера. Его установка производится из веб-интерфейса апплайнса.
  • vCD Extender Replicator. Компонент, отвечающий за передачу реплицируемых данных. В случае провайдера — отвечает за получение данных реплицируемых виртуальных машин. Его развертывание также происходит из веб-интерфейса апплайнса. У провайдера может быть развернута несколько репликаторов для равномерного распределения нагрузки, при этом для каждого должен быть выделен отдельный публичный IP-адрес.

Узлы инфраструктуры заказчика

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

  • vCD Extender Appliance. Тот же самый компонент, что и у провайдера, за исключением того, что он развернут у клиента. Так же предоставляет веб-интерфейс для управления и развертывания, уже клиентских узлов.
  • vCD Extender Replicator. Репликатор, отвечающий за исходящую репликацию данных.
  • NSX Edge Gateway Standalone. Опциональный компонент, который необходим для поднятия L2-VPN туннеля с организацией vCloud Director и растягивания сети организации. Нужен только в случае проведения горячих миграций. При этом развертывание полноценной инфраструктуры NSX не требуется.

Подробнее все компоненты описаны в официальной документации: тут и тут.

Подготовка инфраструктуры

Со стороны провайдера

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

На этом этапе потребуется спланировать сетевую архитектуру решения, выделить публичные адреса, создать публичные и приватные DNS записи и произвести настройку внешнего файервола/NAT.

Для файервола/NAT следует сконфигурировать следующие правила.
Источник трафикаПубличный адрес назначенияВнешний порт назначенияТранслируемый портПриватный адрес назначенияИнтернетExternal-IP-1TCP:443TCP:443vCD-Extender appliance IPИнтернетExternal-IP-2TCP:443TCP:443Replication manager IPИнтернетExternal-IP-2TCP:8044TCP:8044Replication manager IPИнтернетExternal-IP-2TCP:44045TCP:44045Replicator IP
Также стоит учесть, что до инфраструктуры заказчика
должен быть разрешен трафик по портам 443 (tcp) и 44045 (tcp). Чуть далее рассмотрим настройку инфраструктуры заказчика, но пока продолжим говорить о провайдере.

Развертывание и конфигурирование компонентов провайдера

Сам продукт можно загрузить с портала VMware в виде OVA-шаблона тут:

  • Зайти на портал под своими учетными данными.
  • Перейти в раздел загрузки компонентов vCloud Director для версии 9.1.
  • Открыть вкладку Drivers & Tools
  • Загрузить компонент vCloud Director Extender 1.1.0.1

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

Когда шаблон загружен, можно приступать к его развертыванию.
Для этого необходимо выполнить следующие шаги:

  • Запустить веб-клиент vCenter Server.
Нажать правой кнопкой мыши по иконке с именем vCenter и выбрать пункт Deploy OVF Template.
Нажать правой кнопкой мыши по иконке с именем vCenter и выбрать пункт Deploy OVF Template.
Указать путь к нашему файлу, нажать Next и следовать указаниям мастера.
Указать путь к нашему файлу, нажать Next и следовать указаниям мастера.
В процессе потребуется указать тип развертывания. По-умолчанию будет указан cx-connector — этот тип необходим для клиентской инфраструктуры. Для инфраструктуры провайдера выберем cx-cloud-service. Чуть ниже укажем сетевые параметры: NTP, GW, DNS и Static IP. Использование DHCP не поддерживается.



Важно соблюсти требования к сложности пароля, иначе при попытке зайти в веб-интерфейс мы получим ошибку. В этом случае процедуру развертывания придется повторять с начала.
В процессе потребуется указать тип развертывания. По-умолчанию будет указан cx-connector — этот тип необходим для клиентской инфраструктуры. Для инфраструктуры провайдера выберем cx-cloud-service. Чуть ниже укажем сетевые параметры: NTP, GW, DNS и Static IP. Использование DHCP не поддерживается. Важно соблюсти требования к сложности пароля, иначе при попытке зайти в веб-интерфейс мы получим ошибку. В этом случае процедуру развертывания придется повторять с начала.
Как только шаблон будет развернут, виртуальную машину необходимо включить. После загрузки ОС можно увидеть следующее окно приветствия.



Как нам и предлагают, запустим браузер и перейдем по адресу https:// X.X.X.X /ui/mgmt
Как только шаблон будет развернут, виртуальную машину необходимо включить. После загрузки ОС можно увидеть следующее окно приветствия. Как нам и предлагают, запустим браузер и перейдем по адресу https:// X.X.X.X /ui/mgmt
В приветливом веб-интерфейсе запустим Setup Wizard, где нам предложат пройти несколько простых и интуитивно понятных шагов.
В приветливом веб-интерфейсе запустим Setup Wizard, где нам предложат пройти несколько простых и интуитивно понятных шагов.
На первом шаге потребуется произвести подключение апплайнса vCloud Director Extender к серверу vCenter, в котором предполагается размещать остальные компоненты инфраструктуры.



Если vCenter развернут с внешним Platform Service Controller, то в графе Lookup Service URLпотребуется указать адрес вида:

https:// [IP_or_hostname] /lookupservice/sdk.

Если развернут vCenter со встроенным Platform Service Controller, то это поле можно оставить пустым.
На первом шаге потребуется произвести подключение апплайнса vCloud Director Extender к серверу vCenter, в котором предполагается размещать остальные компоненты инфраструктуры. Если vCenter развернут с внешним Platform Service Controller, то в графе Lookup Service URLпотребуется указать адрес вида: https:// [IP_or_hostname] /lookupservice/sdk. Если развернут vCenter со встроенным Platform Service Controller, то это поле можно оставить пустым.
На втором шаге указываем параметры подключения к vCloud Director: адрес управления и учетные данные администратора.
На втором шаге указываем параметры подключения к vCloud Director: адрес управления и учетные данные администратора.
На следующем шаге, автоматически будет определен ресурсный vCenter, т.е. тот vCenter, чьи вычислительные ресурсы выделяются для пользователей vCloud Director. Потребуется только обновить данные регистрации: lookupservice и учетные данные администратора.
На следующем шаге, автоматически будет определен ресурсный vCenter, т.е. тот vCenter, чьи вычислительные ресурсы выделяются для пользователей vCloud Director. Потребуется только обновить данные регистрации: lookupservice и учетные данные администратора.
Затем необходимо задать параметры для виртуальной машины vCloud Extender Replication Manager. После того как виртуальная машина развернется и загрузится, будет доступен следующий шаг с ее активацией, где потребуется задать пароль администратора и адрес публичного подключения с портом TCP 443.
Затем необходимо задать параметры для виртуальной машины vCloud Extender Replication Manager. После того как виртуальная машина развернется и загрузится, будет доступен следующий шаг с ее активацией, где потребуется задать пароль администратора и адрес публичного подключения с портом TCP 443.
Далее, по аналогии с предыдущим шагом указываем параметры виртуальной машины vCloud Extender Replicator и по аналогии активируем его задав пароль администратора, публичный адрес с портом 44045, а также lookupservice и учетные данные ресурсного vCenter, т.к. именно этот компонент будет отвечать за передачу реплицируемых данных в «пункт назначения».
Далее, по аналогии с предыдущим шагом указываем параметры виртуальной машины vCloud Extender Replicator и по аналогии активируем его задав пароль администратора, публичный адрес с портом 44045, а также lookupservice и учетные данные ресурсного vCenter, т.к. именно этот компонент будет отвечать за передачу реплицируемых данных в «пункт назначения».
На этом можно сказать, что на стороне провайдера, все компоненты развернуты и можно приступать к подготовкам на стороне заказчика.
На этом можно сказать, что на стороне провайдера, все компоненты развернуты и можно приступать к подготовкам на стороне заказчика.

Но осталось маленькое «но»! Прежде чем кто-то из ваших заказчиков сможет подключиться к вашему облаку и начать мигрировать свои виртуальные машины, потребуется добавить дополнительные разрешения для роли администратора организации, что не является совсем уж тривиальной задачей. Здесь хочется поблагодарить Дэниэла Палузека за то, что он подготовил простой PowerShell скрипт, который облегчит эту задачу.

Ознакомиться со скриптом можно в его официальном блоге.

Со стороны заказчика

Прежде чем приступать к развертыванию компонентов vCloud Director Extender на стороне заказчика, также следует ознакомиться с официальной документацией и обратить внимание на системные требования:

  • версия VMware vSphere не ниже 5.5u3;
  • наличие интернет-канала с пропускной способностью не ниже 100Mbps;
  • выделенные статические IP-адреса для всех компонентов;
  • для апплайнса и репликатора потребуется выделить суммарно 4 vCPU, 12Gb vRAM и 22 Gb HDD;
  • VMware NSX Edge потребует еще 6 vCPU, 8Gb RAM и около 3Gb HDD;
  • cо стороны провайдера потребуется дополнительная подготовка разрешений для роли администратора организации vCloud Director.

Целесообразно заранее уведомить службу поддержки провайдера о своем желании использовать данный продукт. Возможно использовать «тонкие» (thin-provisioning) диски, что позволит уменьшить занимаемое дисковое пространство, на остальном лучше не экономить.

Настройка DNS

Перед началом установки потребуется создать A- и PTR- записи на DNS-сервере в сети организации, а также настроить правила Firewall / NAT.

При настройке NAT необходимо настроить следующие правила:

  • Public IP:443 to Replicator IP:8043;
  • Public IP:44045 to Replicator IP:44045.
-16

Развертывание

Для развертывания будет использоваться тот же шаблон виртуальной машины, что и у провайдера. Загрузить его можно с портала VMware.

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

-17

Задаем тип развертывания и сетевые параметры. По умолчанию будет указан cx-connector — именно этот тип необходим для клиентской инфраструктуры. Указываем NTP, GW, DNS и что самое важное — Static IP.



Требования к сложности пароля такие же, как и на стороне провайдера.

-18

Далее идем аналогичным путем: включаем виртуальную машину, ждем пока она загрузится и в веб-браузере переходим по адресу x.x.x.x/ui/mgmt, и запускаем Setup Wizard.



Проверка

  • Возвращаемся в веб-клиент vCenter сервера.
  • Переходим в раздел управления плагинами:

    Administration -> Solutions -> Client Plug-Ins.

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