monitoing publisher tenant changes
Includes make file changes to install monitoring agent on
ceilometer running nodes.
Change-Id: I751cb7e2bdc3e709a0b365415a6b8813cc9fa795
diff --git a/cord-pod/make-inframonitoring-yaml.sh b/cord-pod/make-inframonitoring-yaml.sh
new file mode 100644
index 0000000..2140931
--- /dev/null
+++ b/cord-pod/make-inframonitoring-yaml.sh
@@ -0,0 +1,101 @@
+FN=$SETUPDIR/inframonitoring.yaml
+
+rm -f $FN
+
+cat >> $FN <<EOF
+tosca_definitions_version: tosca_simple_yaml_1_0
+
+description: Auto generated file to enable monitoring of infrastructure services (OpenStack, ONOS...etc).
+
+imports:
+ - custom_types/xos.yaml
+ - custom_types/monitoring_tosca_types.yaml
+
+topology_template:
+ node_templates:
+ service_ceilometer:
+ type: tosca.nodes.CeilometerService
+ properties:
+ no-create: true
+ no-update: true
+ no-delete: true
+
+ onos_monitoring_agent_head_node:
+ description: Monitoring agent info
+ type: tosca.nodes.InfraMonitoringAgentInfo
+ properties:
+ start_url: http://ceilometer-1.cord.lab:5004/monitoring/agent/onos/start
+ start_url_json_data: { get_artifact: [ SELF, onos_monitoring_service_endpoints, LOCAL_FILE] }
+ stop_url: http://ceilometer-1.cord.lab:5004/monitoring/agent/onos/stop
+ artifacts:
+ onos_monitoring_service_endpoints: /root/setup/onos_monitoring_service_endpoints.json
+
+ onos_monitoring_publisher_tenant:
+ description: ONOS Monitoring Publisher Tenant
+ type: tosca.nodes.ONOSMonitoringPublisher
+ requirements:
+ - provider_service:
+ node: service_ceilometer
+ relationship: tosca.relationships.TenantOfService
+ - monitoring_agent_1:
+ node: onos_monitoring_agent_head_node
+ relationship: tosca.relationships.ProvidesInfraMonitoringAgentInfo
+
+ os_monitoring_agent_head_node:
+ description: Openstack Monitoring agent info
+ type: tosca.nodes.InfraMonitoringAgentInfo
+ properties:
+ start_url: http://ceilometer-1.cord.lab:5004/monitoring/agent/openstack/start
+ stop_url: http://ceilometer-1.cord.lab:5004/monitoring/agent/openstack/stop
+
+EOF
+
+NODES=$( bash -c "source $SETUPDIR/admin-openrc.sh ; nova host-list" |grep compute|awk '{print $2}' )
+I=0
+for NODE in $NODES; do
+ echo $I - $NODE
+ I=$(( I+1 ))
+ cat >> $FN <<EOF
+ os_monitoring_agent_cp_${I}:
+ description: Openstack Monitoring agent info for ${NODE}
+ type: tosca.nodes.InfraMonitoringAgentInfo
+ properties:
+ start_url: http://$NODE.cord.lab:5004/monitoring/agent/openstack/start
+ stop_url: http://$NODE.cord.lab:5004/monitoring/agent/openstack/stop
+
+EOF
+done
+
+cat >> $FN <<EOF
+ os_monitoring_collector_plugin:
+ description: Infra Monitoring collector plugin info
+ type: tosca.nodes.MonitoringCollectorPluginInfo
+ properties:
+ plugin_folder_path: /opt/xos/synchronizers/monitoring/ceilometer/ceilometer-plugins/network/ext_services/openstack_infra/
+ plugin_rabbit_exchange: openstack_infra
+
+ openstack_monitoring_publisher_tenant:
+ description: OpenStack Monitoring Publisher Tenant
+ type: tosca.nodes.OpenStackMonitoringPublisher
+ requirements:
+ - provider_service:
+ node: service_ceilometer
+ relationship: tosca.relationships.TenantOfService
+ - monitoring_collector_plugin:
+ node: os_monitoring_collector_plugin
+ relationship: tosca.relationships.ProvidesMonitoringCollectorPluginInfo
+ - monitoring_agent_1:
+ node: os_monitoring_agent_head_node
+ relationship: tosca.relationships.ProvidesInfraMonitoringAgentInfo
+EOF
+I=0
+for NODE in $NODES; do
+ I=$(( I+1 ))
+ J=$(( I+1 ))
+ cat >> $FN <<EOF
+ - monitoring_agent_${J}:
+ node: os_monitoring_agent_cp_${I}
+ relationship: tosca.relationships.ProvidesInfraMonitoringAgentInfo
+EOF
+done
+