Change-Id: I0dfff659b4e05e3e619ea62f1771db79f7a8f0df
Signed-off-by: Emma Foley <efoley@redhat.com>
30 files changed:
1. DESCRIPTION
2. SYSTEM REQUIREMENTS
3. INSTALLATION NOTES - barometer-collectd
1. DESCRIPTION
2. SYSTEM REQUIREMENTS
3. INSTALLATION NOTES - barometer-collectd
-4. INSTALLATION NOTES - barometer-collectd-master
+4. INSTALLATION NOTES - barometer-collectd-latest
5. ADDITIONAL STEPS
------------------------------------------------------------------------------
5. ADDITIONAL STEPS
------------------------------------------------------------------------------
This Dockerfile provides instruction for building collect in isolated container.
There are currently two variants of collectd container:
- barometer-collectd - it is based on stable collect release
This Dockerfile provides instruction for building collect in isolated container.
There are currently two variants of collectd container:
- barometer-collectd - it is based on stable collect release
- - barometer-collectd-master - development container that is based on
+ - barometer-collectd-latest - development container that is based on
latest 'main' branch for collectd project. It contains all available
collectd plugins and features that are available on 'main' branch but
some issues with configuration or stability may occur
latest 'main' branch for collectd project. It contains all available
collectd plugins and features that are available on 'main' branch but
some issues with configuration or stability may occur
/opt/collectd/sbin/collectd -f
------------------------------------------------------------------------------
/opt/collectd/sbin/collectd -f
------------------------------------------------------------------------------
-4. INSTALLATION NOTES: barometer-collectd-master (development container)
+4. INSTALLATION NOTES: barometer-collectd-latest (development container)
-To build docker barometer-collectd-master container run (it is based on main branch from collectd):
-sudo docker build -f ./docker/barometer-collectd-master/Dockerfile .
+To build docker barometer-collectd-latest container run (it is based on main branch from collectd):
+sudo docker build -f ./docker/barometer-collectd-latest/Dockerfile .
from root barometer folder.
To run builded image run
sudo docker images # get docker image id
from root barometer folder.
To run builded image run
sudo docker images # get docker image id
-sudo docker run -ti --net=host -v `pwd`/src/collectd/collectd_sample_configs-master:/opt/collectd/etc/collectd.conf.d \
+sudo docker run -ti --net=host -v `pwd`/src/collectd/collectd_sample_configs-latest:/opt/collectd/etc/collectd.conf.d \
-v /var/run:/var/run -v /tmp:/tmp --privileged <image id>
-v /var/run:/var/run -v /tmp:/tmp --privileged <image id>
-NOTE: barometer-collectd-master container uses a different sample configurations files
-compared to regular barometer-collectd container (src/collectd/collectd_sample_configs-master)
+NOTE: barometer-collectd-latest container uses a different sample configurations files
+compared to regular barometer-collectd container (src/collectd/collectd_sample_configs-latest)
-sudo docker run -ti --net=host -v `pwd`/src/collectd/collectd_sample_configs-master:/opt/collectd/etc/collectd.conf.d \
+sudo docker run -ti --net=host -v `pwd`/src/collectd/collectd_sample_configs-latest:/opt/collectd/etc/collectd.conf.d \
-v /var/run:/var/run -v /tmp:/tmp --privileged --entrypoint=/bin/bash <image id>
/opt/collectd/sbin/collectd -f
-v /var/run:/var/run -v /tmp:/tmp --privileged --entrypoint=/bin/bash <image id>
/opt/collectd/sbin/collectd -f
[collectd_hosts:vars]
install_mcelog=true
insert_ipmi_modules=true
[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 or experimental container set the collectd flavor below
+#possible values: stable|latest|experimental
flavor=stable
[influxdb_hosts]
flavor=stable
[influxdb_hosts]
-- name: enable snmp agent for master container
+- name: enable snmp agent for latest container
- 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:
dest: "{{ config_file_dir }}/snmp_agent.conf"
when: flavor|default('stable')|string != 'stable'
tags:
default_flavor: "{{ flavor|default('stable')|string }}"
flavor_image_name: "{{
default_flavor: "{{ flavor|default('stable')|string }}"
flavor_image_name: "{{
- 'barometer-collectd-master' if (default_flavor == 'master') else
+ 'barometer-collectd-latest' if (default_flavor == 'latest') else
'barometer-collectd-experimental' if (default_flavor == 'experimental')
else 'barometer-collectd' }}"
collectd_image_name: "{{ 'opnfv/' + flavor_image_name }}"
'barometer-collectd-experimental' if (default_flavor == 'experimental')
else 'barometer-collectd' }}"
collectd_image_name: "{{ 'opnfv/' + flavor_image_name }}"
# copying additional experimental configs on top of configs for 'main'
# branch release
COPY docker/barometer-collectd-experimental/experimental-configs/* \
# 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/
+ ${repos_dir}/barometer/src/collectd/collectd_sample_configs-latest/
WORKDIR ${repos_dir}/barometer/systems
RUN sh ./build_base_machine.sh && \
WORKDIR ${repos_dir}/barometer/systems
RUN sh ./build_base_machine.sh && \
git config --global http.sslVerify false
ENV DOCKER y
git config --global http.sslVerify false
ENV DOCKER y
-ENV COLLECTD_FLAVOR master
+ENV COLLECTD_FLAVOR latest
ENV WITH_DPDK y
ENV repos_dir /src
ENV openstack_plugins /src/barometer/src/collectd-openstack-plugins
ENV WITH_DPDK y
ENV repos_dir /src
ENV openstack_plugins /src/barometer/src/collectd-openstack-plugins
pip install --upgrade pip && \
pip install -r ${openstack_plugins}/collectd-openstack-plugins/requirements.txt
pip install --upgrade pip && \
pip install -r ${openstack_plugins}/collectd-openstack-plugins/requirements.txt
-COPY docker/barometer-collectd-master/run_collectd.sh /run_collectd.sh
+COPY docker/barometer-collectd-latest/run_collectd.sh /run_collectd.sh
RUN chmod +x /run_collectd.sh
ENTRYPOINT ["/run_collectd.sh"]
RUN chmod +x /run_collectd.sh
ENTRYPOINT ["/run_collectd.sh"]
Before starting to build and run the Collectd container, understand the available
flavors of Collectd containers:
* barometer-collectd - stable release, based on collectd 5.11
Before starting to build and run the Collectd container, understand the available
flavors of Collectd containers:
* barometer-collectd - stable release, based on collectd 5.11
- * barometer-collectd-master - release based on collectd 'main' branch
+ * barometer-collectd-latest - release based on collectd 'main' branch
* barometer-collectd-experimental - release based on collectd 'main'
branch that also includes set of experimental (not yet merged into upstream)
pull requests
* barometer-collectd-experimental - release based on collectd 'main'
branch that also includes set of experimental (not yet merged into upstream)
pull requests
Stable `barometer-collectd` container is intended for work in production
environment as it is based on latest collectd official release.
Stable `barometer-collectd` container is intended for work in production
environment as it is based on latest collectd official release.
-`Barometer-collectd-master` and `barometer-collectd-experimental` containers
+`barometer-collectd-latest` and `barometer-collectd-experimental` containers
can be used in order to try new collectd features.
All flavors are located in `barometer` git repository - respective Dockerfiles
are stored in subdirectories of `docker/` directory
can be used in order to try new collectd features.
All flavors are located in `barometer` git repository - respective Dockerfiles
are stored in subdirectories of `docker/` directory
$ git clone https://gerrit.opnfv.org/gerrit/barometer
$ ls barometer/docker|grep collectd
barometer-collectd
$ git clone https://gerrit.opnfv.org/gerrit/barometer
$ ls barometer/docker|grep collectd
barometer-collectd
- barometer-collectd-master
+ barometer-collectd-latest
barometer-collectd-experimental
.. note::
barometer-collectd-experimental
.. note::
hello-world latest 05a3bd381fc2 4 weeks ago 1.84kB
.. note::
hello-world latest 05a3bd381fc2 4 weeks ago 1.84kB
.. note::
- If you do not plan to use collectd-master and collectd-experimental barometer
+ If you do not plan to use collectd-latest and collectd-experimental barometer
containers, then you can proceed directly to section `Run the collectd stable docker image`_
containers, then you can proceed directly to section `Run the collectd stable docker image`_
-Build collectd-master container
+Build collectd-latest container
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.. code:: bash
$ cd <BAROMETER_REPO_DIR>
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.. code:: bash
$ cd <BAROMETER_REPO_DIR>
- $ sudo docker build -t opnfv/barometer-collectd-master \
+ $ sudo docker build -t opnfv/barometer-collectd-latest \
--build-arg http_proxy=`echo $http_proxy` \
--build-arg https_proxy=`echo $https_proxy` --network=host -f \
--build-arg http_proxy=`echo $http_proxy` \
--build-arg https_proxy=`echo $https_proxy` --network=host -f \
- docker/barometer-collectd-master/Dockerfile .
+ docker/barometer-collectd-latest/Dockerfile .
- For `barometer-collectd-master` and `barometer-collectd-experimental` containers
+ For `barometer-collectd-latest` and `barometer-collectd-experimental` containers
proxy parameters should be passed only if system is behind an HTTP or HTTPS
proxy server (same as for stable collectd container)
proxy parameters should be passed only if system is behind an HTTP or HTTPS
proxy server (same as for stable collectd container)
--network=host -f docker/barometer-collectd-experimental/Dockerfile .
.. note::
--network=host -f docker/barometer-collectd-experimental/Dockerfile .
.. note::
- For `barometer-collectd-master` and `barometer-collectd-experimental` containers
+ For `barometer-collectd-latest` and `barometer-collectd-experimental` containers
proxy parameters should be passed only if system is behind an HTTP or HTTPS
proxy server (same as for stable collectd container)
proxy parameters should be passed only if system is behind an HTTP or HTTPS
proxy server (same as for stable collectd container)
sudo docker exec -ti <CONTAINER ID> /bin/bash
sudo docker exec -ti <CONTAINER ID> /bin/bash
-Run the barometer-collectd-master docker image
+Run the barometer-collectd-latest docker image
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-Run command for `barometer-collectd-master` container is very similar to command
+Run command for `barometer-collectd-latest` container is very similar to command
used for stable container - the only differences are name of the image
and location of the sample configuration files(as different version of collectd
plugins requiring different configuration files)
used for stable container - the only differences are name of the image
and location of the sample configuration files(as different version of collectd
plugins requiring different configuration files)
$ cd <BAROMETER_REPO_DIR>
$ sudo docker run -ti --net=host -v \
$ cd <BAROMETER_REPO_DIR>
$ sudo docker run -ti --net=host -v \
- `pwd`/src/collectd/collectd_sample_configs-master:/opt/collectd/etc/collectd.conf.d \
+ `pwd`/src/collectd/collectd_sample_configs-latest:/opt/collectd/etc/collectd.conf.d \
-v /var/run:/var/run -v /tmp:/tmp -v /sys/fs/resctrl:/sys/fs/resctrl \
-v /var/run:/var/run -v /tmp:/tmp -v /sys/fs/resctrl:/sys/fs/resctrl \
- --privileged opnfv/barometer-collectd-master
+ --privileged opnfv/barometer-collectd-latest
.. note::
Barometer collectd docker images are sharing some directories with host
(e.g. /tmp) therefore only one of collectd barometer flavors can be run
.. note::
Barometer collectd docker images are sharing some directories with host
(e.g. /tmp) therefore only one of collectd barometer flavors can be run
- at a time. In other words, if you want to try `barometer-collectd-master` or
+ at a time. In other words, if you want to try `barometer-collectd-latest` or
`barometer-collectd-experimental` image, please stop instance of
`barometer-collectd(stable)` image first.
`barometer-collectd-experimental` image, please stop instance of
`barometer-collectd(stable)` image first.
Run the barometer-collectd-experimental docker image
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Barometer-collectd-experimental container shares default configuration files
Run the barometer-collectd-experimental docker image
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Barometer-collectd-experimental container shares default configuration files
-with 'barometer-collectd-master' equivalent but some of experimental pull
+with 'barometer-collectd-latest' equivalent but some of experimental pull
requests may require modified configuration. Additional configuration files that
are required specifically by experimental container can be found in
`docker/barometer-collectd-experimental/experimental-configs/`
directory. Content of this directory (all \*.conf files) should be copied to
requests may require modified configuration. Additional configuration files that
are required specifically by experimental container can be found in
`docker/barometer-collectd-experimental/experimental-configs/`
directory. Content of this directory (all \*.conf files) should be copied to
-`src/collectd/collectd_sample_configs-master` directory before first run of
+`src/collectd/collectd_sample_configs-latest` directory before first run of
experimental container.
.. code:: bash
$ cd <BAROMETER_REPO_DIR>
$ cp docker/barometer-collectd-experimental/experimental-configs/*.conf \
experimental container.
.. code:: bash
$ cd <BAROMETER_REPO_DIR>
$ cp docker/barometer-collectd-experimental/experimental-configs/*.conf \
- src/collectd/collectd_sample_configs-master
+ src/collectd/collectd_sample_configs-latest
When configuration files are up to date for experimental container, it can be
When configuration files are up to date for experimental container, it can be
-launched using following command (almost identical to run-command for 'master'
-collectd container)
+launched using following command (almost identical to run-command for
+``latest`` collectd container)
.. code:: bash
$ cd <BAROMETER_REPO_DIR>
$ sudo docker run -ti --net=host -v \
.. code:: bash
$ cd <BAROMETER_REPO_DIR>
$ sudo docker run -ti --net=host -v \
- `pwd`/src/collectd/collectd_sample_configs-master:/opt/collectd/etc/collectd.conf.d \
+ `pwd`/src/collectd/collectd_sample_configs-latest:/opt/collectd/etc/collectd.conf.d \
-v /var/run:/var/run -v /tmp:/tmp -v /sys/fs/resctrl:/sys/fs/resctrl --privileged \
opnfv/barometer-collectd-experimental
-v /var/run:/var/run -v /tmp:/tmp -v /sys/fs/resctrl:/sys/fs/resctrl --privileged \
opnfv/barometer-collectd-experimental
Edit inventory file and add hosts:
``$barometer_dir/docker/ansible/default.inv``
Edit inventory file and add hosts:
``$barometer_dir/docker/ansible/default.inv``
+.. TODO:: Use include file directive to add the docker/ansible/default.inv file here
.. code:: bash
[collectd_hosts]
.. code:: bash
[collectd_hosts]
[collectd_hosts:vars]
install_mcelog=true
insert_ipmi_modules=true
[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 or experimental container set the collectd flavor below
+ # possible values: stable|latest|experimental
flavor=stable
[influxdb_hosts]
flavor=stable
[influxdb_hosts]
# there are 3 collectd flavors:
# -"stable" - based on stable collectd release
# there are 3 collectd flavors:
# -"stable" - based on stable collectd release
-# -"master" - development version, based on main branch
+# -"latest" - development version, based on main branch
# -"experimental" - it is based on main branch as above and includes
# set pull requests with experimental features
ifeq ($(COLLECTD_FLAVOR), stable)
# -"experimental" - it is based on main branch as above and includes
# set pull requests with experimental features
ifeq ($(COLLECTD_FLAVOR), stable)
COLLECTD_TAG ?= collectd-5.11
SAMPLE_CONF_VARIANT_NAME = collectd_sample_configs
else
COLLECTD_TAG ?= collectd-5.11
SAMPLE_CONF_VARIANT_NAME = collectd_sample_configs
else
-# 'master' and 'experimental' collectd flavors are both using
+# 'latest' and 'experimental' collectd flavors are both using
# code from main branch
COLLECTD_TAG ?= main
# code from main branch
COLLECTD_TAG ?= main
- SAMPLE_CONF_VARIANT_NAME = collectd_sample_configs-master
+ SAMPLE_CONF_VARIANT_NAME = collectd_sample_configs-latest
ifeq ($(COLLECTD_FLAVOR), experimental)
# 'experimental' flavor is using additional Pull Requests that
# are put on top of main release
ifeq ($(COLLECTD_FLAVOR), experimental)
# 'experimental' flavor is using additional Pull Requests that
# are put on top of main release