1 配置项
首先需要在/etc/neutron/neutron.conf里增加新的MQ配置信息,例如下:
transport_l2pop_url = rabbit://openstack:for@compute
2 代码修改
在neutron/conf/common.py源码文件里的core_opts增加如下:
cfg.StrOpt('transport_l2pop_url', default=True, help=_("independent rabbit transport for l2 population")),
在neutron/common/rpc.py源码文件里增加2个方法:get_l2pop_client, get_l2pop_server,具体如下:
定义完上述之后,就可以正常使用独立MQ来发送消息了,例如下:
def __init__(self):
target = oslo_messaging.Target(
namespace=constants.RPC_NAMESPACE_RESOURCES)
self.client = n_rpc.get_client(target) --->公共MQ
self.l2pop_client = n_rpc.get_l2pop_client(target) --->独立MQ
可以按需使用公共MQ以及独立MQ来发送消息了。