[openstack-dev] [Congress][olso][oslo.messaging] Dynamically Determine Rabbit Transport URL?

Clint Byrum clint at fewbar.com
Mon Feb 6 22:03:21 UTC 2017


Excerpts from Jay Pipes's message of 2017-02-06 16:23:51 -0500:
> On 02/06/2017 04:09 PM, Aimee Ukasick wrote:
> > Thanks, Clint, for your quick response. Questions inline.
> > On 02/06/2017 01:32 PM, Clint Byrum wrote:
> >> Excerpts from Aimee Ukasick's message of 2017-02-06 12:57:28 -0600:
> >>> Hi everyone - from the Congress standalone installation guide
> >>> (http://docs.openstack.org/developer/congress/README.html#installing-congress):
> >>>
> >>> ---
> >>> To use RabbitMQ with Congress, set the transport_url in the “From
> >>> oslo.messaging” section according to your setup:
> >>> transport_url = rabbit://$RABBIT_USERID:$RABBIT_PASSWORD@$RABBIT_HOST:5672
> >>> ---
> >>>
> >>> Is there a CLI or API call to determine the Rabbit userID, password,
> >>> host, and port from a running OpenStack installation? My colleague and I
> >>> are working on standalone Congress installation scripts (bash), and we
> >>> are trying to figure how to dynamically determine the RABBIT_USERID,
> >>> RABBIT_PASSWORD, RABBIT_HOST, and port.  We really don't want to resort
> >>> to pulling the transport URL out of another service's conf file
> >>> (nova.conf, heat.conf, keystone.conf, etc).
> >>>
> >>> There is a rabbitmqctl
> >>> https://www.rabbitmq.com/man/rabbitmqctl.1.man.html  but that doesn't
> >>> have the commands for finding userID, password, host, and port.
> >
> >>
> >> Those conf files get it from the same place you should: Config
> >> management. You need to inject it into your bash however you inject
> >> details of the environment into anything else.
> >>
> >
> > I'm relatively new to OpenStack, so please pardon my ignorance. What do
> > you mean by config management? We don't have any details about how
> > OpenStack has been installed - it may have been installed by an OPNFV
> > Installer, an OpenStack installer, or some other way. We are looking for
> > an installer-agnostic means of determining: 1) where Rabbit is installed
> > and running as a service (rabbit_host); and 2) how to obtain the rabbit
> > UserID and password so we can configure the transport_url.
> >
> > Also, my colleague and I can't assume that Congress or Tacker or another
> > OpenStack service is going to be installed on the Controller node. What
> > if we are installing the OpenStack service in a Docker container that's
> > not on the Controller? We aren't OpenStack experts, so any guidance is
> > greatly appreciated.
> 
> Hi Aimee,
> 
> I think what Clint is saying is that storing and retrieving the 
> configuration information for things like rabbitmq (or databases and 
> things like that) is not in the purview of OpenStack itself, but rather 
> is the responsibility of the tooling that you used to deploy OpenStack 
> (and other applications) in your environment.
> 
> Whether it's Chef, Puppet, SaltStack, Ansible, or any other 
> configuration management tool, each one generally has one or more 
> methods to grab and store sensitive configuration information. Same for 
> things like Kubernetes and Terraform. Each uses different ways of 
> storing and distributing that information.
> 
> Depending on how your infrastructure was deployed, you will need to use 
> the method appropriate to that configuration management system.

^^ yeah, what Jay said.



More information about the OpenStack-dev mailing list