blob: 272e630d3b609128d23f1d5f3c285ad7a9d34421 [file] [log] [blame]
Helena McGough375f07c2017-10-13 16:14:16 +01001..
2 # Copyright 2017 Intel Research and Development Ireland Limited
3 # *************************************************************
4 # This file is part of OSM Monitoring module
5 # All Rights Reserved to Intel Corporation
6 #
7 # Licensed under the Apache License, Version 2.0 (the "License"); you
8 # may not use this file except in compliance with the License. You may
9 # obtain a copy of the License at
10 #
11 # http://www.apache.org/licenses/LICENSE-2.0
12 #
13 # Unless required by applicable law or agreed to in writing, software
14 # distributed under the License is distributed on an "AS IS" BASIS,
15 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
16 # implied. See the License for the specific language governing
17 # permissions and limitations under the License.
18 #
19 # For those usages not covered by the Apache License, Version 2.0 please
20 # contact: helena.mcgough@intel.com or adrian.hoban@intel.com
21
22OSM MON module
23**************
24This is a guide for using the OSM MON module source code to create a container
25for monitoring. It will allow the use of the three plugins available to the
26module; CloudWatch, OpenStack and vROPs.
27
28
29At the moment this process requires a number of steps, but in the future the
30process will become automated as it will become part of the osm installation
31script which is contained within the devops repo.
32: `</devops/installers/install_mon.sh>`
33
34
35For information on how to use this module refer to this usage guide:
36: `</MON/doc/MON_usage_guide.rst>`
37
38
39You can find the source code for MON by following the link below:
40https://osm.etsi.org/gitweb/?p=osm/MON.git;a=tree
41
42
43Requirements
44------------
45* lxc setup
46* OSM deployment
47
48
49Creating a MON Container
50------------------------
51To create a MON container and utilize the supported functionality, clone the
52MON repo and then run the provided script for container creation and
53installation:
54
55 ::
56
57 git clone https://osm.etsi.org/gerrit/osm/MON.git
58 cd MON/scripts
59 . install_mon.sh
60
61This script will create a MON container, install all of the required packages,
62as well as initializing the Apache Kafka and the vROPs web service.
63
64
65Plugin Utilization
66------------------
67There are three plugins supported by this monitoring module; CloudWatch,
68OpenStack and vROPs.
69
70vROPs plugin
71~~~~~~~~~~~~
72The vROPs plugin will automatically be installed after you have run the above
73installation script.
74
75OpenStack Plugin
76~~~~~~~~~~~~~~~~
77There are two OpenStack services supported within this module monitoring and
78alarming, which are supported by the Gnocchi and Aodh plugins respectively.
79
80For more information on what metrics and alarms that these plugins support
81please refer to the following documentation:
82: `</MON/doc/OpenStack/>`.
83
84These documents will also describe what alarming and monitoring functionality
85the plugins support.
86
Helena McGoughfe92f842017-11-17 14:57:08 +000087* The Gnocchi and Aodh plugins work from a common KafkaConsumer that checks for
88 the appropriate topics and keys. To run this consumer:
Helena McGough375f07c2017-10-13 16:14:16 +010089
90 ::
91
Helena McGough43d40c92017-12-05 10:09:44 +000092 lxc exec MON - python /root/MON/osm_mon/core/message_bus/common_consumer
Helena McGough94f93f72017-11-23 17:29:54 +000093
94* To enable Aodh alarm notifications to be sent to SO:
95
96 ::
97
98 lxc exec MON - python /root/MON/osm_mon/plugins/OpenStack/Aodh/notifier.py
Helena McGough375f07c2017-10-13 16:14:16 +010099
100CloudWatch
101~~~~~~~~~~
Helena McGough94f93f72017-11-23 17:29:54 +0000102The MON container supports a CloudWatch plugin on installation.
Helena McGough375f07c2017-10-13 16:14:16 +0100103
104
105Verification
106------------
107* To confirm that you have created your MON container, run the following command
108 and confirm that your container is in a RUNNING state:
109
110 ::
111
112 lxc list | grep MON
113
114* Confirm that the kafka service is installed and running within the container:
115
116 ::
117
118 lxc exec MON -- service kafka status