On 10/10/2013 06:16 PM, Neal, Phil wrote: > Greetings all, I'm looking at how to expand the ability of our CM > instance to consume notifications and have a quick question about > the configuration and flow... > > For the notifications central agent , we rely on the services (i.e. > glance, cinder) to drop messages on the same messaging host as used > by Ceilometer. From there the listener picks it up and cycles through > the plugin logic to convert it to a sample. It's apparent that we > can't pass an alternate hostname via the control_exchange values, so > is there another method for harvesting messages off of other > instances (e.g. another compute node)?
Hey Phil, You don't really need to specify the exchange name to consume notifications. It will default to the control-exchange if not specified anyway. How it works isn't so obvious. Depending on the priority of then notification the oslo notifier will publish on <topic>.<priority> using the service's control-exchange. If that queue doesn't exist it'll create it and bind the control-exchange to it. This is so we can publish even if there are no consumers yet. Oslo.rpc creates a 1:1 mapping of routing_key and queue to topic (no wildcards). So we get <exchange:<service>> -> binding: routing_key "<topic>.<priority>" -> queue "<topic>.<priority>" (essentially, 1 queue per priority) Which is why, if you want to enable services to generate notifications, you just have to set the driver and the topic(s) to publish on. Exchange is implied and routing key/queue are inferred from topic. Likewise we only have to specify the queue name to consume, since we only need an exchange to publish. I have a bare-bones oslo notifier consumer and client here if you want to mess around with it (and a bare-bones kombu version in the parent). https://github.com/SandyWalsh/amqp_sandbox/tree/master/oslo Not sure if that answered your question or made it worse? :) Cheers -S > > > - Phil > > _______________________________________________ OpenStack-dev mailing > list OpenStack-dev@lists.openstack.org > http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev > _______________________________________________ OpenStack-dev mailing list OpenStack-dev@lists.openstack.org http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev