summaryrefslogtreecommitdiff
path: root/docker/fluentd
diff options
context:
space:
mode:
authorRadosław Piliszek <radoslaw.piliszek@gmail.com>2021-12-28 09:50:41 +0000
committerRadosław Piliszek <radoslaw.piliszek@gmail.com>2021-12-29 10:39:56 +0000
commit79b74ff220aad8db98c10c124064c85d21e2d4ea (patch)
tree20b3e53b486e782bb182f8442cf39b3d4f2a6254 /docker/fluentd
parent4b0d8d4d478de4ad6ba697e766920a46cb7267df (diff)
downloadkolla-79b74ff220aad8db98c10c124064c85d21e2d4ea.tar.gz
kolla-79b74ff220aad8db98c10c124064c85d21e2d4ea.zip
Clean up fluentd image recipe
Since Xena, there is no arch supported other than x86_64 and aarch64. Additionally, the conditional for x86_64 Debian does not seem to be needed now with current td-agent. Moreover, drop two plugins that are relevant only to fluentd 0.12, one of which (parser) causes fluentd 0.12 (!) to be installed. Modern fluentd has both built-in. Finally, drop the labels as they are no longer useful. Depends-On: https://review.opendev.org/c/openstack/kolla-ansible/+/823093 Depends-On: https://review.opendev.org/c/openstack/kolla-ansible/+/823094 Change-Id: I7326cd8fcfa459dedcb6404e5287f0f5aeeed6cb
Diffstat (limited to 'docker/fluentd')
-rw-r--r--docker/fluentd/Dockerfile.j281
1 files changed, 15 insertions, 66 deletions
diff --git a/docker/fluentd/Dockerfile.j2 b/docker/fluentd/Dockerfile.j2
index 2469ae99e..90eaa45b5 100644
--- a/docker/fluentd/Dockerfile.j2
+++ b/docker/fluentd/Dockerfile.j2
@@ -2,16 +2,8 @@ FROM {{ namespace }}/{{ infra_image_prefix }}base:{{ tag }}
{% block labels %}
LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build_date }}"
{% endblock %}
-{% if base_package_type == 'rpm' and base_arch not in ['aarch64', 'x86_64'] %}
-LABEL fluentd_version="0.12" fluentd_binary="fluentd"
- {% set fluentd_user = 'fluentd' %}
-{% elif base_package_type == 'deb' and base_arch not in ['aarch64', 'x86_64'] %}
-LABEL fluentd_version="0.14" fluentd_binary="fluentd"
- {% set fluentd_user = 'fluentd' %}
-{% else %}
-LABEL fluentd_version="0.14" fluentd_binary="td-agent"
- {% set fluentd_user = 'td-agent' %}
-{% endif %}
+
+{% set fluentd_user = 'td-agent' %}
{% block fluentd_header %}{% endblock %}
@@ -21,55 +13,26 @@ LABEL fluentd_version="0.14" fluentd_binary="td-agent"
{% if base_package_type == 'rpm' %}
+ # FIXME(mgoddard): Pinning to 4.0.* to avoid bug 1930867.
{% set fluentd_packages = [
'gcc-c++',
- 'make'
+ 'make',
+ 'td-agent-4.0.*',
] %}
- {% if base_arch in ['aarch64', 'x86_64'] %}
- # FIXME(mgoddard): Pinning to 4.0.* to avoid bug 1930867.
- {% set fluentd_packages = fluentd_packages + [
- 'td-agent-4.0.*'
- ] %}
- {% else %}
- {% set fluentd_packages = fluentd_packages + [
- 'fluentd',
- 'ruby-devel',
- 'rubygem-fluent-plugin-elasticsearch',
- 'rubygem-fluent-plugin-grok-parser',
- 'rubygem-fluent-plugin-rewrite-tag-filter'
- ] %}
- {% endif %}
-
{% elif base_package_type == 'deb' %}
{% set fluentd_packages = [
'g++',
- 'make'
+ 'make',
+ 'td-agent',
] %}
- {% if base_arch in ['aarch64', 'x86_64'] %}
- {% set fluentd_packages = fluentd_packages + [
- 'td-agent'
- ] %}
- {% else %}
- {% set fluentd_packages = fluentd_packages + [
- 'ruby',
- 'ruby-dev'
- ] %}
- {% endif %}
-
{% endif %}
{{ macros.configure_user(name=fluentd_user, groups='mysql') }}
{{ macros.install_packages(fluentd_packages | customizable("packages")) }}
-# Distro specific files and operations
-# Fluentd on rpm-based non-x86_64 is installed from rpm
-{% if base_package_type == 'deb' and fluentd_binary == 'fluentd' %}
-RUN /usr/bin/gem install fluentd --no-rdoc --no-ri
-{% endif %}
-
COPY fluentd_sudoers /etc/sudoers.d/kolla_fluentd_sudoers
RUN chmod 440 /etc/sudoers.d/kolla_fluentd_sudoers \
@@ -82,24 +45,14 @@ RUN chmod 755 /usr/local/bin/kolla_extend_start
{% block fluentd_plugins_install %}
-{% if base_arch in ['aarch64', 'x86_64'] %}
- {% set fluentd_plugins = [
- 'fluent-plugin-elasticsearch',
- 'fluent-plugin-grep',
- 'fluent-plugin-grok-parser',
- 'fluent-plugin-parser',
- 'fluent-plugin-prometheus',
- 'fluent-plugin-rewrite-tag-filter',
- ] %}
-{% endif %}
-
-# NOTE(hrw): one of plugins fetches 'string-scrub' which tries to use
-# /usr/bin/mkdir directly while in Debian it is in /bin
-{% if base_distro == 'debian' and base_arch == 'x86_64' %}
-RUN ln -s /bin/mkdir /usr/bin/mkdir
-{% endif %}
+{% set fluentd_plugins = [
+ 'fluent-plugin-elasticsearch',
+ 'fluent-plugin-grok-parser',
+ 'fluent-plugin-prometheus',
+ 'fluent-plugin-rewrite-tag-filter',
+] %}
-{{ macros.install_fluent_plugins(fluentd_user, fluentd_plugins | customizable("plugins")) }}
+{{ macros.install_fluent_plugins(fluentd_plugins | customizable("plugins")) }}
{% endblock %}
@@ -111,12 +64,8 @@ ARG monasca_output_plugin_url=https://github.com/monasca/fluentd-monasca/archive
RUN curl $monasca_output_plugin_url -o /tmp/fluentd-monasca.tar.gz \
&& tar -xvf /tmp/fluentd-monasca.tar.gz -C /tmp \
&& cd /tmp/fluentd-monasca-* \
-{%- if fluentd_user == 'fluentd' %}
- && gem build fluentd-monasca-output.gemspec \
-{%- else %}
&& td-agent-gem build fluentd-monasca-output.gemspec \
-{%- endif %}
- && {{ macros.install_fluent_plugins(fluentd_user, ['fluentd-monasca-output-*.gem'], chain=True) }} \
+ && {{ macros.install_fluent_plugins(['fluentd-monasca-output-*.gem'], chain=True) }} \
&& rm -rf /tmp/fluentd*
{% endblock %}