GUI Juju (fonte: lp: juju-gui ; ao vivo demonstração ) permite que você implante serviços em um ambiente Juju através de uma web navegador. É um software gratuito com licença AGPL v3 , para que você possa provavelmente bifurcá-lo e modificá-lo conforme necessário, se não atender às suas necessidades. Para usá-lo, você precisará implantá-lo em seu ambiente e expô-lo. Veja as instruções de implantação .
Se isso não for adequado ao seu propósito, você pode usar o websocket Juju e a API baseada em HTTPS diretamente (isso é o que a GUI faz do JavaScript). A documentação sobre isso não é muito polida e é mais autogerada das fontes Go. Há alguma documentação concisa para desenvolvedores em fonte juju-core .
Ainda outra opção para implantações automatizadas / com script (não baseadas na Web) com o Juju é o Juju Deployer baseado em Python.
O conceito de permissões baseadas em funções e várias contas de usuários ainda não é suportado pelo Juju, mas está planejado. Assim, o Juju não pode ajudar diretamente com o gerenciamento de contas de usuários para seus clientes, exceto, talvez, se você escrever os encantos personalizados que fornecem isso.
A Juju API funciona em um websocket com solicitações / respostas codificadas em JSON. Ele foi projetado para ser independente de idioma. Atualmente existem clientes para ele em Go, JavaScript e Python, mas não como bibliotecas independentes, mas como partes de outros produtos (juju-core, GUI e Deployer, respectivamente).
Por último, cada ambiente Juju é específico para um único provedor de nuvem. Portanto, para escolher onde implantar um serviço, você precisará gerar a configuração para a nuvem pública escolhida em environments.yaml, depois inicializá-la (por cliente) e, finalmente, implantar o (s) serviço (s). Uma ideia interessante é o provisionamento manual , que permite adicionar qualquer máquina existente a um ambiente, desde que como você pode se conectar a ele usando SSH e a máquina pode se conectar de volta ao nó do servidor de estado (e também às outras máquinas, se você estiver adicionando relações a ele).
Então, mesmo que Juju possa ajudá-lo com as implantações e a orquestração, uma boa quantidade de "cola" deve ser construída de forma personalizada para permitir esse tipo de solução hospedada que você pretende fornecer para finalizar. usuários.