From e5ca547f373bdae7207236190422fd18840dd711 Mon Sep 17 00:00:00 2001 From: Mathias Ewald Date: Sat, 23 Jul 2016 17:29:27 +0000 Subject: [PATCH] Added telegraf container Extended base container to include influxdb repositories Added telegraf container with package from influxdb repo Change-Id: I6ccf952d7b42eabe8ff7bdbd6471e395db86aa02 Partially-Implements: Blueprint performance-monitoring --- docker/base/Dockerfile.j2 | 8 +++++++- docker/base/influxdb.yum.repo | 6 ++++++ docker/base/sources.list.debian | 3 +++ docker/base/sources.list.ubuntu | 3 +++ docker/telegraf/Dockerfile.j2 | 17 +++++++++++++++++ docker/telegraf/telegraf_sudoers | 1 + 6 files changed, 37 insertions(+), 1 deletion(-) create mode 100644 docker/base/influxdb.yum.repo create mode 100644 docker/telegraf/Dockerfile.j2 create mode 100644 docker/telegraf/telegraf_sudoers diff --git a/docker/base/Dockerfile.j2 b/docker/base/Dockerfile.j2 index 8e7e600efe..1503d5039d 100644 --- a/docker/base/Dockerfile.j2 +++ b/docker/base/Dockerfile.j2 @@ -40,11 +40,15 @@ COPY kibana.yum.repo /etc/yum.repos.d/kibana.yum.repo # Turns on MariaDB repos throughout the RPM build COPY mariadb.yum.repo /etc/yum.repos.d/MariaDB.repo +# Turns on InfluxDB repos throughout the RPM build +COPY influxdb.yum.repo /etc/yum.repos.d/influxdb.repo + RUN yum -y install \ http://repo.percona.com/release/7/RPMS/x86_64/percona-release-0.1-3.noarch.rpm \ && rpm --import http://yum.mariadb.org/RPM-GPG-KEY-MariaDB \ && rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-Percona \ - && rpm --import https://packages.elastic.co/GPG-KEY-elasticsearch + && rpm --import https://packages.elastic.co/GPG-KEY-elasticsearch \ + && rpm --import https://repos.influxdata.com/influxdb.key {% if install_metatype in ['rdo', 'mixed'] %} @@ -209,6 +213,7 @@ COPY apt_preferences.{{ base_distro }} /etc/apt/preferences '08B73419AC32B4E966C1A330E84AC2C0460F3994', '46095ACC8548582C1A2699A9D27D666CD88E42B4', '58118E89F3A912897C070ADBF76221572C52609D', + '05CE15085FC09D18E99EFB22684A14CF2582E0C5', ] %} {% elif base_distro == 'debian' %} {% set base_apt_keys = [ @@ -216,6 +221,7 @@ COPY apt_preferences.{{ base_distro }} /etc/apt/preferences '58118E89F3A912897C070ADBF76221572C52609D', '0xcbcb082a1bb943db', 'D27D666CD88E42B4', + '05CE15085FC09D18E99EFB22684A14CF2582E0C5', ] %} {% set base_apt_packages = base_apt_packages + ['sudo',] diff --git a/docker/base/influxdb.yum.repo b/docker/base/influxdb.yum.repo new file mode 100644 index 0000000000..85e4daebfb --- /dev/null +++ b/docker/base/influxdb.yum.repo @@ -0,0 +1,6 @@ +[influxdb] +name = InfluxDB Repository - RHEL $releasever +baseurl = https://repos.influxdata.com/rhel/$releasever/$basearch/stable +enabled = 1 +gpgcheck = 1 +gpgkey = https://repos.influxdata.com/influxdb.key diff --git a/docker/base/sources.list.debian b/docker/base/sources.list.debian index d247dc434c..edcf5214a7 100644 --- a/docker/base/sources.list.debian +++ b/docker/base/sources.list.debian @@ -24,3 +24,6 @@ deb http://packages.elastic.co/kibana/4.4/debian stable main # docker deb http://apt.dockerproject.org/repo debian-jessie main + +# InfluxDB repo +deb https://repos.influxdata.com/debian jessie stable diff --git a/docker/base/sources.list.ubuntu b/docker/base/sources.list.ubuntu index c55609abaa..4cabfa07ef 100644 --- a/docker/base/sources.list.ubuntu +++ b/docker/base/sources.list.ubuntu @@ -27,3 +27,6 @@ deb http://packages.elastic.co/kibana/4.4/debian stable main # Docker repo deb http://apt.dockerproject.org/repo ubuntu-trusty main + +# InfluxDB repo +deb https://repos.influxdata.com/ubuntu trusty stable diff --git a/docker/telegraf/Dockerfile.j2 b/docker/telegraf/Dockerfile.j2 new file mode 100644 index 0000000000..d93a997e2e --- /dev/null +++ b/docker/telegraf/Dockerfile.j2 @@ -0,0 +1,17 @@ +FROM {{ namespace }}/{{ image_prefix }}base:{{ tag }} +MAINTAINER {{ maintainer }} +{% import "macros.j2" as macros with context %} + +{% set telegraf_packages = ['telegraf'] %} +RUN {{ macros.install_packages(telegraf_packages | customizable("packages")) }} + +COPY telegraf_sudoers /etc/sudoers.d/kolla_telegraf_sudoers +RUN chmod 750 /etc/sudoers.d \ + && chmod 440 /etc/sudoers.d/kolla_telegraf_sudoers \ + && usermod -a -G kolla telegraf + +{% block telegraf_footer %}{% endblock %} +{% block footer %}{% endblock %} +{{ include_footer }} + +USER telegraf diff --git a/docker/telegraf/telegraf_sudoers b/docker/telegraf/telegraf_sudoers new file mode 100644 index 0000000000..d6e1e092f7 --- /dev/null +++ b/docker/telegraf/telegraf_sudoers @@ -0,0 +1 @@ +%kolla ALL=(root) NOPASSWD: /usr/bin/chown -R telegraf\: /var/lib/telegraf, /bin/chown -R telegraf\: /var/lib/telegraf