blob: a2b55afc1c3aca3f7913504d0b22a9e6aa6805ab [file] [log] [blame]
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: /opt/cord_profile/onos_monitoring_service_endpoints.json
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
# OpenStack compute nodes
{% for node in groups["compute"] %}
os_monitoring_agent_cp_{{ loop.index }}:
description: Openstack Monitoring agent info for {{ node }}
type: tosca.nodes.InfraMonitoringAgentInfo
properties:
start_url: http://{{ node }}:5004/monitoring/agent/openstack/start
stop_url: http://{{ node }}:5004/monitoring/agent/openstack/stop
{% endfor %}
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
- monitoring_agent_2:
node: onos_monitoring_agent_head_node
relationship: tosca.relationships.ProvidesInfraMonitoringAgentInfo
{% set count = 2 %}
{% for node in groups["compute"] %}
- monitoring_agent_{{ count + loop.index }}:
node: os_monitoring_agent_cp_{{ loop.index }}
relationship: tosca.relationships.ProvidesInfraMonitoringAgentInfo
{% endfor %}