Como configurar o RabbitMQ como um serviço fornecido pelo usuário

Este documento mostra como vincular um app a uma instância do RabbitMQ não listada no marketplace do Kf (incluindo o click-to-deploy no Marketplace do RabbitMQ com o Spring Cloud Foundry Connector). Isso faz com que as credenciais do RabbitMQ sejam injetadas no app, assim como a vinculação aos serviços sejam provisionadas pelos planos do Marketplace.

Antes de começar

  • Verifique se o RabbitMQ está instalado e acessível pelo cluster do Kf.
  • Verifique se o RabbitMQ já foi configurado para o app.
  • Verifique se você segmentou o Space que está executando o app.

Criar a instância fornecida pelo usuário

Para que o Kf vincule um app à instância do RabbitMQ, a variável de ambiente mínima tem que ser o URI (por exemplo, amqp://username:password@host:port/vhost?query). Outros pares de chave-valor poderão ser incluídos, se você quiser. A documentação do RabbitMQ pode ajudar na criação de uma string de URI. O exemplo a seguir deve ser suficiente para implantações básicas.

kf cups service-instance-name -p '{"uri":"amqp://username:password@rabbitmq-host:5672"}' -t "rabbitmq"

Vincular o app

Agora que o serviço fornecido pelo usuário foi criado, você pode vincular um app ao nome da instância:

kf bind-service application-name service-instance-name

Reinicie o app para que as alterações entrem em vigor:

kf restart application-name

É possível confirmar as novas variáveis de ambiente que estão sendo fornecidas ao app:

kf vcap-services application-name

Atualizar a instância fornecida pelo usuário

Se houver alterações no ambiente (por exemplo, atualização de senha ou host no URI ou o acréscimo de novos pares de chave-valor) que precisem ser transmitidas para qualquer app vinculado a ele, será possível atualizar a instância fornecida pelo usuário.

kf uups service-instance-name -p '{"uri":"new-uri", "some-new-key": "some-new-value"}'

Documentos relacionados