19 Commits

Author SHA1 Message Date
Doug Szumski
9d8a5a1a8c Add missing pid mode check for Prometheus
Trivial-Fix
Change-Id: Iea123c32981309698bd644229dc1525fa671a487
2018-10-30 16:34:15 +00:00
Adam Harwell
f1c8136556 Refactor haproxy config (split by service) V2.0
Having all services in one giant haproxy file makes altering
configuration for a service both painful and dangerous. Each service
should be configured with a simple set of variables and rendered with a
single unified template.

Available are two new templates:

* haproxy_single_service_listen.cfg.j2: close to the original style, but
only one service per file
* haproxy_single_service_split.cfg.j2: using the newer haproxy syntax
for separated frontend and backend

For now the default will be the single listen block, for ease of
transition.

Change-Id: I6e237438fbc0aa3c89a3c8bd706a53b74e71904b
2018-09-26 03:30:38 -07:00
Ha Manh Dong
79da68fab6 Fix missing slash at mount volumes for prometheus-cadvisor
Change-Id: I0444b23aee900d028c879ec64d153d59a18ff504
2018-09-25 10:41:42 +07:00
Mark Goddard
354894e2e9 Add check.yml for prometheus and vitrage
Without this, kolla-ansible check fails with the following error:

Unable to retrieve file contents
Could not find or access '/path/to/kolla-ansible/ansible/check.yml'"}

Also adds the check command to the CI tests, to ensure that it does not
break again.

Change-Id: I9fc2f9999f55cb742ac3ac38579dcf26524a9fc7
Closes-Bug: #1790653
2018-09-04 15:36:34 +01:00
Zuul
3f14a99f2a Merge "[prometheus] Allow custom alert rules to be configured." 2018-08-30 11:57:11 +00:00
Zuul
cfee876895 Merge "[prometheus] Enable ceph mgr exporter" 2018-08-30 07:09:48 +00:00
Jorge Niedbalski
0ec41f2092 [prometheus] Allow custom alert rules to be configured.
This patch extends the configuration task for prometheus
to allow the operator to pass a(set) of prometheus alert
rules files, that will be used by alertmanager to produce
alerts.

This functionality is only enabled when the prometheus-alertmanager
service is enabled.

Change-Id: I882759c3774f43640631c1058f8a9cb24e7a60d2
Closes-Bug: #1776529
Signed-off-by: Jorge Niedbalski <jorge.niedbalski@linaro.org>
2018-08-08 12:48:41 -04:00
Jorge Niedbalski
19ec40170f [prometheus-alertmanager] use template/first_found instead of merge_yaml.
Change https://review.openstack.org/#/c/571826/4/
introduced the usage of merge_yaml for rendering the
prometheus-alertmanager.yml configuration.

However the merge_yaml module doesn't do a deep copy of >=
second level properties, so it doesn't works for
most configurations.

Bug: #1786077
Change-Id: I35297c6e2a3800582fb1fd3782a5d93558562b1d
Signed-off-by: Jorge Niedbalski <jorge.niedbalski@linaro.org>
2018-08-08 12:32:24 -04:00
Zuul
3e45b2cbec Merge "Use include_tasks instead of include" 2018-07-27 08:16:08 +00:00
Jeffrey Zhang
b51eeed89e Use include_tasks instead of include
include is marked as deprecated since ansible 2.4[0]

[0] https://docs.ansible.com/ansible/2.4/include_module.html#deprecated

Co-Authored-By: confi-surya <singh.surya64mnnit@gmail.com>
Change-Id: Ic9d71e1865d1c728890625aeddf424a5734c0a8a
2018-07-25 23:57:22 +08:00
Lakshmi Prasanna Goutham Pratapa
9f0db30fd1 Apply Resource-Constraints to all services.
This commit is the final commit to apply resource-constraints
to all OpenStack services.

Depends-on: I39004f54281f97d53dfa4b1dbcf248650ad6f186
Change-Id: I072d69be9698be54775cb0ae286ea2b6ed78776c
Implements: blueprint resource-constraints
2018-07-23 19:07:05 +05:30
Jorge Niedbalski
9d2770db11 [prometheus] Enable ceph mgr exporter
This patch enables the ceph mgr prometheus exporter.

