В настоящее время я работаю над проектом, в котором я использую Vagrant с подготовкой Ansible для создания локальных сред в VirtualBox. В настоящее время я работаю с университетом, и у нас есть гипервизор XenServer (бесплатная версия). Я не могу получить доступ к гипервизору прямо из своего местоположения, но я могу подключиться к серверу Ubuntu в той же сети по ssh и перенаправить порты, чтобы я мог подключиться к нему с помощью XenCenter:
ssh <remote machine> -L80:<xen-server>:80 -L443:<xen-server>:443 -L5900:<xenserver>:5900 -L59001...etc to 5910
Порты 59xx связаны с тем, что XenCenter размещает консоли VNC на этих портах. (На самом деле я использую шпатлевку в Windows, потому что я не могу заставить OpenXenCenter / Linux вообще подключиться к этому типу туннеля). Citrix XenCenter подключается нормально, и я могу создать новую виртуальную машину, но не могу получить доступ к консоли ни через XenCenter, ни через другой клиент VNC.
Если бы я мог заставить работать консоль VNC, я мог бы создать базовый блок и просто скопировать его и повторно подготовить копии с различными доступными playbooks по мере необходимости.
Но меня действительно не волнует возможность получить консоль, если я могу автоматически подготовить отдельные виртуальные машины. Было бы неплохо, если бы я мог указать на гипервизор с клиентом на другом компьютере и создать сценарий создания виртуальных машин с определенными IP-адресами. Vagrant не поддерживает Xen в качестве провайдера. Я обнаружил некоторую ограниченную поддержку Xen с использованием libvirt, но даже это, похоже, больше ориентировано на Xen, установленный в стандартном дистрибутиве, таком как Ubuntu или OpenSUSE, а не в качестве автономного гипервизора Citrix. Есть xen-tools, но, похоже, они также ориентированы на xen в локальном дистрибутиве Linux.
Есть ли способ удаленно подготовить экземпляры XenServer с помощью Vagrant или какого-либо другого инструмента подготовки?
Для следующего парня, разбирающегося в этом:
Решение - прочитать руководство по установке гостевой системы XenServer и воспользоваться поисковой системой. ;)
Во-первых, есть доступный playbook с хорошей документацией по настройке виртуальных машин в XenServer.
Это не полноценный бродячий провайдер и, возможно, не достаточно простой для новичков, но он охватывает все основы.
http://sharknet.us/2013/12/13/276/
Во-вторых, «настоящий» бродячий провайдер доступен по адресу
Если вы хотите предоставить экземпляры xenserver, есть бродячий ящик для xenserver по адресу https://vagrantcloud.com/duffy/boxes/xenserver. Эта среда предоставляет xenserver внутри виртуального бокса.
Начать можно с:
$ mkdir myxenproject
$ cd myxenproject
$ vagrant init duffy/xenserver
$ vagrant up
Однако, если вы хотите предоставить xenserver гостевые экземпляры виртуальных машин тогда этот ответ вам не поможет :(