Abordagem para mapear usuários personalizados com OpenStack

Abordagem para mapear usuários personalizados com OpenStack

Estou tentando construir um aplicativo simples onde os usuários criam suas próprias instâncias (vms) e eu cobro pelo tempo de faturamento (semelhante ao DO). Meu aplicativo usa OpenStack como back-end para fazer todo o trabalho pesado.

A questão é sobre a melhor abordagem para associar usuários do meu aplicativo à minha implantação do OpenStack.

Devo mapear cada usuário em meu aplicativo para um usuário/projeto no OpenStack? devo mapear todos os usuários do meu aplicativo para um único projeto no OpenStack? qual a melhor forma de fazer isso considerando a necessidade de obter informações de uso para as instâncias cobrarem do usuário?

Responder1

Duas considerações:

  • Faça a si mesmo a pergunta:

    • seus usuários só precisam de acesso à VM e ao seu aplicativo?

      E seu aplicativo fará as chamadas de API relevantes para seus usuários (como power off, por exemplo power on, rebootVM).
      Então, seu aplicativo poderá ser muito mais simples, pois você só precisará manter funções e controles de acesso lá.

    • Ou você permitirá que seus próprios usuários acessem diretamente o painel da API OpenStack/Horizonte?
      Porque então um maior isolamento entre seus usuários no nível OpenStack será essencial e fornecer a cada usuário final seu próprio projeto seria a única coisa que faria sentido.

  • Nem toda implantação do OpenStack oferece/habilita os mesmos recursos, então primeiro explore o que é possível para você. Você pode instalar recursos? O ceilometer está disponível para você ou você precisará fazer seu próprio rastreamento de uso de recursos para ativar o faturamento?

informação relacionada