Установка и вызов двоичных файлов Juju

Установка и вызов двоичных файлов Juju

Возможно ли с помощью charm попросить juju запустить другую машину, добавить экземпляры службы или уничтожить экземпляры? Например, сделав что-то похожее на juju gui: как juju gui выполняет создание машин, например? Мне бы хотелось иметь службу, которая отслеживает другие службы и добавляет экземпляры для масштабирования, например.

решение1

Это возможно несколькими способами.

Установка и вызов двоичных файлов Juju

Charms.reactive слой наhttps://github.com/galgalesh/juju-clientделает это. Основной процесс заключается в том, чтобы сначала загрузить среду, затем развернуть charm, передавая все файлы конфигурации, состояния и секретов, необходимые для управления средой. Charm устанавливает клиент juju, перестраивает ~/.juju и теперь может управлять средой изнутри.

Этот слой все еще экспериментальный. Если у вас возникнут какие-либо проблемы, отправьте отчет об ошибке в репозиторий github.

Использование клиента Python Juju

EстьКлиент Python для управления средами Juju. Этот клиент вызывает Juju api. Вы можете поместить это в Charm.

Использование API Go

API Go можно найти здесь:https://godoc.org/github.com/juju/juju/api

Использование привязок Perl

Если вам нравятся такие вещи:https://metacpan.org/release/Juju

Вызов API напрямую

Более подробную информацию по этому вопросу см. в этом вопросе:Существует ли API Juju REST?

Связанный контент