Способы создания разных типов образов виртуальных машин - PullRequest
0 голосов
/ 07 июня 2019

В среде CI / CD у меня есть файл tar.gz, который мне нужно упаковать в образ виртуальной машины. Я хочу взять установку Ubuntu Server, установить некоторые пакеты, установить мой файл tar.gz и вывести изображение в различные форматы EC2 / AMI и VMware OVF (и, возможно, в будущем, например, на образы Docker).

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

Упаковщик звучит как правильное решение, но в документации не очень ясно, как начать с образа VMware OVF / OVA и создать образ EC2 / AMI. Или я могу начать с образа Docker и вывести изображение EC2 / AMI ??? Судя по документам, мне кажется, что мне нужно начать с AMI и построить AMI. Или начните с «.vmx» (он ничего не говорит о файлах OVF / OVA) и создайте OFA / OVF. Но могу ли я начать с формата A и в конечном итоге с форматом B?

Vagrant или Ansible лучше для этого ??

1 Ответ

0 голосов
/ 07 июня 2019

Вот что я собрал.

Я нашел хорошо документированный подход, который начинается с ISO-образа Ubuntu, использует файл preseed для автоматической установки Ubuntu и развертывает его в vSphere в качестве шаблона:

https://www.thehumblelab.com/automating-ubuntu-18-packer/

Чтобы развернуть его в vSphere, требуется плагин от Jetbrains.Он использует vSphere / ESXi для создания образа шаблона.Документы Packer также обсуждают «Построение на удаленном гипервизоре vSphere», используя ключевые слова remote_ * в файле json.Но я полагаю, что это делает то же самое.

Затем, чтобы создать образы ECI AMI, я полагаю, что вы добавили еще один компоновщик в json.Однако я не верю, что вы можете начать с того же образа ISO, что и в сборщике VMware.Вместо этого я считаю, что вам нужно начать с предварительно созданного изображения AMI (указанного в поле source_ami в json).

Я полагаю, что Packer не позволяет вам начинать с одного источника A и распространять его на целевые форматы B, C и т. Д. Если вы хотите построить AMI, вам нужно начать с AMI,Если вы хотите создать образы VMware, вам нужно начать с ISO или .vmx (я полагаю, это означает OVF) и создать OVF / OVA или шаблон.

...