add openstack-export support
[bottlenecks.git] / monitor / monitoring.sh
index 01c1edc..0a450b7 100644 (file)
@@ -7,11 +7,35 @@
 # which accompanies this distribution, and is available at
 # http://www.apache.org/licenses/LICENSE-2.0
 ##############################################################################
-
 MONITOR_CONFIG="/home/opnfv/bottlenecks/monitor/config"
-GRAFANA="/home/opnfv/bottlenecks/monitor/grafana"
+DISPATCH="/home/opnfv/bottlenecks/monitor/dispatch"
+
+# INSTALL GRAFANA + PROMETHEUS + CADVISOR + BAROMETER on the JUMPERSERVER
+# # Node-Exporter
+echo == installation of monitoring module is started ==
+
+# # Collectd
+# # Configure IP Address in collectd server configuration
+# python ${DISPATCH}/server_ip_configure.py ${MONITOR_CONFIG}/collectd_server.conf
+# sudo docker run --name bottlenecks-collectd -d \
+#   --privileged \
+#   -v ${MONITOR_CONFIG}/collectd_server.conf:/etc/collectd/collectd.conf:ro \
+#   -v /proc:/mnt/proc:ro \
+#   fr3nd/collectd:5.5.0-1
+
+set +e
+# Prometheus
+sudo docker run --name bottlenecks-prometheus \
+  -d -p 9090:9090 \
+  -v ${MONITOR_CONFIG}/prometheus.yaml:/etc/prometheus/prometheus.yml \
+  prom/prometheus:v1.7.1
+
+# Collectd-Exporter
+sudo docker run --name bottlenecks-collectd-exporter \
+  -d -p 9103:9103 -p 25826:25826/udp \
+  prom/collectd-exporter:0.3.1 \
+  -collectd.listen-address=":25826"
 
-# Node-Exporter
 sudo docker run --name bottlenecks-node-exporter \
   -d -p 9100:9100 \
   -v "/proc:/host/proc:ro" \
@@ -23,31 +47,24 @@ sudo docker run --name bottlenecks-node-exporter \
     -collector.sysfs /host/sys \
     -collector.filesystem.ignored-mount-points "^/(sys|proc|dev|host|etc)($|/)"
 
-# Collectd
-sudo docker run --name bottlenecks-collectd -d \
-  --privileged \
-  -v ${MONITOR_CONFIG}:/etc/collectd:ro \
-  -v /proc:/mnt/proc:ro \
-  fr3nd/collectd:5.5.0-1
-
-# Collectd-Exporter
-sudo docker run --name bottlenecks-collectd-exporter \
-  -d -p 9103:9103 \
-  -p 25826:25826/udp prom/collectd-exporter:0.3.1 \
-  -collectd.listen-address=":25826"
-
-# Prometheus
-sudo docker run --name bottlenecks-prometheus \
-  -d -p 9090:9090 \
-  -v ${MONITOR_CONFIG}/prometheus.yaml:/etc/prometheus/prometheus.yml \
-  prom/prometheus:v1.7.1
+# Openstack-Exporter
+sudo docker run --name bottlenecks-openstack-exporter \
+  -v /tmp:/tmp \
+  -p 9104:9104 --env-file ${MONITOR_CONFIG}/openstack_exporter.conf \
+  -d gabrielyuyang/att-prometheus-openstack-exporter:latest
 
 # Grafana
 sudo  docker run --name bottlenecks-grafana \
   -d -p 3000:3000 \
-  -v ${GRAFANA}/config/grafana.ini:/etc/grafana/grafana.ini \
+  -v ${MONITOR_CONFIG}/grafana.ini:/etc/grafana/grafana.ini \
   grafana/grafana:4.5.0
+# Automate Prometheus Datasource and Grafana Dashboard creation
 
+set -e
+sleep 5
+python ${DISPATCH}/../dashboard/automated_dashboard_datasource.py
+
+set +e
 # Cadvisor
 sudo docker run \
   --volume=/:/rootfs:ro \
@@ -57,26 +74,41 @@ sudo docker run \
   --volume=/dev/disk/:/dev/disk:ro \
   --publish=8080:8080 \
   --detach=true \
-  --name=cadvisor \
-  google/cadvisor:v0.25.0 \ -storage_driver=Prometheus
+  --name=bottlenecks-cadvisor \
+  google/cadvisor:v0.25.0
 
-# Configure IP Address in barometer client configuration
-python client_ip_configure.py barometer_client.conf
 
+set -e
+# Barometer
 # Configure IP Address in barometer server configuration
-python server_ip_configure.py barometer-collectd.conf
+sleep 5
+python ${DISPATCH}/server_ip_configure.py ${MONITOR_CONFIG}/barometer_server.conf
 
-# Automate Collectd Client
-python automate_collectd_client.py
+set +e
+# Install on jumpserver
+docker pull opnfv/barometer
+sudo docker run  --name bottlenecks-barometer -d --net=host \
+  -v ${MONITOR_CONFIG}/barometer_server.conf:/src/barometer/src/collectd/collectd/src/collectd.conf \
+  -v ${MONITOR_CONFIG}/barometer_server.conf:/opt/collectd/etc/collectd.conf \
+  -v /var/run:/var/run \
+  -v /tmp:/tmp \
+  --privileged opnfv/barometer /run_collectd.sh
 
-# Automate Cadvisor Client
-python automate_cadvisor_client.py
+set -e
+# INSTALL BAROMETER + CADVISOR (+ COLLECTD) CLIENTS on COMPUTE/CONTROL NODES
+# Configure IP Address in barometer client configuration
+python ${DISPATCH}/client_ip_configure.py ${MONITOR_CONFIG}/barometer_client.conf
 
-# Automate Barometer installation for jump server
-bash ./barometer-install-script.sh
 
-# Automate Barometer installation for compute/controller nodes
-python barometer_automated_client_install.py
+# Automate Barometer client installation
+python ${DISPATCH}/automate_barometer_client.py
 
-# Automate Prometheus Datasource and Grafana Dashboard creation
-python automated-dashboard-datasource.py
+# # Configure IP Address in collectd client configuration
+# python ${DISPATCH}/client_ip_configure.py ${MONITOR_CONFIG}/collectd_client.conf
+# # Automate Collectd Client installation
+# python ${DISPATCH}/automate_collectd_client.py
+
+# Automate Cadvisor Client
+python ${DISPATCH}/automate_cadvisor_client.py
+
+echo == installation of monitoring module is finished ==