Você precisa criar um arquivo simplestreams para sua nuvem. A maneira mais simples, por enquanto, é usar o comando juju image-metadata.
Dependendo da sua versão do juju-core, será juju image-metadata
ou juju-metadata generate-image
. Os parâmetros são os mesmos e espero que sejam autoexplicativos. Você pode criar seu arquivo openrc.sh
antes de executá-lo e ele precisará da maioria dos parâmetros do ambiente.
Você precisa ter uma imagem já carregada em sua nuvem. Veja a saída do comando glance list
e escolha uma imagem precisa de 64bits .
O comando de metadados fornecerá dois arquivos: index.json e imagemetadata.json. Você precisa fazer o upload deles para um intervalo chamado juju-dist e um caminho chamado streams / v1. Assim:
Primeiro, crie o intervalo:
swift post juju-dist
Agora, forneça as ACLs adequadas:
swift post juju-dist -r '.r:*'
E agora faça o upload dos arquivos gerados:
swift upload juju-dist/streams/v1 imagemetadata.json index.json
Agora, aponte seu parâmetro public-bucket-uri
config do arquivo environments.yaml para seu URL de armazenamento de objeto. Para encontrá-lo, execute keystone catalog
e procure o publicURL
address no bloco Service: object-store
. Isso é o que você colocará no seu parâmetro juju public-bucket-url
config.
Agora você deve ser capaz de inicializar o juju com uma imagem precisa de 64 bits (use series: precise
no seu arquivo environments.yaml
), assumindo que você tenha cuidado das ferramentas.
Mais informações: