Merge "Adds Fluentd docker image required for kolla-kube"
This commit is contained in:
commit
15e686dc9f
@ -17,3 +17,7 @@ heka_image_full: "{{ heka_image }}:{{ heka_tag }}"
|
|||||||
cron_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ kolla_install_type }}-cron"
|
cron_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ kolla_install_type }}-cron"
|
||||||
cron_tag: "{{ openstack_release }}"
|
cron_tag: "{{ openstack_release }}"
|
||||||
cron_image_full: "{{ cron_image }}:{{ cron_tag }}"
|
cron_image_full: "{{ cron_image }}:{{ cron_tag }}"
|
||||||
|
|
||||||
|
fluentd_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ kolla_install_type }}-fluentd"
|
||||||
|
fluentd_tag: "{{ openstack_release }}"
|
||||||
|
fluentd_image_full: "{{ fluentd_image }}:{{ fluentd_tag }}"
|
||||||
|
54
docker/fluentd/Dockerfile.j2
Normal file
54
docker/fluentd/Dockerfile.j2
Normal file
@ -0,0 +1,54 @@
|
|||||||
|
FROM {{ namespace }}/{{ image_prefix }}base:{{ tag }}
|
||||||
|
MAINTAINER {{ maintainer }}
|
||||||
|
|
||||||
|
{% block fluentd_header %}{% endblock %}
|
||||||
|
|
||||||
|
{% import "macros.j2" as macros with context %}
|
||||||
|
|
||||||
|
{% if base_distro in ['centos', 'fedora', 'oraclelinux', 'rhel'] %}
|
||||||
|
|
||||||
|
RUN rpm --import https://packages.treasuredata.com/GPG-KEY-td-agent
|
||||||
|
|
||||||
|
COPY td.repo /etc/yum.repos.d/td.repo
|
||||||
|
|
||||||
|
{% set fluentd_packages = [
|
||||||
|
'td-agent',
|
||||||
|
'gcc-c++',
|
||||||
|
'make'
|
||||||
|
] %}
|
||||||
|
|
||||||
|
{% elif base_distro in ['ubuntu', 'debian'] %}
|
||||||
|
|
||||||
|
RUN curl https://packages.treasuredata.com/GPG-KEY-td-agent | apt-key add - \
|
||||||
|
&& echo "deb http://packages.treasuredata.com/2/ubuntu/xenial/ xenial contrib" > /etc/apt/sources.list.d/treasure-data.list \
|
||||||
|
&& apt-get update
|
||||||
|
|
||||||
|
{% set fluentd_packages = [
|
||||||
|
'td-agent',
|
||||||
|
'make',
|
||||||
|
'g++'
|
||||||
|
] %}
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
|
{{ macros.install_packages(fluentd_packages | customizable("packages")) }}
|
||||||
|
|
||||||
|
RUN ulimit -n 65536 \
|
||||||
|
&& sed -i -e "s/USER=td-agent/USER=root/" -e "s/GROUP=td-agent/GROUP=root/" /etc/init.d/td-agent \
|
||||||
|
&& td-agent-gem install fluent-plugin-kubernetes_metadata_filter fluent-plugin-elasticsearch fluent-plugin-grep \
|
||||||
|
&& rm -f /etc/td-agent/td-agent.conf
|
||||||
|
|
||||||
|
COPY fluentd_sudoers /etc/sudoers.d/kolla_fluentd_sudoers
|
||||||
|
COPY extend_start.sh /usr/local/bin/kolla_extend_start
|
||||||
|
|
||||||
|
RUN usermod -a -G kolla td-agent \
|
||||||
|
&& chmod 440 /etc/sudoers.d/kolla_fluentd_sudoers \
|
||||||
|
&& chmod 755 /usr/local/bin/kolla_extend_start \
|
||||||
|
&& chown -R td-agent: /etc/td-agent \
|
||||||
|
&& mkdir /var/lib/td-agent \
|
||||||
|
&& chown -R td-agent: /var/lib/td-agent
|
||||||
|
|
||||||
|
{% block fluentd_footer %}{% endblock %}
|
||||||
|
{% block footer %}{% endblock %}
|
||||||
|
{{ include_footer }}
|
||||||
|
|
||||||
|
USER td-agent
|
16
docker/fluentd/extend_start.sh
Normal file
16
docker/fluentd/extend_start.sh
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Give processes executed with the "kolla" group the permission to create files
|
||||||
|
# and sub-directories in the /var/log/kolla directory.
|
||||||
|
#
|
||||||
|
# Also set the setgid permission on the /var/log/kolla directory so that new
|
||||||
|
# files and sub-directories in that directory inherit its group id ("kolla").
|
||||||
|
if [[ $(stat -c %U:%G /var/log/kolla) != "td-agent:kolla" ]]; then
|
||||||
|
sudo chown td-agent:kolla /var/log/kolla
|
||||||
|
fi
|
||||||
|
if [[ $(stat -c %a /var/log/kolla) != "2775" ]]; then
|
||||||
|
sudo chmod 2775 /var/log/kolla
|
||||||
|
fi
|
||||||
|
if [[ $(stat -c %U:%G /var/lib/td-agent) != "td-agent:kolla" ]]; then
|
||||||
|
sudo chown td-agent:kolla /var/lib/td-agent
|
||||||
|
fi
|
4
docker/fluentd/fluentd_sudoers
Normal file
4
docker/fluentd/fluentd_sudoers
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
%kolla ALL=(root) NOPASSWD: /bin/chown td-agent\:kolla /var/log/kolla, /usr/bin/chown td-agent\:kolla /var/log/kolla
|
||||||
|
%kolla ALL=(root) NOPASSWD: /bin/chown td-agent\:kolla /var/lib/td-agent, /usr/bin/chown td-agent\:kolla /var/lib/td-agent
|
||||||
|
%kolla ALL=(root) NOPASSWD: /bin/chmod 2775 /var/log/kolla, /usr/bin/chmod 2775 /var/log/kolla
|
||||||
|
%kolla ALL=(root) NOPASSWD: /bin/chmod 2775 /var/lib/td-agent, /usr/bin/chmod 2775 /var/lib/td-agent
|
5
docker/fluentd/td.repo
Normal file
5
docker/fluentd/td.repo
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
[treasuredata]
|
||||||
|
name=TreasureData
|
||||||
|
baseurl=http://packages.treasuredata.com/2/redhat/\$releasever/\$basearch
|
||||||
|
gpgcheck=1
|
||||||
|
gpgkey=https://packages.treasuredata.com/GPG-KEY-td-agent
|
Loading…
Reference in New Issue
Block a user