Merge "docker: add kafka container for barometer"
[barometer.git] / docs / release / configguide / postinstall.rst
1 .. This work is licensed under a Creative Commons Attribution 4.0 International License.
2 .. http://creativecommons.org/licenses/by/4.0
3
4 ======================================
5 Barometer post installation procedures
6 ======================================
7 This document describes briefly the methods of validating the Barometer installation.
8
9 Automated post installation activities
10 --------------------------------------
11 The Barometer test-suite in Functest is called ``barometercollectd`` and is part of the ``Features``
12 tier.  Running these tests is done automatically by the OPNFV deployment pipeline on the supported
13 scenarios.  The testing consists of basic verifications that each plugin is functional per their
14 default configurations.  Inside the Functest container, the detailed results can be found in the
15 ``/home/opnfv/functest/results/barometercollectd.log``.
16
17 Barometer post configuration procedures
18 ---------------------------------------
19 The functionality for each plugin (such as enabling/disabling and configuring its capabilities)
20 is controlled as described in the User Guide through their individual ``.conf`` file located in
21 the ``/etc/collectd/collectd.conf.d/`` folder on the compute node(s).  In order for any changes to
22 take effect, the collectd service must be stopped and then started again.
23
24 Platform components validation - Apex
25 -------------------------------------
26 The following steps describe how to perform a simple "manual" testing of the Barometer components:
27
28 On the controller:
29
30 You will need update the archive policy rule for gnocchi via the command line.
31 The default is low, which means that you only get a metric every
32 5 minutes. To do this:
33
34 .. code:: bash
35
36     $ openstack metric archive-policy rule delete default
37     $ openstack metric archive-policy-rule create  -a bool -m '*'  default
38
39 Using the ``bool`` archive policy reduces the number of aggregation methods run
40 to one (last), and it keeps all metrics at a 1 second interval.
41 In order to query this you need to explicitly choose an aggregation method to
42 display (by default, ``measures show`` uses mean). You may have to update the
43 command for checking the metrics, this is the CLI command:
44
45 .. code:: bash
46
47      $ watch –n2 –d openstack metric measures show  --aggregation last <metric_id>
48
49 More on testing and displaying metrics is shown below.
50
51 On the compute:
52
53 1. Connect to any compute node and ensure that the collectd service is running.  The log file
54    ``collectd.log`` should contain no errors and should indicate that each plugin was successfully
55    loaded.  For example, from the Jump Host:
56
57    .. code:: bash
58
59        $ opnfv-util overcloud compute0
60        $ ls /etc/collectd/collectd.conf.d/
61        $ systemctl status collectd
62        $ vi /opt/stack/collectd.log
63
64    The following plugings should be found loaded:
65    aodh, gnocchi, hugepages, intel_rdt, mcelog, ovs_events, ovs_stats, snmp, virt
66
67 2. On the compute node, induce an event monitored by the plugins; e.g. a corrected memory error:
68
69    .. code:: bash
70
71       $ git clone https://git.kernel.org/pub/scm/utils/cpu/mce/mce-inject.git
72       $ cd mce-inject
73       $ make
74       $ modprobe mce-inject
75
76    Modify the test/corrected script to include the following:
77
78    .. code:: bash
79
80       CPU 0 BANK 0
81       STATUS 0xcc00008000010090
82       ADDR 0x0010FFFFFFF
83
84    Inject the error:
85
86    .. code:: bash
87
88       $ ./mce-inject < test/corrected
89
90 3. Connect to the controller and query the monitoring services.  Make sure the overcloudrc.v3
91    file has been copied to the controller (from the undercloud VM or from the Jump Host) in order
92    to be able to authenticate for OpenStack services.
93
94    .. code:: bash
95
96       $ opnfv-util overcloud controller0
97       $ su
98       $ source overcloudrc.v3
99       $ gnocchi metric list
100       $ aodh alarm list
101
102    The output for the gnocchi and aodh queries should be similar to the excerpts below:
103
104    .. code:: bash
105
106       +--------------------------------------+---------------------+------------------------------------------------------------------------------------------------------------+-----------+-------------+
107       | id                                   | archive_policy/name | name                                                                                                       | unit      | resource_id |
108       +--------------------------------------+---------------------+------------------------------------------------------------------------------------------------------------+-----------+-------------+
109         [...]
110       | 0550d7c1-384f-4129-83bc-03321b6ba157 | high                | overcloud-novacompute-0.jf.intel.com-hugepages-mm-2048Kb@vmpage_number.free                                | Pages     | None        |
111       | 0cf9f871-0473-4059-9497-1fea96e5d83a | high                | overcloud-novacompute-0.jf.intel.com-hugepages-node0-2048Kb@vmpage_number.free                             | Pages     | None        |
112       | 0d56472e-99d2-4a64-8652-81b990cd177a | high                | overcloud-novacompute-0.jf.intel.com-hugepages-node1-1048576Kb@vmpage_number.used                          | Pages     | None        |
113       | 0ed71a49-6913-4e57-a475-d30ca2e8c3d2 | high                | overcloud-novacompute-0.jf.intel.com-hugepages-mm-1048576Kb@vmpage_number.used                             | Pages     | None        |
114       | 11c7be53-b2c1-4c0e-bad7-3152d82c6503 | high                | overcloud-novacompute-0.jf.intel.com-mcelog-                                                               | None      | None        |
115       |                                      |                     | SOCKET_0_CHANNEL_any_DIMM_any@errors.uncorrected_memory_errors_in_24h                                      |           |             |
116       | 120752d4-385e-4153-aed8-458598a2a0e0 | high                | overcloud-novacompute-0.jf.intel.com-cpu-24@cpu.interrupt                                                  | jiffies   | None        |
117       | 1213161e-472e-4e1b-9e56-5c6ad1647c69 | high                | overcloud-novacompute-0.jf.intel.com-cpu-6@cpu.softirq                                                     | jiffies   | None        |
118         [...]
119
120       +--------------------------------------+-------+------------------------------------------------------------------+-------+----------+---------+
121       | alarm_id                             | type  | name                                                             | state | severity | enabled |
122       +--------------------------------------+-------+------------------------------------------------------------------+-------+----------+---------+
123       | fbd06539-45dd-42c5-a991-5c5dbf679730 | event | gauge.memory_erros(overcloud-novacompute-0.jf.intel.com-mcelog)  | ok    | moderate | True    |
124       | d73251a5-1c4e-4f16-bd3d-377dd1e8cdbe | event | gauge.mcelog_status(overcloud-novacompute-0.jf.intel.com-mcelog) | ok    | moderate | True    |
125         [...]
126
127
128 Platform components validation - Compass4nfv
129 --------------------------------------------
130
131 The procedure is similar to the above.
132
133 The following steps describe how to perform a simple "manual" testing of the Barometer components:
134
135 On the compute:
136
137 1. Connect to any compute node and ensure that the collectd service is running. The log file
138    ``collectd.log`` should contain no errors and should indicate that each plugin was successfully
139    loaded. For example, ssh into a compute node and test:
140
141    .. code:: bash
142
143        $ ls /etc/collectd/collectd.conf.d/
144        $ systemctl status collectd
145        $ vi /var/log/collectd.log
146
147    The following plugings should be found loaded:
148    aodh, gnocchi, hugepages, mcelog, ovs_events, ovs_stats, cpu, interface, memory, disk, numa, virt, rrdtool
149
150 2. Testing using mce-inject is similar to #2 shown above.
151
152 On the controller:
153
154 3. Connect to the controller and query the monitoring services. Make sure to log in to the lxc-utility
155 container before using the OpenStack CLI. Please refer to this wiki for details:
156 https://wiki.opnfv.org/display/compass4nfv/Containerized+Compass#ContainerizedCompass-HowtouseOpenStackCLI
157
158    .. code:: bash
159
160       $ source ~/openrc
161       $ gnocchi metric list
162       $ aodh alarm list
163
164    The output for the gnocchi and aodh queries should be similar to the excerpts shown in #3 above.