aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--docker/ansible/default.inv4
-rw-r--r--docker/ansible/roles/config_files/tasks/snmp_agent.yml4
-rw-r--r--docker/ansible/roles/config_files/templates/latest/snmp_agent.conf.j2 (renamed from docker/ansible/roles/config_files/templates/master/snmp_agent.conf.j2)0
-rw-r--r--docker/ansible/roles/run_collectd/vars/main.yml5
-rw-r--r--docker/barometer-collectd-experimental/Dockerfile26
-rw-r--r--docker/barometer-collectd-latest/Dockerfile12
-rw-r--r--docker/barometer-collectd/Dockerfile5
-rw-r--r--docs/development/requirements/01-intro.rst4
-rw-r--r--docs/development/requirements/03-dpdk.rst4
-rw-r--r--docs/index.rst6
-rw-r--r--docs/release/configguide/postinstall.rst2
-rw-r--r--docs/release/release-notes/index.rst4
-rw-r--r--docs/release/userguide/collectd.ves.userguide.rst6
-rw-r--r--docs/release/userguide/feature.userguide.rst24
-rw-r--r--docs/release/userguide/index.rst4
-rw-r--r--docs/release/userguide/installguide.docker.rst48
-rw-r--r--docs/release/userguide/installguide.oneclick.rst4
-rw-r--r--src/collectd/Makefile192
-rwxr-xr-xsrc/collectd/collectd_apply_pull_request.sh (renamed from docker/barometer-collectd-experimental/collectd_apply_pull_request.sh)3
-rw-r--r--src/collectd/collectd_sample_configs-experimental/README (renamed from docker/barometer-collectd-experimental/experimental-configs/README)0
-rw-r--r--src/package-list.mk24
-rwxr-xr-xsystems/centos/7/build_base_machine.sh6
-rwxr-xr-xsystems/centos/8/build_base_machine.sh10
-rwxr-xr-xsystems/rhel/7/build_base_machine.sh7
-rwxr-xr-xsystems/ubuntu/16.04/build_base_machine.sh8
25 files changed, 327 insertions, 85 deletions
diff --git a/docker/ansible/default.inv b/docker/ansible/default.inv
index e254c26a..d65e1c0e 100644
--- a/docker/ansible/default.inv
+++ b/docker/ansible/default.inv
@@ -13,8 +13,8 @@ localhost
[collectd_hosts:vars]
install_mcelog=true
insert_ipmi_modules=true
-#to use master or experimental container set the collectd flavor below
-#possible values: stable|master|experimental
+#to use latest (collectd-main branch) or experimental (main + PRs) container
+#set the collectd flavor below. Possible values: stable|latest|experimental
flavor=stable
[influxdb_hosts]
diff --git a/docker/ansible/roles/config_files/tasks/snmp_agent.yml b/docker/ansible/roles/config_files/tasks/snmp_agent.yml
index c72aee48..5e1ba975 100644
--- a/docker/ansible/roles/config_files/tasks/snmp_agent.yml
+++ b/docker/ansible/roles/config_files/tasks/snmp_agent.yml
@@ -21,9 +21,9 @@
tags:
- snmp
-- name: enable snmp agent for master container
+- name: enable snmp agent for non-stable container
template:
- src: master/snmp_agent.conf.j2
+ src: latest/snmp_agent.conf.j2
dest: "{{ config_file_dir }}/snmp_agent.conf"
when: flavor|default('stable')|string != 'stable'
tags:
diff --git a/docker/ansible/roles/config_files/templates/master/snmp_agent.conf.j2 b/docker/ansible/roles/config_files/templates/latest/snmp_agent.conf.j2
index 1ff8b228..1ff8b228 100644
--- a/docker/ansible/roles/config_files/templates/master/snmp_agent.conf.j2
+++ b/docker/ansible/roles/config_files/templates/latest/snmp_agent.conf.j2
diff --git a/docker/ansible/roles/run_collectd/vars/main.yml b/docker/ansible/roles/run_collectd/vars/main.yml
index cebd0f47..ddfec146 100644
--- a/docker/ansible/roles/run_collectd/vars/main.yml
+++ b/docker/ansible/roles/run_collectd/vars/main.yml
@@ -15,7 +15,8 @@
default_flavor: "{{ flavor|default('stable')|string }}"
flavor_image_name: "{{
- 'barometer-collectd-master' if (default_flavor == 'master') else
- 'barometer-collectd-experimental' if (default_flavor == 'experimental')
+ 'barometer-collectd-latest' if (default_flavor == 'master' or default_flavor == 'latest') else
+ 'barometer-collectd-experimental' if (default_flavor == 'experimental') else
+ 'barometer-collectd-6' if (default_flavor == 'collectd-6')
else 'barometer-collectd' }}"
collectd_image_name: "{{ 'opnfv/' + flavor_image_name }}"
diff --git a/docker/barometer-collectd-experimental/Dockerfile b/docker/barometer-collectd-experimental/Dockerfile
index 2cb26825..8622a63c 100644
--- a/docker/barometer-collectd-experimental/Dockerfile
+++ b/docker/barometer-collectd-experimental/Dockerfile
@@ -1,4 +1,5 @@
-# Copyright 2017-2019 Intel Corporation and OPNFV. All rights reserved.
+# Copyright 2017-2021 Intel Corporation, Anuket and others.
+# All rights reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -14,30 +15,21 @@
#
FROM centos:8
-RUN dnf update -y && \
- dnf install -y which sudo git && \
- dnf clean all && \
- git config --global http.sslVerify false
-ENV DOCKER y
-ENV COLLECTD_FLAVOR experimental
+ARG COLLECTD_FLAVOR=experimental
ARG COLLECTD_PULL_REQUESTS
-ENV WITH_DPDK y
+ARG COLLECTD_CONFIG_CMD_ARGS
+ARG COLLECTD_TAG
+ARG WITH_DPDK=n
+
+ENV DOCKER y
ENV repos_dir /src
-WORKDIR ${repos_dir}
RUN mkdir -p ${repos_dir}/barometer
COPY . ${repos_dir}/barometer
-COPY docker/barometer-collectd-experimental/collectd_apply_pull_request.sh \
- ${repos_dir}/barometer/src/collectd/
-
-# copying additional experimental configs on top of configs for 'main'
-# branch release
-COPY docker/barometer-collectd-experimental/experimental-configs/* \
- ${repos_dir}/barometer/src/collectd/collectd_sample_configs-master/
WORKDIR ${repos_dir}/barometer/systems
-RUN sh ./build_base_machine.sh && \
+RUN ./build_base_machine.sh && \
dnf clean all && rm -rf /var/cache/dnf && \
useradd -ms /bin/bash collectd_exec && \
echo "collectd_exec ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers
diff --git a/docker/barometer-collectd-latest/Dockerfile b/docker/barometer-collectd-latest/Dockerfile
index 4c01c870..b3a7a646 100644
--- a/docker/barometer-collectd-latest/Dockerfile
+++ b/docker/barometer-collectd-latest/Dockerfile
@@ -1,4 +1,5 @@
-# Copyright 2017-2019 Intel Corporation and OPNFV. All rights reserved.
+# Copyright 2017-2021 Intel Corporation, Anuket and others.
+# All rights reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -14,17 +15,12 @@
#
FROM centos:8
-RUN dnf update -y && \
- dnf install -y which sudo git && \
- dnf clean all && \
- git config --global http.sslVerify false
+ARG COLLECTD_FLAVOR=latest
+ARG WITH_DPDK=y
ENV DOCKER y
-ENV COLLECTD_FLAVOR latest
-ENV WITH_DPDK y
ENV repos_dir /src
-WORKDIR ${repos_dir}
RUN mkdir -p ${repos_dir}/barometer
COPY . ${repos_dir}/barometer
diff --git a/docker/barometer-collectd/Dockerfile b/docker/barometer-collectd/Dockerfile
index ad4a1579..e263e97f 100644
--- a/docker/barometer-collectd/Dockerfile
+++ b/docker/barometer-collectd/Dockerfile
@@ -1,4 +1,5 @@
-# Copyright 2017-2019 Intel Corporation and OPNFV. All rights reserved.
+# Copyright 2017-2021 Intel Corporation, Anuket and others.
+# All rights reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -15,7 +16,7 @@
FROM centos:8
RUN dnf update -y && \
- dnf install -y which sudo git && \
+ dnf install -y which sudo git-core && \
dnf clean all && \
git config --global http.sslVerify false
diff --git a/docs/development/requirements/01-intro.rst b/docs/development/requirements/01-intro.rst
index 70abc553..c34961a5 100644
--- a/docs/development/requirements/01-intro.rst
+++ b/docs/development/requirements/01-intro.rst
@@ -1,6 +1,6 @@
.. This work is licensed under a Creative Commons Attribution 4.0 International License.
.. http://creativecommons.org/licenses/by/4.0
-.. (c) OPNFV, Intel Corporation and others.
+.. (c) Anuket, Intel Corporation and others.
Problem Statement
------------------
@@ -16,7 +16,7 @@ useful information as possible off the platform so that faults and errors in
the NFVI can be detected promptly and reported to the appropriate fault
management entity.
-The OPNFV platform (NFVI) requires functionality to:
+The Anuket platform (NFVI) requires functionality to:
* Create a low latency, high performance packet processing path (fast path)
through the NFVI that VNFs can take advantage of;
diff --git a/docs/development/requirements/03-dpdk.rst b/docs/development/requirements/03-dpdk.rst
index ad7c8c78..fa960f4e 100644
--- a/docs/development/requirements/03-dpdk.rst
+++ b/docs/development/requirements/03-dpdk.rst
@@ -1,6 +1,6 @@
.. This work is licensed under a Creative Commons Attribution 4.0 International License.
.. http://creativecommons.org/licenses/by/4.0
-.. (c) OPNFV, Intel Corporation and others.
+.. (c) Anuket, Intel Corporation and others.
DPDK Enhancements
==================
@@ -167,4 +167,4 @@ Through extending the dpdkstat plugin for collectd with KA functionality, and
integrating the extended plugin with Monasca for high performing, resilient,
and scalable fault detection.
-.. _L2 Forwarding Sample Application (in Real and Virtualized Environments): http://dpdk.org/doc/guides/sample_app_ug/l2_forward_real_virtual.html
+.. _L2 Forwarding Sample Application (in Real and Virtualized Environments): http://doc.dpdk.org/guides/sample_app_ug/l2_forward_real_virtual.html
diff --git a/docs/index.rst b/docs/index.rst
index 8f80b559..e6424919 100644
--- a/docs/index.rst
+++ b/docs/index.rst
@@ -1,6 +1,6 @@
.. This work is licensed under a Creative Commons Attribution 4.0 International License.
.. http://creativecommons.org/licenses/by/4.0
-.. (c) OPNFV, Intel Corporation and others.
+.. (c) Anuket, Intel Corporation and others.
=========
Barometer
@@ -77,6 +77,6 @@ Indices
=======
* :ref:`search`
-.. _Barometer: https://wiki.opnfv.org/display/fastpath
-.. _collectd: http://collectd.org/
+.. _Barometer: https://wiki.anuket.io/display/HOME/Barometer
+.. _collectd: https://collectd.org/
diff --git a/docs/release/configguide/postinstall.rst b/docs/release/configguide/postinstall.rst
index d7347b19..7424cec7 100644
--- a/docs/release/configguide/postinstall.rst
+++ b/docs/release/configguide/postinstall.rst
@@ -6,6 +6,8 @@ Barometer post installation procedures
======================================
This document describes briefly the methods of validating the Barometer installation.
+.. TODO: Update this to include reference to containers rather than an Openstack deployment.
+
Automated post installation activities
--------------------------------------
The Barometer test-suite in Functest is called ``barometercollectd`` and is part of the ``Features``
diff --git a/docs/release/release-notes/index.rst b/docs/release/release-notes/index.rst
index db8221ab..9eb1348e 100644
--- a/docs/release/release-notes/index.rst
+++ b/docs/release/release-notes/index.rst
@@ -2,10 +2,10 @@
.. This work is licensed under a Creative Commons Attribution 4.0 International License.
.. http://creativecommons.org/licenses/by/4.0
-.. (c) OPNFV, Intel Corporation and others.
+.. (c) Anuket, Intel Corporation and others.
==================================================
-OPNFV Barometer Release Notes
+Anuket Barometer Release Notes
==================================================
.. toctree::
diff --git a/docs/release/userguide/collectd.ves.userguide.rst b/docs/release/userguide/collectd.ves.userguide.rst
index bbfd763e..2d3760b8 100644
--- a/docs/release/userguide/collectd.ves.userguide.rst
+++ b/docs/release/userguide/collectd.ves.userguide.rst
@@ -1,6 +1,6 @@
.. This work is licensed under a Creative Commons Attribution 4.0 International License.
.. http://creativecommons.org/licenses/by/4.0
-.. (c) OPNFV, Intel Corporation and others.
+.. (c) Anuket, Intel Corporation and others.
.. _barometer-ves-userguide:
==========================
@@ -932,9 +932,9 @@ Limitations
definition and the format is descibed in the document.
-.. _collectd: http://collectd.org/
+.. _collectd: https://collectd.org/
.. _Kafka: https://kafka.apache.org/
-.. _`VES`: https://wiki.opnfv.org/display/fastpath/VES+plugin+updates
+.. _`VES`: https://wiki.anuket.io/display/HOME/VES+plugin+updates
.. _`VES shema definition`: https://gerrit.onap.org/r/gitweb?p=demo.git;a=tree;f=vnfs/VES5.0/evel/evel-test-collector/docs/att_interface_definition;hb=refs/heads/master
.. _`PyYAML documentation`: https://pyyaml.org/wiki/PyYAMLDocumentation
.. _`collectd plugin description`: https://github.com/collectd/collectd/blob/main/src/collectd.conf.pod
diff --git a/docs/release/userguide/feature.userguide.rst b/docs/release/userguide/feature.userguide.rst
index 50d59cf5..c7cece47 100644
--- a/docs/release/userguide/feature.userguide.rst
+++ b/docs/release/userguide/feature.userguide.rst
@@ -1,6 +1,6 @@
.. This work is licensed under a Creative Commons Attribution 4.0 International License.
.. http://creativecommons.org/licenses/by/4.0
-.. (c) <optionally add copywriters name>
+.. (c) Anuket and others
===================================
OPNFV Barometer User Guide
@@ -182,7 +182,7 @@ Repo: https://github.com/collectd/collectd
Branch: main
-Dependencies: DPDK (http://dpdk.org/)
+Dependencies: DPDK (https://dpdk.org/)
.. note:: DPDK statistics plugin requires DPDK version 16.04 or later.
@@ -299,7 +299,7 @@ To fully enable ASLR:
and only when all implications of this change have been understood.
For more information on multi-process support, please see:
-http://dpdk.org/doc/guides/prog_guide/multi_proc_support.html
+https://doc.dpdk.org/guides/prog_guide/multi_proc_support.html
**DPDK stats plugin limitations:**
@@ -321,7 +321,7 @@ http://dpdk.org/doc/guides/prog_guide/multi_proc_support.html
**DPDK telemetry plugin**
-Please refer https://wiki.opnfv.org/display/fastpath/DPDK+Telemetry+Plugin
+Please refer to https://wiki.anuket.io/display/HOME/DPDK+Telemetry+Plugin
Hugepages Plugin
^^^^^^^^^^^^^^^^^
@@ -482,14 +482,14 @@ Branch: main
Dependencies:
- * PQoS/Intel RDT library https://github.com/01org/intel-cmt-cat.git
+ * PQoS/Intel RDT library https://github.com/intel/intel-cmt-cat
* msr kernel module
Building and installing PQoS/Intel RDT library:
.. code:: bash
- $ git clone https://github.com/01org/intel-cmt-cat.git
+ $ git clone https://github.com/intel/intel-cmt-cat
$ cd intel-cmt-cat
$ make
$ make install PREFIX=/usr
@@ -638,7 +638,7 @@ collectd IPMI documentation can be used:
IPMI documentation:
- https://www.kernel.org/doc/Documentation/IPMI.txt
-- http://www.intel.com/content/www/us/en/servers/ipmi/ipmi-second-gen-interface-spec-v2-rev1-1.html
+- https://www.intel.com/content/www/us/en/products/docs/servers/ipmi/ipmi-second-gen-interface-spec-v2-rev1-1.html
Mcelog Plugin
^^^^^^^^^^^^^^
@@ -856,7 +856,7 @@ On Centos, install the dependencies and Open vSwitch:
$ sudo yum install yajl-devel
Steps to install Open vSwtich can be found at
-http://docs.openvswitch.org/en/latest/intro/install/fedora/
+https://docs.openvswitch.org/en/latest/intro/install/fedora/
Start the Open vSwitch service:
@@ -1133,7 +1133,7 @@ metrics depends on running libvirt daemon version.
.. note:: Please keep in mind that RDT metrics (part of *Performance monitoring
events*) have to be supported by hardware. For more details on hardware support,
please see:
- https://github.com/01org/intel-cmt-cat
+ https://github.com/intel/intel-cmt-cat
Additionally perf metrics **cannot** be collected if *Intel RDT* plugin is enabled.
@@ -1377,7 +1377,7 @@ Security
* `CVE-2010-4336`_ fixed https://mailman.verplant.org/pipermail/collectd/2010-November/004277.html
in Version 4.10.2.
- * http://www.cvedetails.com/product/20310/Collectd-Collectd.html?vendor_id=11242
+ * https://www.cvedetails.com/product/20310/Collectd-Collectd.html?vendor_id=11242
* It's recommended to only use collectd plugins from signed packages.
@@ -1394,8 +1394,8 @@ References
.. _Barometer OPNFV Summit demo: https://prezi.com/kjv6o8ixs6se/software-fastpath-service-quality-metrics-demo/
.. _gnocchi plugin: https://github.com/openstack/collectd-openstack-plugins/tree/stable/ocata/
.. _aodh plugin: https://github.com/openstack/collectd-openstack-plugins/tree/stable/ocata/
-.. _collectd-openstack-plugins GSG: https://github.com/openstack/collectd-openstack-plugins/blob/master/doc/source/GSG.rst
-.. _grafana guide: https://wiki.opnfv.org/display/fastpath/Installing+and+configuring+InfluxDB+and+Grafana+to+display+metrics+with+collectd
+.. _collectd-openstack-plugins GSG: https://opendev.org/x/collectd-openstack-plugins/src/branch/master/doc/source/GSG.rst
+.. _grafana guide: https://wiki.anuket.io/display/HOME/Installing+and+configuring+InfluxDB+and+Grafana+to+display+metrics+with+collectd
.. _CVE-2017-7401: https://www.cvedetails.com/cve/CVE-2017-7401/
.. _CVE-2016-6254: https://www.cvedetails.com/cve/CVE-2016-6254/
.. _CVE-2010-4336: https://www.cvedetails.com/cve/CVE-2010-4336/
diff --git a/docs/release/userguide/index.rst b/docs/release/userguide/index.rst
index 673d6c12..f7bdad7f 100644
--- a/docs/release/userguide/index.rst
+++ b/docs/release/userguide/index.rst
@@ -2,10 +2,10 @@
.. This work is licensed under a Creative Commons Attribution 4.0 International License.
.. http://creativecommons.org/licenses/by/4.0
-.. (c) Intel and OPNFV
+.. (c) Intel, Anuket and others
===========================
-OPNFV Barometer User Guide
+Anuket Barometer User Guide
===========================
.. The feature user guide should provide an OPNFV user with enough information to
diff --git a/docs/release/userguide/installguide.docker.rst b/docs/release/userguide/installguide.docker.rst
index ca113c65..ceb04826 100644
--- a/docs/release/userguide/installguide.docker.rst
+++ b/docs/release/userguide/installguide.docker.rst
@@ -1,11 +1,11 @@
.. This work is licensed under a Creative Commons Attribution 4.0 International License.
.. http://creativecommons.org/licenses/by/4.0
-.. (c) <optionally add copywriters name>
+.. (c) Anuket and others
.. _barometer-docker-userguide:
-====================================
-OPNFV Barometer Docker Install Guide
-====================================
+=====================================
+Anuket Barometer Docker Install Guide
+=====================================
.. contents::
:depth: 3
@@ -382,6 +382,44 @@ COLLECTD_PULL_REQUESTS should be a comma-delimited string of pull request IDs.
proxy parameters should be passed only if system is behind an HTTP or HTTPS
proxy server (same as for stable collectd container)
+Build collectd-6
+^^^^^^^^^^^^^^^^
+
+The barometer-collectd-experimental Dockerfile can be used to build
+collectd-6.0, which is currently under development. In order to do this, the
+``COLLECTD_FLAVOR`` build arg can be passed to the docker build command.
+The optional ``COLLECTD_PULL_REQUESTS`` arg can be passed as well, to test
+proposed patches to collectd.
+
+.. code:: bash
+
+ $ cd <BAROMETER_REPO_DIR>
+ $ sudo docker build -t opnfv/barometer-collectd-6 \
+ --build-arg COLLECTD_FLAVOR=collectd-6 \
+ --build-arg COLLECTD_PULL_REQUESTS=1234,5678 \
+ --network=host -f docker/barometer-collectd-experimental/Dockerfile .
+
+The instructions for running the collectd-6 container are the same as for the
+collectd-experimental container.
+
+There are a few useful build args that can be used to further customise the
+collectd-6 build::
+
+* COLLECTD_CONFIG_CMD_ARGS
+ For testing with new plugins for collectd-6, as un-ported plugins are
+ disabled by default.
+ This new option lets the ./configure command be run with extra args,
+ e.g. --enable-cpu --enable-<my-newly-ported-plugin>, which means that
+ plugin can be enabled for the PR that is being tested.
+
+* COLLECTD_TAG
+ This overrides the default tag selected by the flavors, and allows checking
+ out out an arbitrary branch (e.g. PR branch instead of using the
+ ``COLLECTD_PULL_REQUESTS`` arg, which rebases each PR on top of the
+ nominal branch.
+ To check out a PR, use the following args with the docker build command:
+ ``--build-arg COLLECTD_TAG=pull/<PR_ID>/head``
+
Run the collectd stable docker image
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.. code:: bash
@@ -417,7 +455,7 @@ Run the collectd stable docker image
List of barometer-collectd dependencies on host for various plugins
can be found at:
- https://wiki.opnfv.org/display/fastpath/Barometer-collectd+host+dependencies
+ https://wiki.anuket.io/display/HOME/Barometer-collectd+host+dependencies
The Resource Control file system (/sys/fs/resctrl) can be bound from host to
container only if this directory exists on the host system. Otherwise omit
diff --git a/docs/release/userguide/installguide.oneclick.rst b/docs/release/userguide/installguide.oneclick.rst
index bdb7a06a..b73ab79b 100644
--- a/docs/release/userguide/installguide.oneclick.rst
+++ b/docs/release/userguide/installguide.oneclick.rst
@@ -1,6 +1,6 @@
.. This work is licensed under a Creative Commons Attribution 4.0 International License.
.. http://creativecommons.org/licenses/by/4.0
-.. (c) <optionally add copywriters name>
+.. (c) Anuket and others
.. _barometer-oneclick-userguide:
=======================================
@@ -251,7 +251,7 @@ To make some changes when a container is running run:
Connect to ``<host_ip>:3000`` with a browser and log into Grafana: admin/admin.
For short introduction please see the:
-`Grafana guide <http://docs.grafana.org/guides/getting_started/>`_.
+`Grafana guide <https://grafana.com/docs/grafana/latest/guides/getting_started/>`_.
The collectd configuration files can be accessed directly on target system in
``/opt/collectd/etc/collectd.conf.d``. It can be used for manual changes or
diff --git a/src/collectd/Makefile b/src/collectd/Makefile
index 7eb312da..785614d5 100644
--- a/src/collectd/Makefile
+++ b/src/collectd/Makefile
@@ -1,7 +1,8 @@
# makefile to manage collectd package
#
-# Copyright 2016-2019 Intel Corporation and OPNFV. All rights reserved.
+# Copyright 2016-2021 Intel Corporation, Anuket and others.
+# All rights reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -15,17 +16,18 @@
# See the License for the specific language governing permissions and
# limitations under the License.
#
-
#
# Contributors:
# Aihua Li, Huawei Technologies.
# Maryam Tahhan, Intel Corporation.
+# Emma Foley, Red Hat.
include ../mk/master.mk
include ../package-list.mk
WORK_DIR = collectd
-TAG_DONE_FLAG = $(WORK_DIR)/.$(COLLECTD_TAG).done
+# $COLLECTD_TAG can contain "/", which is being replaced with "-" here
+TAG_DONE_FLAG := $(WORK_DIR)/.$(subst /,-,$(COLLECTD_TAG)).done
BUILD_CMD = ./build.sh
CONFIG_CMD =
CONFIG_CMD += ./configure
@@ -40,6 +42,183 @@ ifeq ($(XDG_CACHE_HOME_DIR),)
XDG_CACHE_HOME_DIR = $(shell echo $$HOME)
endif
+ifeq ($(COLLECTD_FLAVOR),collectd-6)
+CONFIG_CMD += --enable-cpu
+CONFIG_CMD += --enable-interface
+CONFIG_CMD += --enable-memory
+CONFIG_CMD += --enable-ping
+CONFIG_CMD += --enable-uptime
+
+CONFIG_CMD += --disable-aggregation
+CONFIG_CMD += --disable-amqp
+CONFIG_CMD += --disable-amqp1
+#CONFIG_CMD += --disable-apache
+#CONFIG_CMD += --disable-apcups
+#CONFIG_CMD += --disable-apple_sensors
+#CONFIG_CMD += --disable-aquaero
+CONFIG_CMD += --disable-barometer
+#CONFIG_CMD += --disable-battery
+#CONFIG_CMD += --disable-bind
+#CONFIG_CMD += --disable-buddyinfo
+#CONFIG_CMD += --disable-capabilities
+#CONFIG_CMD += --disable-ceph
+#CONFIG_CMD += --disable-cgroups
+#CONFIG_CMD += --disable-chrony
+CONFIG_CMD += --disable-check_uptime
+#CONFIG_CMD += --disable-connectivity
+#CONFIG_CMD += --disable-conntrack
+#CONFIG_CMD += --disable-contextswitch
+#CONFIG_CMD += --disable-cpufreq
+#CONFIG_CMD += --disable-cpusleep
+CONFIG_CMD += --disable-csv
+#CONFIG_CMD += --disable-curl
+#CONFIG_CMD += --disable-curl_json
+CONFIG_CMD += --disable-curl_xml
+#CONFIG_CMD += --disable-dbi
+#CONFIG_CMD += --disable-dcpmm
+#CONFIG_CMD += --disable-df
+#CONFIG_CMD += --disable-disk
+#CONFIG_CMD += --disable-dns
+#CONFIG_CMD += --disable-dpdkevents
+#CONFIG_CMD += --disable-dpdkstat
+#CONFIG_CMD += --disable-dpdk_telemetry
+#CONFIG_CMD += --disable-drbd
+#CONFIG_CMD += --disable-email
+#CONFIG_CMD += --disable-entropy
+#CONFIG_CMD += --disable-ethstat
+#CONFIG_CMD += --disable-exec
+#CONFIG_CMD += --disable-fhcount
+#CONFIG_CMD += --disable-filecount
+#CONFIG_CMD += --disable-fscache
+CONFIG_CMD += --disable-gmond
+#CONFIG_CMD += --disable-gps
+#CONFIG_CMD += --disable-gpu_nvidia
+CONFIG_CMD += --disable-grpc
+#CONFIG_CMD += --disable-hddtemp
+#CONFIG_CMD += --disable-hugepages
+#CONFIG_CMD += --disable-infiniband
+#CONFIG_CMD += --disable-intel_pmu
+#CONFIG_CMD += --disable-intel_rdt
+#CONFIG_CMD += --disable-ipc
+#CONFIG_CMD += --disable-ipmi
+#CONFIG_CMD += --disable-iptables
+#CONFIG_CMD += --disable-ipstats
+#CONFIG_CMD += --disable-ipvs
+#CONFIG_CMD += --disable-irq
+CONFIG_CMD += --disable-java
+#CONFIG_CMD += --disable-load
+#CONFIG_CMD += --disable-log_logstash
+#CONFIG_CMD += --disable-logfile
+#CONFIG_CMD += --disable-logparser
+#CONFIG_CMD += --disable-lpar
+CONFIG_CMD += --disable-lua
+#CONFIG_CMD += --disable-madwifi
+CONFIG_CMD += --disable-match_empty_counter
+CONFIG_CMD += --disable-match_hashed
+CONFIG_CMD += --disable-match_regex
+CONFIG_CMD += --disable-match_timediff
+CONFIG_CMD += --disable-match_value
+#CONFIG_CMD += --disable-mbmon
+#CONFIG_CMD += --disable-mcelog
+#CONFIG_CMD += --disable-md
+#CONFIG_CMD += --disable-mdevents
+#CONFIG_CMD += --disable-memcachec
+#CONFIG_CMD += --disable-memcached
+#CONFIG_CMD += --disable-mic
+CONFIG_CMD += --disable-modbus
+CONFIG_CMD += --disable-mqtt
+#CONFIG_CMD += --disable-multimeter
+#CONFIG_CMD += --disable-mysql
+#CONFIG_CMD += --disable-netapp
+#CONFIG_CMD += --disable-netlink
+#CONFIG_CMD += --disable-netstat_udp
+CONFIG_CMD += --disable-network
+#CONFIG_CMD += --disable-nfs
+#CONFIG_CMD += --disable-nginx
+#CONFIG_CMD += --disable-notify_desktop
+#CONFIG_CMD += --disable-notify_email
+#CONFIG_CMD += --disable-notify_nagios
+#CONFIG_CMD += --disable-ntpd
+#CONFIG_CMD += --disable-numa
+#CONFIG_CMD += --disable-nut
+#CONFIG_CMD += --disable-olsrd
+#CONFIG_CMD += --disable-onewire
+CONFIG_CMD += --disable-openldap
+#CONFIG_CMD += --disable-openvpn
+#CONFIG_CMD += --disable-oracle
+#CONFIG_CMD += --disable-ovs_events
+#CONFIG_CMD += --disable-ovs_stats
+#CONFIG_CMD += --disable-pcie_errors
+CONFIG_CMD += --disable-perl
+#CONFIG_CMD += --disable-pf
+#CONFIG_CMD += --disable-pinba
+CONFIG_CMD += --disable-postgresql
+#CONFIG_CMD += --disable-powerdns
+#CONFIG_CMD += --disable-processes
+#CONFIG_CMD += --disable-procevent
+#CONFIG_CMD += --disable-protocols
+CONFIG_CMD += --disable-python
+#CONFIG_CMD += --disable-redfish
+CONFIG_CMD += --disable-redis
+#CONFIG_CMD += --disable-routeros
+CONFIG_CMD += --disable-rrdcached
+CONFIG_CMD += --disable-rrdtool
+#CONFIG_CMD += --disable-sensors
+#CONFIG_CMD += --disable-serial
+#CONFIG_CMD += --disable-sigrok
+#CONFIG_CMD += --disable-slurm
+#CONFIG_CMD += --disable-smart
+CONFIG_CMD += --disable-snmp
+CONFIG_CMD += --disable-snmp_agent
+CONFIG_CMD += --disable-statsd
+#CONFIG_CMD += --disable-swap
+#CONFIG_CMD += --disable-synproxy
+#CONFIG_CMD += --disable-sysevent
+#CONFIG_CMD += --disable-syslog
+#CONFIG_CMD += --disable-table
+#CONFIG_CMD += --disable-tail
+#CONFIG_CMD += --disable-tail_csv
+#CONFIG_CMD += --disable-tape
+CONFIG_CMD += --disable-target_notification
+CONFIG_CMD += --disable-target_replace
+CONFIG_CMD += --disable-target_scale
+CONFIG_CMD += --disable-target_set
+CONFIG_CMD += --disable-target_v5upgrade
+#CONFIG_CMD += --disable-tcpconns
+#CONFIG_CMD += --disable-teamspeak2
+#CONFIG_CMD += --disable-ted
+#CONFIG_CMD += --disable-thermal
+CONFIG_CMD += --disable-threshold
+#CONFIG_CMD += --disable-tokyotyrant
+#CONFIG_CMD += --disable-turbostat
+#CONFIG_CMD += --disable-ubi
+#CONFIG_CMD += --disable-unixsock
+#CONFIG_CMD += --disable-users
+#CONFIG_CMD += --disable-uuid
+#CONFIG_CMD += --disable-varnish
+#CONFIG_CMD += --disable-virt
+#CONFIG_CMD += --disable-vmem
+#CONFIG_CMD += --disable-vserver
+#CONFIG_CMD += --disable-wireless
+CONFIG_CMD += --disable-write_graphite
+#CONFIG_CMD += --disable-write_http
+CONFIG_CMD += --disable-write_influxdb_udp
+CONFIG_CMD += --disable-write_kafka
+#CONFIG_CMD += --disable-write_log
+CONFIG_CMD += --disable-write_mongodb
+CONFIG_CMD += --disable-write_prometheus
+CONFIG_CMD += --disable-write_redis
+CONFIG_CMD += --disable-write_riemann
+CONFIG_CMD += --disable-write_sensu
+#CONFIG_CMD += --disable-write_stackdriver
+CONFIG_CMD += --disable-write_syslog
+CONFIG_CMD += --disable-write_tsdb
+#CONFIG_CMD += --disable-xencpu
+#CONFIG_CMD += --disable-zfs_arc
+#CONFIG_CMD += --disable-zone
+#CONFIG_CMD += --disable-zookeeper
+CONFIG_CMD += --enable-debug
+else
CONFIG_CMD += --enable-syslog
CONFIG_CMD += --enable-logfile
CONFIG_CMD += --with-libpqos=$(LIBPQOS_DIR)
@@ -52,10 +231,14 @@ CONFIG_CMD += --enable-write_redis
CONFIG_CMD += --disable-perl
CONFIG_CMD += --with-librdkafka=/usr
CONFIG_CMD += --disable-lvm
+endif
+
ifdef WITH_DPDK
CONFIG_CMD += LIBDPDK_CFLAGS='-mssse3'
endif
+CONFIG_CMD += $(COLLECTD_CONFIG_CMD_ARGS)
+
.PHONY: install force_install config force_make
# install depends on make
@@ -65,6 +248,7 @@ all: force_make
@echo "Finished making $(WORK_DIR)"
config $(WORK_DIR)/Makefile: $(WORK_DIR)/configure
+ @echo "Configuring with: " $(CONFIG_CMD)
$(AT)cd $(WORK_DIR); $(CONFIG_CMD)
@echo "Configure done"
@@ -121,7 +305,7 @@ $(WORK_DIR):
$(TAG_DONE_FLAG): $(WORK_DIR)
@echo "Checking out collectd from tag: $(COLLECTD_TAG)"
- $(AT)cd collectd; git checkout $(COLLECTD_TAG)
+ $(AT)cd collectd; git fetch origin $(COLLECTD_TAG); git checkout FETCH_HEAD
ifneq ($(PATCH_FILE),)
$(AT)cd $(WORK_DIR); patch -p1 < ../$(PATCH_FILE)
endif
diff --git a/docker/barometer-collectd-experimental/collectd_apply_pull_request.sh b/src/collectd/collectd_apply_pull_request.sh
index dbbc5f26..35af2981 100755
--- a/docker/barometer-collectd-experimental/collectd_apply_pull_request.sh
+++ b/src/collectd/collectd_apply_pull_request.sh
@@ -1,5 +1,6 @@
#! /bin/bash
-# Copyright 2019 Intel Corporation and OPNFV. All rights reserved.
+# Copyright 2019-2021 Intel Corporation, Anuket and others.
+# All rights reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/docker/barometer-collectd-experimental/experimental-configs/README b/src/collectd/collectd_sample_configs-experimental/README
index e4386358..e4386358 100644
--- a/docker/barometer-collectd-experimental/experimental-configs/README
+++ b/src/collectd/collectd_sample_configs-experimental/README
diff --git a/src/package-list.mk b/src/package-list.mk
index 59e9a0a2..b27cd575 100644
--- a/src/package-list.mk
+++ b/src/package-list.mk
@@ -20,23 +20,35 @@ KAFKA_TAG ?= v1.5.2
# collectd section
COLLECTD_URL ?= https://github.com/collectd/collectd
-# there are 3 collectd flavors:
+# there are 4 collectd flavors:
# -"stable" - based on stable collectd release
# -"latest" - development version, based on main branch
# -"experimental" - it is based on main branch as above and includes
# set pull requests with experimental features
+# -"collectd-6" - based on the collectd 6.0 branch
ifeq ($(COLLECTD_FLAVOR), stable)
-# using latest stable release
+# using the most recent stable release
COLLECTD_TAG ?= collectd-5.12
SAMPLE_CONF_VARIANT_NAME = collectd_sample_configs
-else
-# 'latest' and 'experimental' collectd flavors are both using
-# code from main branch
+endif
+ifeq ($(COLLECTD_FLAVOR), latest)
+# collectd code from main branch
COLLECTD_TAG ?= main
SAMPLE_CONF_VARIANT_NAME = collectd_sample_configs-latest
+endif
ifeq ($(COLLECTD_FLAVOR), experimental)
# 'experimental' flavor is using additional Pull Requests that
# are put on top of main release
+ COLLECTD_TAG ?= main
+ SAMPLE_CONF_VARIANT_NAME = collectd_sample_configs-latest
COLLECTD_USE_EXPERIMENTAL_PR ?= y
endif #end of experimental-branch handling
-endif
+ifeq ($(COLLECTD_FLAVOR), collectd-6)
+# 'collectd-6' flavor is using collectd-6.0 branch
+ COLLECTD_TAG ?= collectd-6.0
+ SAMPLE_CONF_VARIANT_NAME = collectd_sample_configs-latest
+ COLLECTD_USE_EXPERIMENTAL_PR ?= y
+endif #end of collectd-6.0-branch handling
+
+@echo "Using COLLECTD_TAG: $(COLLECTD_TAG)"
+@echo "Using SAMPLE_CONF_VARIANT_NAME: $(SAMPLE_CONF_VARIANT_NAME)"
diff --git a/systems/centos/7/build_base_machine.sh b/systems/centos/7/build_base_machine.sh
index 41595d7e..346160fa 100755
--- a/systems/centos/7/build_base_machine.sh
+++ b/systems/centos/7/build_base_machine.sh
@@ -2,7 +2,8 @@
#
# Build a base machine for CentOS distro
#
-# Copyright 2017-2019 Intel Corporation and OPNFV. All rights reserved.
+# Copyright 2017-2021 Intel Corporation, Anuket and others.
+# All rights reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -43,7 +44,8 @@ flex
bison
libtool
pkg-config
-git
+git-core
+sudo
rpm-build
libcap-devel
xfsprogs-devel
diff --git a/systems/centos/8/build_base_machine.sh b/systems/centos/8/build_base_machine.sh
index 8486f3c0..f345e677 100755
--- a/systems/centos/8/build_base_machine.sh
+++ b/systems/centos/8/build_base_machine.sh
@@ -2,7 +2,8 @@
#
# Build a base machine for CentOS distro
#
-# Copyright 2017-2019 Intel Corporation and OPNFV. All rights reserved.
+# Copyright 2017-2021 Intel Corporation, Anuket and others.
+# All rights reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -21,6 +22,7 @@
# Aihua Li, Huawei Technologies.
# Martin Klozik, Intel Corporation.
# Maryam Tahhan, Intel Corporation.
+# Emma Foley, Red Hat.
# Synchronize package index files
dnf -y update
@@ -51,6 +53,7 @@ bison
libtool
pkg-config
git-core
+sudo
rpm-build
libcap-devel
xfsprogs-devel
@@ -76,9 +79,12 @@ librdkafka-devel
yajl-devel
protobuf-c-devel
rrdtool-devel
-dpdk-19.11.3
+dpdk-20.11
qpid-proton-c-devel
+# ping collectd-6
+liboping-devel
+
#install epel release required for git-review
epel-release
python3-libvirt
diff --git a/systems/rhel/7/build_base_machine.sh b/systems/rhel/7/build_base_machine.sh
index 7bb97267..ac9de4f5 100755
--- a/systems/rhel/7/build_base_machine.sh
+++ b/systems/rhel/7/build_base_machine.sh
@@ -2,7 +2,8 @@
#
# Build a base machine for RHEL distro
#
-# Copyright 2016-2019 Intel Corporation and OPNFV. All rights reserved.
+# Copyright 2016-2021 Intel Corporation, Anuket and others.
+# All rights reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -21,6 +22,7 @@
# Aihua Li, Huawei Technologies.
# Martin Klozik, Intel Corporation.
# Maryam Tahhan, Intel Corporation.
+# Emma Foley, Red Hat.
# Synchronize package index files
yum -y update
@@ -43,7 +45,8 @@ flex
bison
libtool
pkg-config
-git
+git-core
+sudo
rpm-build
libcap-devel
xfsprogs-devel
diff --git a/systems/ubuntu/16.04/build_base_machine.sh b/systems/ubuntu/16.04/build_base_machine.sh
index d74ec6d8..d04d587e 100755
--- a/systems/ubuntu/16.04/build_base_machine.sh
+++ b/systems/ubuntu/16.04/build_base_machine.sh
@@ -15,9 +15,13 @@
#
set -eux
-apt-get -y install build-essential dh-autoreconf fakeroot devscripts dpkg-dev git wget
-apt-get -y install \
+export DEBIAN_FRONTEND=noninteractive
+
+apt-get -yq update
+apt-get -yq install build-essential dh-autoreconf fakeroot devscripts dpkg-dev git-core wget sudo
+
+apt-get -yq install \
debhelper dpkg-dev po-debconf dh-systemd dh-strip-nondeterminism \
bison flex autotools-dev libltdl-dev pkg-config \
iptables-dev \