Age | Commit message (Collapse) | Author | Files | Lines |
|
* changes:
Add a playbook that tests collectd 6 vs collectd5
[docker][ansible] Add a playbook for building the containers
Create a flask app to show metrics from collectd
|
|
After the introduction of the collectd_config roles, for generating
configs, some of the configs changed, as they were no longer relying on
collectd's defaults.
One of these was the cpu plugin, which configured ``ReportPercentage True``
by the config role. The effected the grafana dashboards, because the CPU
usage dashboard explicitly selected ``type=cpu``. With the values being
reported as percentage, collectd sets the ``type=percent`` for the metrics
stored in influx (which grafana retrieves), so the dashboards dodn't
have any data to display. By removing the ``type=cpu`` filter, the CPU
metrics are once again showing in grafana, and will be shown whether the
CPU usage is reported in percentage or the default jiffies.
Signed-off-by: "Emma Foley <efoley@redhat.com>"
Change-Id: I03a6f01677514d888e7805358855947791ab173c
|
|
The playbook will:
* build collectd-6, collectd-latest and flask app
containers
* generate a set of collectd configs
* launch the collectd-6, collectd-latest with the generated configs
* run the flask app which has a http_server that receives metrics from
collectd v5 and collectd v6
* display the received metrics from both versions of collectd
Collectd v5 shows PUTVAL
Collectd v6 shows PUTMETRIC
The playbook takes the following parameters:
* PR (optional)
The PRID for an upstream collectd pull request that will be
passed to the collectd 6 container build
* plugin (optional)
The name of the plugin that is bneing ported
This will filter the received metrics to show the value passed.
Additional updates to existing roles include:
* run_collectd
parameterises the collectd container name so that the role can be reused for
launching multiple collectd containers by passing distinct names.
Change-Id: Ia62196c347387d380aae69e14ed0dd8e2c76d9c9
Signed-off-by: Emma Foley <efoley@redhat.com>
|
|
To run the playbook and build the containers, run::
sudo ansible-playbook docker/ansible/collectd_build.yml
Change-Id: I60e044f09c8da53f6d5a56d2aaa7b837b19a0b0b
Signed-off-by: Emma Foley <efoley@redhat.com>
|
|
|
|
Signed-off-by: "Emma Foley <efoley@redhat.com>"
Change-Id: I6dd8e166433feab16dd06c9767e58d6d96ca948d
|
|
Change-Id: If0bea94be66a2c5b88d88e6c70a4c27a9001a3d9
Signed-off-by: Emma Foley <efoley@redhat.com>
|
|
Remove old dpdk plugins, since they are superceeded by dpdk_telemetry
plugin.
JIRA: https://jira.anuket.io/browse/BAROMETER-183
Change-Id: Ie4abf2b1fe37a2197d9d5dd01820ac8b0d01df6d
Signed-off-by: Emma Foley <efoley@redhat.com>
|
|
|
|
The unixsock plugin is useful for debugging issues in collectd, and can
be used to verify that metrics are being collected without having to
create CSV files or log into the container.
Typically, the unixsock plugin can be queried using the following
syntax::
$ docker exec bar-collectd /opt/collectd/bin/collectdctl -s /var/run/collectd-socket listval
Signed-off-by: Emma Foley <efoley@redhat.com>
Change-Id: Id342fe7659c809f4eec71085ae6572f9d855684c
|
|
Only one of virt and intel_rdt can be enabled at a time, and the
existing checks are based on the existance of a {rdt,virt}.conf file to
determine whether the other plugin is enabled.
This check needed updating, and is now based on whether the other plugin
is in the collectd_plugins value.
Signed-off-by: Emma Foley <efoley@redhat.com>
Change-Id: I175d60111bf133965e1ecbf3764cb12a25356576
|
|
* Update the following plugins to use collectd_config role
* capabilities
* csv
* dpdk_telemetry
* exec
* hugepages
* ipmi
* logfile
* network
* ovs_events
* ovs_stats
* syslog
* uuid
* write_kafka
* write_prometheus
JIRA: BAROMETER-180
Signed-off-by: Emma Foley <efoley@redhat.com>
Change-Id: I2ec9e3c2db2c1d907459b40550012834196f0c65
|
|
Update default_plugins to use the collectd_config role [1]
[1] https://github.com/infrawatch/collectd-config-ansible-role
JIRA: BAROMETER-180
Signed-off-by: Emma Foley <efoley@redhat.com>
Change-Id: I9ff9bf642b641132771965346d65c95a3d66b996
|
|
|
|
|
|
* Add tasks to use collectd_config
* Move generated configs to combine with existing and additional configs
* Move vars to defaults dir
Some of the vars are needed for the collectd_config role, and need to
be set before the other values are set.
JIRA: BAROMETER-180
Signed-off-by: Emma Foley <efoley@redhat.com>
Change-Id: Id5a8b8289c5e120eae7eb5bcf946c5d4dd9fdd48
|
|
* config_files: Rename templates/master to templates/latest
Change-Id: I5db6491695bf35a87851f779603dc16454c117d5
Signed-off-by: Emma Foley <efoley@redhat.com>
|
|
By adding the "en_default_all" tag to each task in the
default_read_import task, there is no need to have different tasks for
that tag vs when individual plugin tags are enabled.
JIRA: BAROMETER-180
Change-Id: I15cc77959bbd25516e9da10af064abeea5527ea9
Signed-off-by: Emma Foley <efoley@redhat.com>
|
|
* Add instruction to docs/ for using
docker/barometer-collectd-experimental/Dockerfile to build collectd
version 6
* Add a new COLLECTD_FLAVOR to src/collectd/Makefile to configure
tags for a collectd 6 build.
* Allow passing COLLECTD_CONFIG_CMD_ARGS to the collectd build
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.
* Update flavor_image_name selection to include collectd-6
Change-Id: I55ee0bbcb5d89357b1ef11ab17c5b029603ecdf7
Signed-off-by: Emma Foley <efoley@redhat.com>
|
|
Capabilities plugin was interoduced in collectd-5.11, which is part of
the barometer-collectd container, so it can be included by default.
Change-Id: Ia91d883907025ab8618b39147e14d47a4fc541c3
Signed-off-by: Emma Foley <efoley@redhat.com>
|
|
The dpdk_telemetry plugin superceeds the dpdk{stats,events} plugins, and
these cannot be enabled together. Since the stable container on CentOS 8
uses DPDK 19.11, the dpdk_telemetry plugin should be used instead.
Change-Id: I20e087b40ff90ba95741aaff641ef1a745d77dd8
Signed-off-by: Emma Foley <efoley@redhat.com>
|
|
The succeeded and failed checks are no longer supported for use as filters.
Signed-off-by: Emma Foley <efoley@redhat.com>
Change-Id: If5bdae81b34c1e63d7a2bda349beee5823e2550d
|
|
Enabling dpdk_telemetry plugin with One Click Install.
Added the config. templates and the related Documentation.
Signed-off-by: Jabir Kanhira Kadavathu <jabir.kanhira.kadavathu@intel.com>
Change-Id: Ibecd96d4102cd76a71d31613879ae57950f5108f
|
|
This reverts commit 59338794c8ae8ff82c00dc14ea47a9279cc213d4.
The reason for reverting is that there is not yet a container image available
on Dockerhub for barometer-collectd-latest
Signed-off-by: Emma Foley <efoley@redhat.com>
Change-Id: Ia6e37af99787a6c02eb368fc7bfdd9d584716f2b
|
|
Change-Id: I0dfff659b4e05e3e619ea62f1771db79f7a8f0df
Signed-off-by: Emma Foley <efoley@redhat.com>
|
|
The one-click install was not working with SNMP. The manual install
also wasn't working due to the ``Instance true`` config option in
the config. ``Instance true`` is not a valid config option for snmp
agent.
This option appears in the stable container config, and also in the
ansible config, but not in the master container. Removing this
unsupported option allows the config to be read and collectd to be
started.
JIRA: BAROMETER-134
Signed-off-by: Emma Foley <efoley@redhat.com>
Change-Id: If154b3190d82d1cd3638a9c258d2b48bb0efe9af
|
|
SNMP config has been causing the one click install to fail.
Disabling it temperorily so that it doesn't block Iruya release
JIRA: BAROMETER-134
Change-Id: Ia7944eb6461497c0cd17a2f7ba5b2c2018ffd2a2
Signed-off-by: Emma Foley <efoley@redhat.com>
|
|
|
|
Signed-off-by: jabirkkclt <jabir.kanhira.kadavathu@intel.com>
Change-Id: Id29ba83455d2cea21ec634d3e0eee38d84de465b
|
|
on CentOS 7. Mount the /sys/fs/resctrl from host to container to avoid issues with intel_rdt plugin."
|
|
CentOS 7. Mount the /sys/fs/resctrl from host to container to avoid
issues with intel_rdt plugin.
Change-Id: I04d22fccb950aabbde774c1850a5b44ee57908f5
Signed-off-by: jabirkkclt <jabir.kanhira.kadavathu@intel.com>
Signed-off-by: Kamil Wiatrowski <kamilx.wiatrowski@intel.com>
|
|
container. Update one-click install of experimental container to add capabilities plugin.
Signed-off-by: jabirkkclt <jabir.kanhira.kadavathu@intel.com>
Change-Id: I1753c4d8af279ad9c7de29e7a198dbd8161c516d
|
|
Signed-off-by: Emma Foley <efoley@redhat.com>
Change-Id: Ia62933a4b824f1280a693fc8004d29c67dc5e2ac
|
|
Add a variable to playbooks to select type of collectd container.
Container flavor can be stable, master or experimental.
Change-Id: Ie591ca3b7816210c377c5bffbb54117f8ee764aa
Signed-off-by: Kamil Wiatrowski <kamilx.wiatrowski@intel.com>
|
|
Updated intel_pmu.conf for ansible installation to monitor
cores 0-4 by default.
Add sample conf files for plugins supported by master container:
pcie_errors and write_prometheus.
Change-Id: Ifedff2f3b099f5d7b5a88d14909c3879d38e4e64
Signed-off-by: Kamil Wiatrowski <kamilx.wiatrowski@intel.com>
|
|
Previously 'zookeeper' docker container should be installed
manually by user - now it is a part of ansible one click install
for VES.
Change-Id: If3873cffa51ddf04d2c3769705259aaf5928cc45
Signed-off-by: Radoslaw Jablonski <radoslawx.jablonski@intel.com>
Signed-off-by: Kamil Wiatrowski <kamilx.wiatrowski@intel.com>
|
|
Previously 'zookeeper_host_ip' was set to 'localhost' instead
of IP address - this caused error during starting kafka container.
Change-Id: I55cf6e3375e3d08df2baf69f678aaab74f4aa408
Signed-off-by: Radoslaw Jablonski <radoslawx.jablonski@intel.com>
|
|
On Ubuntu 18 mcelog is no longer available through apt from
standard repositories. It can be downloaded directly, and make
on target machine. Mcelog version 161 is used.
Change-Id: Ie24990869190f86efa26994081d4f887f879c867
Signed-off-by: Kamil Wiatrowski <kamilx.wiatrowski@intel.com>
|
|
Add dpdk plugins to ansible installation with default
configuration.
Change-Id: I1f7949962aff5119141b5712bb6b32db8f45b287
Signed-off-by: Kamil Wiatrowski <kamilx.wiatrowski@intel.com>
|
|
Added support for multiple influx hosts.
Fix issue where ansible crashes when influx_host is not defined
Change-Id: I348e53c9b6147b0fafffdebcd80037acb72d67ce
Signed-off-by: John O Loughlin <john.oloughlin@intel.com>
|
|
Set ip address to influxdb for grafana based on
provided hostname. IP address in numerical format
is required by grafana container. Mapping of
hostname in /etc/hosts is no longer required.
Change-Id: I684de737c6f8e48b5b9f256541901852d7ecc05a
Signed-off-by: Kamil Wiatrowski <kamilx.wiatrowski@intel.com>
|
|
Previously cleaning cache directory for grafana(/var/lib/grafana)
was missing and, because of that, changing influxdb_host variable
value between one ansible deployment and another was not working.
It was a problem because scripts in grafana container are expecting
that cache directory will be empty during first run and, if some
dashboards exists in cache already (even if they are left by
previous deployment), old dashboards will be left untouched with
possibly wrong configuration. This bug happened during deploying
3 nodes scenarios more than once (collectd, grafana and influlxdb
hosted on separate machines).
Now cleanup is done by default and can be skipped using
'clean_grafana_cache=false' value.
Change-Id: Ib67cc3437b8a3a2c2930dd55cba44aef8e352cf2
Signed-off-by: Radoslaw Jablonski <radoslawx.jablonski@intel.com>
|
|
Previously there were 2 errors in ansible scripts for grafana:
- influxdb_host variable value was unset
- entry for /etc/hosts file was adding text "{{ influxdb_hostname }}"
instead hostname stored in this variable
Change-Id: I1821b3c5f5fea5c29386b1a57e37aadcf90dd2e6
Signed-off-by: Radoslaw Jablonski <radoslawx.jablonski@intel.com>
|
|
|
|
Small updates to ansible roles.
Several minor updates in documentation.
Change-Id: Id031cebc23301b6218f8ced0d261f844f270e37f
Signed-off-by: Kamil Wiatrowski <kamilx.wiatrowski@intel.com>
|
|
To enable add the following with your ip address
to your inventory file:
[prometheus_hosts]
172.24.4.19
Change-Id: I85add815367bcbcf1240398db2c43c2130537969
Signed-off-by: John O Loughlin <john.oloughlin@intel.com>
|
|
Auto install docker with dependencies on hosts:
apt install python
apt install python-pip
pip install docker-py
apt install docker.io
Set docker proxy using host proxy settings.
Updated documentation.
Change-Id: Ibec7e0a7e484d5a9a8656cd3598c3acc7c2e2184
Signed-off-by: Kamil Wiatrowski <kamilx.wiatrowski@intel.com>
|
|
Fixed the interval of intel_rdt plugin and Grafana dashboard settings
to follow the correct interval.
Change-Id: Ia792c6b6308526d82f153275d5d5393b0aea312d
Signed-off-by: Kamil Wiatrowski <kamilx.wiatrowski@intel.com>
|
|
Collectd loads config files in alphabetical order.
Ansible creates the config files for collectd.
In this patch we change the name ipmi.conf to 0_ipmi.conf
This will allow ipmi to be loaded before PMU.
If PMU is loaded before ipmi the container will crash.
This is a bug in collectd 5.8
Change-Id: I3334a3a1970f596e36f665698649d6c04fd38fbb
Signed-off-by: John O Loughlin <john.oloughlin@intel.com>
|
|
Change-Id: I0ae30a46d11d53cdc218e38d0b3a852aa5be147d
Signed-off-by: Gordon Kelly <gordon.kelly@intel.com>
|