Как мне скопировать шаблоны виртуальных машин между центрами обработки данных vSphere?


9

Архитектура фона / среды:

Моя текущая среда для $corp_overlords$установки настроена на модель «хаб-спиц» с технологически хорошо обеспеченным хабом домашнего офиса (SAN, blade-центр / кластерная система ESXi, оптоволоконное подключение к Интернету и т. Д.), Подключенным к ряду спиц удаленного узла, которые не так хорошо, и, как правило, содержат один хост-сервер ESXi и подключаются к концентратору домашнего офиса через T1. Весь трафик, исходящий из любого удаленного сайта, направляется обратно в домашний офис через «сеть MPLS» (которая на самом деле является просто T1, соединяющим удаленный сайт с домашним офисом).

В домашнем офисе в сети SAN у нас есть несколько шаблонов виртуальных машин, которые я создал для развертывания виртуальных машин. Они хранятся в томе NFS, который является хранилищем данных vSphere, подключенным к объекту центра данных домашнего офиса в vSphere.

Каждый удаленный сайт имеет соответствующий объект vSphere datacenter, содержащий объект хранилища данных, который подключен к локально подключенному хранилищу на хост-сервере ESXi, физически расположенном на удаленном сайте.

Поскольку эти шаблоны виртуальных машин существуют в томе NFS, они занимают ~ 40 ГиБ (тонкое выделение ресурсов). Как файлы в NTFS (или Linux FS), они занимают ~ 100 ГиБ.

Вопрос:

Как мне скопировать эти 40 ГБ данных с тонким предоставлением (занимающих 100 ГБ пространства файловой системы) между моими сайтами?

Я нахожусь под ограничением, что у меня есть приблизительно 5 дней, и я не могу мешать (заметно) "нормальному сетевому трафику".


У тебя дома есть клинок ?!
Том О'Коннор

@ TomO'Коннор Хех. Не мой домашний офис, а корпоративный сайт корпорации . Хотя, я уверен, что если бы я спросил правильно, я мог бы вытащить старую EVA SAN и HP Bladesystem для личного использования ... ожидаю, что у меня нет ~ 25 000 долларов, которые стоили бы мне, чтобы управлять ими дома.
HopelessN00b

Оооо. Это имеет больше смысла .. просто
Том О'Коннор

Ответы:


13

Как насчет использования ovftool для копирования шаблонов непосредственно между хостами?

Я уже использовал это для виртуальных машин, и это работает довольно хорошо. Не уверен, что это также работает для шаблонов, но если нет, то вы можете просто временно скрыть шаблоны для виртуальных машин для их копирования.

Инструкции, с примером здесь .

Вы также можете использовать ovftool для преобразования ваших шаблонов в .ovfпакеты, которые должны быть очень компактными, а затем передавать пакеты между центрами обработки данных с помощью BITS, FTP или SCP или любого другого протокола, который вы хотите.


Отличный вариант !! Я часто забываю про инструменты Cli.
Ewwhite

Я отредактировал ваш ответ и добавил туда последнее предложение, так как это то, чем я на самом деле закончил. Преобразование шаблонов в .ovfпакеты сделало их по несколько ГБ каждый, что я мог легко переносить между сайтами с помощью BITS.
HopelessN00b

8

Опции:

На мой взгляд, у меня есть три возможных подхода, хотя я искренне надеюсь, что мне не хватает лучшего, на который кто-то здесь может указать мне. (В идеале это тот, который заставляет меня перемещать только 40 ГиБ фактических данных, и в возобновляемом, «фоновом» или ускоренном режиме.)

  1. Скопируйте файлы между хранилищами данных через клиент vSphere.
    • Преимущество: перемещение только ~ 40 ГиБ, а не ~ 100 ГиБ.
    • Недостаток: все остальное - не возобновляемый, не фоновый / скоростной, интерфейс отстой .

  2. Скопируйте файл между гостями Windows, используя биты
    • Преимущество: возобновляемый, фоновый перенос.
    • Недостаток: перемещение ~ 60 ГиБ данных, которых на самом деле не существует.
    • Бонус: использует PowerShell. <3
    • Двойной секретный бонус за пробацию : PowerShell Remoting позволяет сделать это одной командой.

  3. Скопируйте файл между хостами ESXi через SCP
    • Преимущество: ограниченный по скорости и потенциально возобновляемый.
    • Недостаток: перемещение ~ 60 ГиБ данных, которых на самом деле не существует. Не фоновая передача.
    • Бонус: шея борода. Дополнительная шея для бодрости.

  4. Лучший вариант предлагается при сбое сервера.
    • Преимущество: возобновляемая фоновая передача с регулированием скорости, которая перемещает только ~ 40 ГиБ данных, которые существуют.
    • Недостаток: присуждение вознаграждения стоит респ.
    • Бонус: узнайте что-то новое, оправдывайте игру ServerFault на работе.

Как насчет сжатия хранилища данных с помощью powerCLI с последующим использованием BITS для перемещения файла? Очевидно, сначала попробуйте это с клоном.
Натан C

