Merge "Add qdrouterd role for rpc messaging backend deployment"
This commit is contained in:
commit
af4ef51f1e
@ -154,6 +154,10 @@
|
|||||||
scm: git
|
scm: git
|
||||||
src: https://git.openstack.org/openstack/openstack-ansible-plugins
|
src: https://git.openstack.org/openstack/openstack-ansible-plugins
|
||||||
version: master
|
version: master
|
||||||
|
- name: qdrouterd
|
||||||
|
scm: git
|
||||||
|
src: https://git.openstack.org/openstack/ansible-role-qdrouterd
|
||||||
|
version: master
|
||||||
- name: rabbitmq_server
|
- name: rabbitmq_server
|
||||||
scm: git
|
scm: git
|
||||||
src: https://git.openstack.org/openstack/openstack-ansible-rabbitmq_server
|
src: https://git.openstack.org/openstack/openstack-ansible-rabbitmq_server
|
||||||
|
3
etc/openstack_deploy/conf.d/qdrouterd.yml.aio
Normal file
3
etc/openstack_deploy/conf.d/qdrouterd.yml.aio
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
oslomsg-rpc_hosts:
|
||||||
|
aio1:
|
||||||
|
ip: 172.29.236.100
|
36
inventory/env.d/qdrouterd.yml
Normal file
36
inventory/env.d/qdrouterd.yml
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
---
|
||||||
|
# Copyright 2018, Red Hat, Inc.
|
||||||
|
#
|
||||||
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
# you may not use this file except in compliance with the License.
|
||||||
|
# You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing, software
|
||||||
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
# See the License for the specific language governing permissions and
|
||||||
|
# limitations under the License.
|
||||||
|
|
||||||
|
component_skel:
|
||||||
|
qdrouterd:
|
||||||
|
belongs_to:
|
||||||
|
- qdrouterd_all
|
||||||
|
|
||||||
|
|
||||||
|
container_skel:
|
||||||
|
qdrouterd_container:
|
||||||
|
belongs_to:
|
||||||
|
- oslomsg-rpc_containers
|
||||||
|
contains:
|
||||||
|
- qdrouterd
|
||||||
|
|
||||||
|
|
||||||
|
physical_skel:
|
||||||
|
oslomsg-rpc_containers:
|
||||||
|
belongs_to:
|
||||||
|
- all_containers
|
||||||
|
oslomsg-rpc_hosts:
|
||||||
|
belongs_to:
|
||||||
|
- hosts
|
@ -39,3 +39,15 @@ memcached_servers: >-
|
|||||||
| list
|
| list
|
||||||
| join(',')
|
| join(',')
|
||||||
}}
|
}}
|
||||||
|
|
||||||
|
## Qdrouterd options
|
||||||
|
qdrouterd_host_group: "qdrouterd_all"
|
||||||
|
qdrouterd_port: "{{ (qdrouterd_use_ssl | bool) | ternary(31459, 31460) }}"
|
||||||
|
|
||||||
|
qdrouterd_use_ssl: False
|
||||||
|
qdrouterd_servers: >-
|
||||||
|
{{
|
||||||
|
groups[qdrouterd_host_group]
|
||||||
|
| map('extract', hostvars, 'ansible_host')
|
||||||
|
| list | join(',')
|
||||||
|
}}
|
||||||
|
@ -14,14 +14,14 @@
|
|||||||
|
|
||||||
## Main
|
## Main
|
||||||
# RPC
|
# RPC
|
||||||
oslomsg_rpc_transport: rabbit
|
oslomsg_rpc_transport: "{{ (groups[qdrouterd_host_group] | length > 0) | ternary('amqp', 'rabbit') }}"
|
||||||
oslomsg_rpc_port: "{{ rabbitmq_port }}"
|
oslomsg_rpc_port: "{{ (groups[qdrouterd_host_group] | length > 0) | ternary(qdrouterd_port, rabbitmq_port) }}"
|
||||||
oslomsg_rpc_servers: "{{ rabbitmq_servers }}"
|
oslomsg_rpc_servers: "{{ (groups[qdrouterd_host_group] | length > 0) | ternary(qdrouterd_servers, rabbitmq_servers) }}"
|
||||||
oslomsg_rpc_use_ssl: "{{ rabbitmq_use_ssl }}"
|
oslomsg_rpc_use_ssl: "{{ (groups[qdrouterd_host_group] | length > 0) | ternary(qdrouterd_use_ssl, rabbitmq_use_ssl) }}"
|
||||||
oslomsg_rpc_host_group: "{{ rabbitmq_host_group }}"
|
oslomsg_rpc_host_group: "{{ (groups[qdrouterd_host_group] | length > 0) | ternary(qdrouterd_host_group, rabbitmq_host_group) }}"
|
||||||
|
|
||||||
# Notify
|
# Notify
|
||||||
oslomsg_notify_transport: rabbit
|
oslomsg_notify_transport: "{{ (groups[rabbitmq_host_group] | length > 0) | ternary('rabbit', 'none') }}"
|
||||||
oslomsg_notify_port: "{{ rabbitmq_port }}"
|
oslomsg_notify_port: "{{ rabbitmq_port }}"
|
||||||
oslomsg_notify_servers: "{{ rabbitmq_servers }}"
|
oslomsg_notify_servers: "{{ rabbitmq_servers }}"
|
||||||
oslomsg_notify_use_ssl: "{{ rabbitmq_use_ssl }}"
|
oslomsg_notify_use_ssl: "{{ rabbitmq_use_ssl }}"
|
||||||
|
@ -18,6 +18,8 @@ hosts
|
|||||||
|
|
||||||
[memcached]
|
[memcached]
|
||||||
|
|
||||||
|
[qdrouterd_all]
|
||||||
|
|
||||||
[rabbitmq_all]
|
[rabbitmq_all]
|
||||||
|
|
||||||
[repo_all]
|
[repo_all]
|
||||||
|
53
playbooks/qdrouterd-install.yml
Normal file
53
playbooks/qdrouterd-install.yml
Normal file
@ -0,0 +1,53 @@
|
|||||||
|
---
|
||||||
|
# Copyright 2018, Red Hat, Inc.
|
||||||
|
#
|
||||||
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
# you may not use this file except in compliance with the License.
|
||||||
|
# You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing, software
|
||||||
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
# See the License for the specific language governing permissions and
|
||||||
|
# limitations under the License.
|
||||||
|
|
||||||
|
- name: Create and configure qdrouterd container
|
||||||
|
hosts: "{{ qdrouterd_host_group | default('qdrouterd_all') }}"
|
||||||
|
serial: 1
|
||||||
|
gather_facts: "{{ osa_gather_facts | default(True) }}"
|
||||||
|
user: root
|
||||||
|
environment: "{{ deployment_environment_variables | default({}) }}"
|
||||||
|
tags:
|
||||||
|
- qdrouterd
|
||||||
|
pre_tasks:
|
||||||
|
- include_tasks: "common-tasks/os-{{ container_tech | default('lxc') }}-container-setup.yml"
|
||||||
|
vars:
|
||||||
|
extra_container_config_no_restart:
|
||||||
|
- "lxc.start.order=19"
|
||||||
|
when: not is_metal
|
||||||
|
|
||||||
|
- include_tasks: common-tasks/unbound-clients.yml
|
||||||
|
when:
|
||||||
|
- hostvars['localhost']['resolvconf_enabled'] | bool
|
||||||
|
roles:
|
||||||
|
- role: "system_crontab_coordination"
|
||||||
|
|
||||||
|
|
||||||
|
- name: Install qdrouterd server
|
||||||
|
hosts: "{{ qdrouterd_host_group | default('qdrouterd_all') }}"
|
||||||
|
serial: 20%
|
||||||
|
user: root
|
||||||
|
environment: "{{ deployment_environment_variables | default({}) }}"
|
||||||
|
tags:
|
||||||
|
- qdrouterd
|
||||||
|
roles:
|
||||||
|
- role: "qdrouterd"
|
||||||
|
|
||||||
|
post_tasks:
|
||||||
|
- include_tasks: "common-tasks/rsyslog-client.yml"
|
||||||
|
vars:
|
||||||
|
rsyslog_client_log_rotate_file: qdrouterd_log_rotate
|
||||||
|
rsyslog_client_log_dir: "/var/log/qdrouterd"
|
||||||
|
rsyslog_client_config_name: "99-qdrouterd-rsyslog-client.conf"
|
@ -23,6 +23,7 @@
|
|||||||
- import_playbook: utility-install.yml
|
- import_playbook: utility-install.yml
|
||||||
- import_playbook: memcached-install.yml
|
- import_playbook: memcached-install.yml
|
||||||
- import_playbook: galera-install.yml
|
- import_playbook: galera-install.yml
|
||||||
|
- import_playbook: qdrouterd-install.yml
|
||||||
- import_playbook: rabbitmq-install.yml
|
- import_playbook: rabbitmq-install.yml
|
||||||
- import_playbook: etcd-install.yml
|
- import_playbook: etcd-install.yml
|
||||||
- import_playbook: ceph-install.yml
|
- import_playbook: ceph-install.yml
|
||||||
|
@ -370,7 +370,13 @@ class TestAnsibleInventoryFormatConstraints(unittest.TestCase):
|
|||||||
'orchestration_hosts',
|
'orchestration_hosts',
|
||||||
'os-infra_containers',
|
'os-infra_containers',
|
||||||
'os-infra_hosts',
|
'os-infra_hosts',
|
||||||
|
'oslomsg-rpc_all',
|
||||||
|
'oslomsg-rpc_containers',
|
||||||
|
'oslomsg-rpc_hosts',
|
||||||
'pkg_repo',
|
'pkg_repo',
|
||||||
|
'qdrouterd',
|
||||||
|
'qdrouterd_all',
|
||||||
|
'qdrouterd_container',
|
||||||
'rabbit_mq_container',
|
'rabbit_mq_container',
|
||||||
'rabbitmq',
|
'rabbitmq',
|
||||||
'rabbitmq_all',
|
'rabbitmq_all',
|
||||||
|
@ -152,6 +152,14 @@
|
|||||||
action: deploy
|
action: deploy
|
||||||
scenario: aio_octavia
|
scenario: aio_octavia
|
||||||
|
|
||||||
|
- job:
|
||||||
|
name: openstack-ansible-deploy-aio_qdrouterd-ubuntu-bionic
|
||||||
|
parent: openstack-ansible-deploy-aio
|
||||||
|
nodeset: ubuntu-bionic
|
||||||
|
vars:
|
||||||
|
action: deploy
|
||||||
|
scenario: aio_qdrouterd
|
||||||
|
|
||||||
- job:
|
- job:
|
||||||
name: openstack-ansible-deploy-translations-ubuntu-bionic
|
name: openstack-ansible-deploy-translations-ubuntu-bionic
|
||||||
parent: openstack-ansible-deploy-aio
|
parent: openstack-ansible-deploy-aio
|
||||||
|
@ -33,6 +33,7 @@
|
|||||||
- openstack-ansible-deploy-barbican-ubuntu-bionic
|
- openstack-ansible-deploy-barbican-ubuntu-bionic
|
||||||
- openstack-ansible-deploy-aio_congress-ubuntu-bionic
|
- openstack-ansible-deploy-aio_congress-ubuntu-bionic
|
||||||
- openstack-ansible-deploy-aio_octavia-ubuntu-bionic
|
- openstack-ansible-deploy-aio_octavia-ubuntu-bionic
|
||||||
|
- openstack-ansible-deploy-aio_qdrouterd-ubuntu-bionic
|
||||||
- openstack-ansible-deploy_with_ansible_devel-aio-ubuntu-bionic
|
- openstack-ansible-deploy_with_ansible_devel-aio-ubuntu-bionic
|
||||||
- openstack-ansible-deploy_with_ansible_next-aio-ubuntu-bionic
|
- openstack-ansible-deploy_with_ansible_next-aio-ubuntu-bionic
|
||||||
- openstack-ansible-deploy-blazar-ubuntu-bionic
|
- openstack-ansible-deploy-blazar-ubuntu-bionic
|
||||||
|
Loading…
x
Reference in New Issue
Block a user