blob: 625b64ff165bbeaee84ac3b6d314fdddeb47b5b2 [file] [log] [blame]
{#
Copyright 2017-present Open Networking Foundation
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
#}
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 %}