Merge "Add qdrouterd container"
This commit is contained in:
commit
e731db2c15
@ -141,7 +141,9 @@ Kolla provides images to deploy the following infrastructure components:
|
||||
- `MongoDB <https://www.mongodb.org/>`__ as a database back end for Ceilometer
|
||||
and Gnocchi.
|
||||
- `Open vSwitch <http://openvswitch.org/>`__ and Linuxbridge back ends for Neutron.
|
||||
- `RabbitMQ <https://www.rabbitmq.com/>`__ as a messaging back end for
|
||||
- `Qdrouterd <https://qpid.apache.org/components/dispatch-router/index.html>`__ as a
|
||||
direct messaging back end for communication between services.
|
||||
- `RabbitMQ <https://www.rabbitmq.com/>`__ as a broker messaging back end for
|
||||
communication between services.
|
||||
- `Telegraf <https://www.docs.influxdata.com/telegraf/>`__ as a plugin-driven server
|
||||
agent for collecting & reporting metrics.
|
||||
|
@ -297,6 +297,7 @@ COPY apt_preferences.{{ base_distro }} /etc/apt/preferences
|
||||
{# 46095ACC8548582C1A2699A9D27D666CD88E42B4 -- Elasticsearch (Elasticsearch Signing Key) <dev_ops@elasticsearch.org> #}
|
||||
{# 4D1BB29D63D98E422B2113B19334A25F8507EFA5 -- Percona MySQL Development Team (Packaging key) <mysql-dev@percona.com> #}
|
||||
{# 58118E89F3A912897C070ADBF76221572C52609D -- Docker Release Tool (releasedocker) <docker@docker.com> #}
|
||||
{# 4D8EB5FDA37AB55F41A135203BF88A0C6A770882 -- Apache Qpid PPA Signing Key <dev@qpid.apache.org> #}
|
||||
{# 901F9177AB97ACBE -- Treasure Data, Inc (Treasure Agent Official Signing key) <support@treasure-data.com> #}
|
||||
{% set base_apt_keys = [
|
||||
'05CE15085FC09D18E99EFB22684A14CF2582E0C5',
|
||||
@ -306,6 +307,7 @@ COPY apt_preferences.{{ base_distro }} /etc/apt/preferences
|
||||
'46095ACC8548582C1A2699A9D27D666CD88E42B4',
|
||||
'4D1BB29D63D98E422B2113B19334A25F8507EFA5',
|
||||
'58118E89F3A912897C070ADBF76221572C52609D',
|
||||
'4D8EB5FDA37AB55F41A135203BF88A0C6A770882',
|
||||
'901F9177AB97ACBE',
|
||||
] %}
|
||||
{% elif base_distro == 'debian' %}
|
||||
|
@ -35,3 +35,6 @@ deb https://packagecloud.io/grafana/stable/debian/ jessie main
|
||||
|
||||
# Fluentd repo
|
||||
deb http://packages.treasuredata.com/2/ubuntu/xenial/ xenial contrib
|
||||
|
||||
# Qdrouterd repo
|
||||
deb http://ppa.launchpad.net/qpid/released/ubuntu/ xenial main
|
||||
|
41
docker/qdrouterd/Dockerfile.j2
Normal file
41
docker/qdrouterd/Dockerfile.j2
Normal file
@ -0,0 +1,41 @@
|
||||
FROM {{ namespace }}/{{ image_prefix }}base:{{ tag }}
|
||||
LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build_date }}"
|
||||
|
||||
{% block qdrouterd_header %}{% endblock %}
|
||||
|
||||
{% import "macros.j2" as macros with context %}
|
||||
|
||||
{{ macros.configure_user(name='qdrouterd') }}
|
||||
|
||||
{% block qdrouterd_install %}
|
||||
{% if base_distro in ['centos', 'oraclelinux', 'rhel'] %}
|
||||
{% set qdrouterd_packages = [
|
||||
'cyrus-sasl-lib',
|
||||
'cyrus-sasl-plain',
|
||||
'qpid-dispatch-router'
|
||||
] %}
|
||||
|
||||
{{ macros.install_packages(qdrouterd_packages | customizable("packages")) }}
|
||||
|
||||
{% elif base_distro in ['debian', 'ubuntu'] %}
|
||||
{% set qdrouterd_packages = [
|
||||
'sasl2-bin',
|
||||
'libpython2.7',
|
||||
'qdrouterd',
|
||||
] %}
|
||||
|
||||
{{ macros.install_packages(qdrouterd_packages | customizable("packages")) }}
|
||||
|
||||
{% endif %}
|
||||
{% endblock %}
|
||||
|
||||
COPY extend_start.sh /usr/local/bin/kolla_extend_start
|
||||
COPY qdrouterd_sudoers /etc/sudoers.d/kolla_qdrouterd_sudoers
|
||||
RUN chmod 755 /usr/local/bin/kolla_extend_start \
|
||||
&& chmod 750 /etc/sudoers.d \
|
||||
&& chmod 440 /etc/sudoers.d/kolla_qdrouterd_sudoers
|
||||
|
||||
{% block qdrouterd_footer %}{% endblock %}
|
||||
{% block footer %}{% endblock %}
|
||||
|
||||
USER qdrouterd
|
10
docker/qdrouterd/extend_start.sh
Normal file
10
docker/qdrouterd/extend_start.sh
Normal file
@ -0,0 +1,10 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Create log directory, with appropriate permissions
|
||||
QDROUTERD_LOG_DIR="/var/log/kolla/qdrouterd"
|
||||
if [[ ! -d "${QDROUTERD_LOG_DIR}" ]]; then
|
||||
mkdir -p ${QDROUTERD_LOG_DIR}
|
||||
fi
|
||||
if [[ $(stat -c %a ${QDROUTERD_LOG_DIR}) != "755" ]]; then
|
||||
chmod 755 ${QDROUTERD_LOG_DIR}
|
||||
fi
|
1
docker/qdrouterd/qdrouterd_sudoers
Normal file
1
docker/qdrouterd/qdrouterd_sudoers
Normal file
@ -0,0 +1 @@
|
||||
%kolla ALL=(root) NOPASSWD: /usr/bin/chown -R qdrouterd\: /var/lib/qdrouterd, /bin/chown -R qdrouterd\: /var/lib/qdrouterd
|
@ -70,6 +70,7 @@ _PROFILE_OPTS = [
|
||||
'mongodb',
|
||||
'opendaylight',
|
||||
'openvswitch',
|
||||
'qdrouterd',
|
||||
'rabbitmq',
|
||||
'redis',
|
||||
'tgtd',
|
||||
@ -848,6 +849,10 @@ USERS = {
|
||||
'dragonflow-user': {
|
||||
'uid': 42464,
|
||||
'gid': 42464,
|
||||
},
|
||||
'qdrouterd-user': {
|
||||
'uid': 42465,
|
||||
'gid': 42465,
|
||||
}
|
||||
}
|
||||
|
||||
|
6
releasenotes/notes/add-qdrouterd-4676f6cad921a3f8.yaml
Normal file
6
releasenotes/notes/add-qdrouterd-4676f6cad921a3f8.yaml
Normal file
@ -0,0 +1,6 @@
|
||||
---
|
||||
features:
|
||||
- Introduce qdrouterd (dispatch router) infrastructure component for
|
||||
oslo.messaging backend. The AMQP 1.0 oslo.messaging driver supports
|
||||
integration with this high performance AMQP 1.0 message router for
|
||||
RPC messaging backend.
|
Loading…
Reference in New Issue
Block a user