Назад | Перейти на главную страницу

Как выполнять удаленные вызовы с сервера A на сервер B для создания виртуальных машин

Это мой первый вопрос о serverfault, поэтому я надеюсь, что все делаю правильно, поскольку обычно использую Stackoverflow :-)

У меня есть два сервера Ubuntu 14.04 LTS, сервер A и B.

На сервере A работает веб-сервер, на котором работает мой клиентский портал и где клиенты могут заказывать виртуальные машины.

Сервер B - это гипервизор с KVM, на котором создаются образы и в конечном итоге виртуальные машины.


Недавно я создал сценарий bash на сервере A, который:

Все эти команды выполняются с использованием SSH. Это означает, что для каждой виртуальной машины мне нужно выполнить 3 команды SSH. Более того, если гипервизору не хватает места на диске для создания образов.


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

Каждый раз, когда клиент нажимает кнопку «Заказать виртуальную машину», выполняется telnet-вызов гипервизора + порт, и демон, прослушивающий этот порт, запускает сценарий, например:

Проблема, однако, в том, что я не знаю таких вещей. Например:


Я мало пробовал, потому что не знаю, с чего начать. Есть над чем подумать, но мне просто нужен небольшой толчок в правильном направлении, чтобы начать работу. Мне не обязательно нужен пример кода (конечно, он может помочь). При необходимости я могу предоставить созданный мной сценарий bash.

Не изобретайте велосипед. Просто используйте libvirt и языковые привязки на ваш выбор.