If enable_prometheus_ceph_mgr_exporter is set to true,
the ceph mgr prometheus plugin is enabled on the hosts that are part
of the ceph-mgr group, then the exporter is added into the prometheus-server
configuration file.

Change-Id: Ia2f879401e585e6043f69cc5e3ab1a1f72f7f033
2018-07-23 05:39:52 +00:00
Jorge Niedbalski
1596475db6 [prometheus] Initial implementation of prometheus-alertmanager
This patch extends the prometheus role for being able
to deploy the prometheus-alertmanager[0] container.

The variable enable_prometheus_alertmanager
decides if the container should be deployed and enabled.

If enabled, the following configuration and actions are performed:

- The alerting section on the prometheus-server configuration
is added pointing the prometheus-alertmanager host group as targets.

- HAProxy is configured to load-balance over the prometheus-alertmanager
host group. (external/internal).

Please note that a default (dummy) configuration is provided, that
allows the service to start, the operator should extend it via a node custom config

[0] https://github.com/openstack/kolla/tree/master/docker/prometheus/prometheus-alertmanager

Change-Id: I3a13342c67744a278cc8d52900a913c3ccc452ae
Closes-Bug: 1774725
Signed-off-by: Jorge Niedbalski <jorge.niedbalski@linaro.org>
2018-07-11 16:20:35 -04:00
Ha Manh Dong
30be04ea91 Specify 'become' for all tasks that use kolla_docker module
Add become to all tasks that use the module "kolla_docker"

Change-Id: I4309c4011687b88ec31d739fd8f834fe2326ff10
Partial-Implements: blueprint ansible-specific-task-become
2018-06-08 12:39:24 +00:00
Mark Giles
41254b6c46 Add cAdvisor for Prometheus monitoring
cAdvisor (Container Advisor) provides metrics on resource usage and
performance characteristics of running containers.  This change
deploys a cadvisor container and configures prometheus to scrape
data from it.

Change-Id: I55dd4fee954f9be68efda397746861ddaaa0a565
Partially-Implements: blueprint prometheus
2018-05-29 08:55:58 -04:00
Jorge Niedbalski
3b61cc702d [prometheus] Add memcached_exporter.
This patch adds the prometheus_memcached_exporter[0] to the
list of  available exporters, following the conventions
used by the previously integrated exporters.

[0] https://github.com/openstack/kolla/tree/master/docker/prometheus-memcached-exporter

Change-Id: I103b0ee19ef2fd17ce19a27d60773675ad234c1c
Closes-Bug: #1773303
Signed-off-by: Jorge Niedbalski <jorge.niedbalski@linaro.org>
2018-05-25 01:45:13 -04:00
Mark Goddard
2e190597bb Fix missed kolla_action and kolla_serial
In change I78cb60168aaa40bb6439198283546b7faf33917c, action was changed
to kolla_action, and serial to kolla_serial, to avoid Ansible warnings
due to use of reserved keywords. In that change, some keywords were
missed, and some changes that were merged since then have not switched
to the new variables. This change fixes all current instances of those
issues.

Change-Id: I357dffdfcb2b405e280a962d366ee65eebf0a8d1
Implements: blueprint migrate-to-ansible-2-2-0
2018-05-16 13:13:06 +01:00
ZhijunWei
bca297b948 Fix the prechecks action for prometheus_server
the prometheus container is not exits, it should be
prometheus_server[0]

[0]: https://github.com/openstack/kolla-ansible/blob/master/ansible/roles/prometheus/defaults/main.yml#L6

Change-Id: Ib44390af9b8af5156dafbd0b0da6ae061a926ec7
2018-04-29 08:12:48 +00:00
Mathias Ewald
4d1f37359d Add role to deploy prometheus
This patch adds the ansible role to deploy the prometheus service which
can be used to collect performance metrics accross the environment

Partially-Implements: blueprint prometheus
Change-Id: I908b9c9dad63ab5c9b80be1e3a80a4fc8191cb9e
2018-04-19 10:58:15 -04:00