@NathanC Неплохая мысль, но хранилища данных в домашнем офисе SAN на самом деле представляют собой тома NFS объемом 2 ТБ, которые содержат не только рассматриваемые шаблоны. Нам также не хватает свободного места в SAN, поэтому мы не можем выделить дополнительный том NFS для создания нового хранилища данных для этой цели (или передать что-то еще, чтобы в итоге получилось одно хранилище данных, содержащее только то, что нам нужно скопировать).
HopelessN00b

Э-э-э ... неверный термин. Сжатие происходит по объему , а не по хранилищу данных. Мне нужно выпить, ясно.
Натан C

1
Вариант 5. Скопируйте шаблоны в съемное хранилище и отправьте его на удаленные сайты.
Joeqwerty

@joeqwerty Да, sneakernet всегда есть вариант. Может быть, не из-за нетехнических причин, но это не значит, что это не очень хороший ответ для общего случая. (В какой-то момент я ожидал, что кто-то добавит FedEx / UPS / USPS в качестве ответа на это.)
HopelessN00b

5

Вот несколько интересная идея для вас. Это не поможет с вашим начальным заполнением, но мне интересно, поможет ли вам что-то вроде бесплатного продукта Crashplan с вашими шаблонами.

https://www.code42.com/store/

Он выполняет дедупликацию и блокировку различий на уровне, поэтому вы можете установить его на одном локальном сервере в штаб-квартире в качестве «сеялки», а на каждом лучевом сервере (в ВМ, я полагаю) в качестве «получателя». Настройте резервные копии так, чтобы они включали только папку, в которой шаблоны будут храниться на сервере HQ. Он также может выполнять резервное копирование в несколько мест назначения (например, для каждого «луча») https://support.code42.com/CrashPlan/Latest/Getting_Started/Choosing_Destitions

Шаги (после настройки приложения Crashplan на каждой стороне) будут работать примерно так:

  1. Скопируйте шаблоны из хранилища данных на сервер «seed» в каталог, который отслеживает Crashplan. В гигабитной сети это может занять немного времени, но не должно быть слишком плохо.
  2. Crashplan должен отслеживать и начинать резервное копирование файлов на спицы / приемники. Это, очевидно, займет довольно много времени.
  3. После первоначального заполнения / резервного копирования, когда будущие шаблоны изменятся, скопируйте их из фактического хранилища данных в каталог «начального» сервера, который отслеживает Crashplan, перезаписывая исходную копию шаблона. Тогда Crashplan будет дедуплицировать и только отражать изменения уровня блока на спицах.

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


5

Я сделал этот тип движения несколькими способами, но учитывая то, что вы описали ...

FedEx или UPS , с изюминкой ...

Я знаю, что используемые серверы - это серверы HP ProLiant и Dell PowerEdge. VMware не имеет хорошей поддержки для съемных устройств (например, USB) в качестве целей хранилища данных. Однако использование основного диска RAID 0 с логическим диском (на языке HP) на основном сайте может работать. Вы можете добавлять и удалять локально подключенные диски в системах HP и Dell и использовать их для транспортировки хранилищ данных.

Будучи шаблонами, вы можете перемещать / копировать их на свой локальный диск через vCenter. Корабли диски. Вставьте в принимающий автономный сервер. Массив и хранилище данных будут распознаны при повторном сканировании системы хранения. Скопируйте данные. Прибыль.

Я также использовал это в качестве средства для создания копий для репликации vSphere, поскольку управлять 24-часовыми дельтами гораздо проще, чем несколькими полными синхронизациями.


3

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

  • Используйте WinRAR или 7Zip, чтобы разбить ваш шаблон на куски 1ГБ-2ГБ.
  • Создайте виртуальную машину на сервере ESXi на каждом удаленном сайте. Необходимы минимальные ресурсы, это всего лишь промежуточная зона.
  • Подключите VMDK к каждой из этих виртуальных машин, которая достаточно велика для хранения передаваемых данных.
  • Установите ОС и средство переноса по вашему выбору (для этого я использую SFTP-сервер).
  • Загрузите шаблон RAR в промежуточную виртуальную машину.
  • Распакуйте шаблон RAR.
  • Используйте vSphere или веб-интерфейс для загрузки шаблона из промежуточной виртуальной машины в хранилище данных ESXI. (это будет БЫСТРАЯ передача).

Плюсы:

Разбивая шаблон на более мелкие части, вы снижаете риск повреждения данных во время передачи. (Если файл поврежден, вам нужно только повторно загрузить этот фрагмент RAR, а не весь файл 40 ГБ.)

Вы передаете только 40 ГБ (вероятно, меньше, поскольку RAR'ing будет сжимать дальше).

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

Минусы:

Вы должны создать промежуточную виртуальную машину. Я облегчаю эту задачу, имея предварительно созданный шаблон объемом <1 ГБ, на котором установлена ​​только пустая установка ОС + сервер SFTP.

Сжатие / распаковка шаблона объемом 40 ГБ займет ~ 4-6 часов в зависимости от ресурсов вашего процессора.


1

Я сталкивался с этой проблемой довольно много раз, и примерно в половине случаев я обнаружил, что мне гораздо лучше просто строить новые машины в удаленном месте. Это особенно верно для того, что я называю «шаблонными» машинами. Моя версия этого довольно простая машина. Ваша версия может быть немного другой.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.