Qpid dispatch router composable role
Note: since it replaces rabbitmq, in order to aim for the smallest amount of changes the service_name is called 'rabbitmq' so all the other services do not need additional logic to use qdr. Depends-On: Idecbbabdd4f06a37ff0cfb34dc23732b1176a608 Change-Id: I27f01d2570fa32de91ffe1991dc873cdf2293dbc
This commit is contained in:
parent
0ae9d9b346
commit
1ca3c2c4b0
2
environments/services/qdr.yaml
Normal file
2
environments/services/qdr.yaml
Normal file
@ -0,0 +1,2 @@
|
||||
resource_registry:
|
||||
OS::TripleO::Services::Qdr: ../../puppet/services/qdr.yaml
|
@ -67,6 +67,7 @@ parameters:
|
||||
HorizonNetwork: internal_api
|
||||
MemcachedNetwork: internal_api
|
||||
RabbitmqNetwork: internal_api
|
||||
QdrNetwork: internal_api
|
||||
RedisNetwork: internal_api
|
||||
MysqlNetwork: internal_api
|
||||
CephClusterNetwork: storage_mgmt
|
||||
|
@ -168,6 +168,7 @@ resource_registry:
|
||||
OS::TripleO::Services::PacemakerRemote: OS::Heat::None
|
||||
OS::TripleO::Services::NeutronSriovAgent: OS::Heat::None
|
||||
OS::TripleO::Services::RabbitMQ: puppet/services/rabbitmq.yaml
|
||||
OS::TripleO::Services::Qdr: OS::Heat::None
|
||||
OS::TripleO::Services::HAproxy: puppet/services/haproxy.yaml
|
||||
OS::TripleO::Services::HAProxyPublicTLS: OS::Heat::None
|
||||
OS::TripleO::Services::HAProxyInternalTLS: OS::Heat::None
|
||||
|
60
puppet/services/qdr.yaml
Normal file
60
puppet/services/qdr.yaml
Normal file
@ -0,0 +1,60 @@
|
||||
heat_template_version: ocata
|
||||
|
||||
description: >
|
||||
Qpid dispatch router service configured with Puppet
|
||||
|
||||
parameters:
|
||||
ServiceNetMap:
|
||||
default: {}
|
||||
description: Mapping of service_name -> network name. Typically set
|
||||
via parameter_defaults in the resource registry. This
|
||||
mapping overrides those in ServiceNetMapDefaults.
|
||||
type: json
|
||||
DefaultPasswords:
|
||||
default: {}
|
||||
type: json
|
||||
EndpointMap:
|
||||
default: {}
|
||||
description: Mapping of service endpoint -> protocol. Typically set
|
||||
via parameter_defaults in the resource registry.
|
||||
type: json
|
||||
RabbitUserName:
|
||||
default: guest
|
||||
description: The username for Qdr
|
||||
type: string
|
||||
RabbitPassword:
|
||||
description: The password for Qdr
|
||||
type: string
|
||||
hidden: true
|
||||
RabbitClientPort:
|
||||
description: Listening port for Qdr
|
||||
default: 5672
|
||||
type: number
|
||||
MonitoringSubscriptionQdr:
|
||||
default: 'overcloud-qdr'
|
||||
type: string
|
||||
|
||||
outputs:
|
||||
role_data:
|
||||
description: Role data for the Qdr role.
|
||||
value:
|
||||
service_name: rabbitmq
|
||||
monitoring_subscription: {get_param: MonitoringSubscriptionQdr}
|
||||
global_config_settings:
|
||||
messaging_notify_service_name: 'amqp'
|
||||
messaging_rpc_service_name: 'amqp'
|
||||
keystone::messaging::amqp::amqp_pre_settled: 'notify'
|
||||
config_settings:
|
||||
tripleo.rabbitmq.firewall_rules:
|
||||
'109 qdr':
|
||||
dport:
|
||||
- {get_param: RabbitClientPort}
|
||||
qdr::listener_addr: {get_param: [ServiceNetMap, QdrNetwork]}
|
||||
# cannot pass qdr::listener_port directly because it needs to be a string
|
||||
# we do the conversion in the puppet layer
|
||||
tripleo::profile::base::qdr::qdr_listener_port: {get_param: RabbitClientPort}
|
||||
tripleo::profile::base::qdr::qdr_username: {get_param: RabbitUserName}
|
||||
tripleo::profile::base::qdr::qdr_password: {get_param: RabbitPassword}
|
||||
|
||||
step_config: |
|
||||
include ::tripleo::profile::base::qdr
|
8
releasenotes/notes/add-qdr-99a27dffef42c13e.yaml
Normal file
8
releasenotes/notes/add-qdr-99a27dffef42c13e.yaml
Normal file
@ -0,0 +1,8 @@
|
||||
---
|
||||
features:
|
||||
- Introduce the ability to deploy the qpid-dispatch-router (Qdr) for
|
||||
the oslo.messaging AMQP 1.0 driver backend. The Qdr provides
|
||||
direct messaging (e.g. brokerless) communications for
|
||||
oslo.messaging services. To facilitate simple use for evaluation
|
||||
in an overcloud deployment, the Qdr aliases the RabbitMQ service
|
||||
to provide the messaging backend.
|
@ -212,8 +212,10 @@ def validate(filename):
|
||||
% filename)
|
||||
return 1
|
||||
|
||||
# qdr aliases rabbitmq service to provide alternative messaging backend
|
||||
if (filename.startswith('./puppet/services/') and
|
||||
filename != './puppet/services/services.yaml'):
|
||||
filename not in ['./puppet/services/services.yaml',
|
||||
'./puppet/services/qdr.yaml']):
|
||||
retval = validate_service(filename, tpl)
|
||||
|
||||
if (filename.startswith('./docker/services/') and
|
||||
|
Loading…
Reference in New Issue
Block a user