Support for Contrail-specific Ceilometer meters
Change-Id: Ia3919fc7526c4b1ab9e3a20347c1fc30b8ba02eb
This commit is contained in:
parent
11a1f6ed4c
commit
baa9ad17df
|
@ -95,6 +95,25 @@ class contrail::controller {
|
||||||
# Disable neutron agents
|
# Disable neutron agents
|
||||||
contrail::pcs_delete_resource { $contrail::disabled_services: }
|
contrail::pcs_delete_resource { $contrail::disabled_services: }
|
||||||
|
|
||||||
|
# Contrail-specific ceilometer settings
|
||||||
|
$ceilometer_enabled = $contrail::ceilometer_hash['enabled']
|
||||||
|
|
||||||
|
if ($ceilometer_enabled) {
|
||||||
|
package { 'ceilometer-plugin-contrail': } ->
|
||||||
|
file {'/etc/ceilometer/pipeline.yaml':
|
||||||
|
ensure => file,
|
||||||
|
content => template('contrail/pipeline.yaml.erb'),
|
||||||
|
} ~>
|
||||||
|
service {'ceilometer-agent-central':
|
||||||
|
ensure => runnning,
|
||||||
|
name => 'p_ceilometer-agent-central',
|
||||||
|
enable => true,
|
||||||
|
hasstatus => true,
|
||||||
|
hasrestart => true,
|
||||||
|
provider => 'pacemaker',
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
service { 'neutron-server':
|
service { 'neutron-server':
|
||||||
ensure => running,
|
ensure => running,
|
||||||
enable => true,
|
enable => true,
|
||||||
|
@ -106,4 +125,4 @@ class contrail::controller {
|
||||||
],
|
],
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -20,67 +20,71 @@ class contrail {
|
||||||
# TODO
|
# TODO
|
||||||
#$plugin_version = $settings['metadata']['plugin_version']
|
#$plugin_version = $settings['metadata']['plugin_version']
|
||||||
$plugin_version = '3.0'
|
$plugin_version = '3.0'
|
||||||
$distribution= 'juniper'
|
$distribution = 'juniper'
|
||||||
|
|
||||||
$network_scheme = hiera_hash('network_scheme', {})
|
$network_scheme = hiera_hash('network_scheme', {})
|
||||||
$network_metadata = hiera_hash('network_metadata', {})
|
$network_metadata = hiera_hash('network_metadata', {})
|
||||||
$uid = hiera('uid')
|
$uid = hiera('uid')
|
||||||
$master_ip = hiera('master_ip')
|
$master_ip = hiera('master_ip')
|
||||||
$node_role = hiera('role')
|
$node_role = hiera('role')
|
||||||
$node_name = hiera('user_node_name')
|
$node_name = hiera('user_node_name')
|
||||||
$nodes= hiera('nodes')
|
$nodes = hiera('nodes')
|
||||||
|
|
||||||
$public_ssl_hash = hiera('public_ssl')
|
$public_ssl_hash = hiera('public_ssl')
|
||||||
$public_ssl = $public_ssl_hash['services']
|
$public_ssl = $public_ssl_hash['services']
|
||||||
|
|
||||||
$neutron_settings=hiera_hash('quantum_settings', {})
|
$neutron_settings = hiera_hash('quantum_settings', {})
|
||||||
$metadata_secret=$neutron_settings['metadata']['metadata_proxy_shared_secret']
|
$metadata_secret = $neutron_settings['metadata']['metadata_proxy_shared_secret']
|
||||||
$service_token = $neutron_settings['keystone']['admin_password']
|
$service_token = $neutron_settings['keystone']['admin_password']
|
||||||
$nets = $neutron_settings['predefined_networks']
|
$nets = $neutron_settings['predefined_networks']
|
||||||
|
|
||||||
$keystone=hiera_hash('keystone', {})
|
$default_ceilometer_hash = { 'enabled' => false }
|
||||||
|
$ceilometer_hash = hiera_hash('ceilometer', $default_ceilometer_hash)
|
||||||
|
|
||||||
|
$keystone = hiera_hash('keystone', {})
|
||||||
$admin_token = $keystone['admin_token']
|
$admin_token = $keystone['admin_token']
|
||||||
|
|
||||||
$admin_settings = hiera_hash('access', {})
|
$admin_settings = hiera_hash('access', {})
|
||||||
$admin_username = $admin_settings['user']
|
$admin_username = $admin_settings['user']
|
||||||
$admin_password = $admin_settings['password']
|
$admin_password = $admin_settings['password']
|
||||||
$admin_tenant = $admin_settings['tenant']
|
$admin_tenant = $admin_settings['tenant']
|
||||||
|
|
||||||
# Contrail settings
|
# Contrail settings
|
||||||
$asnum = $settings['contrail_asnum']
|
$asnum = $settings['contrail_asnum']
|
||||||
$external = $settings['contrail_external']
|
$external = $settings['contrail_external']
|
||||||
$route_target = $settings['contrail_route_target']
|
$route_target = $settings['contrail_route_target']
|
||||||
$gateways = split($settings['contrail_gateways'], ',')
|
$gateways = split($settings['contrail_gateways'], ',')
|
||||||
|
|
||||||
# Custom mount point for contrail-db
|
# Custom mount point for contrail-db
|
||||||
$cassandra_path='/var/lib/contrail_db'
|
$cassandra_path = '/var/lib/contrail_db'
|
||||||
|
|
||||||
# Network configuration
|
# Network configuration
|
||||||
prepare_network_config($network_scheme)
|
prepare_network_config($network_scheme)
|
||||||
$interface=get_network_role_property('neutron/mesh', 'interface')
|
$interface = get_network_role_property('neutron/mesh', 'interface')
|
||||||
$gateway=$network_scheme['endpoints'][$interface]['gateway']
|
$gateway = $network_scheme['endpoints'][$interface]['gateway']
|
||||||
$address=get_network_role_property('neutron/mesh', 'ipaddr')
|
$address = get_network_role_property('neutron/mesh', 'ipaddr')
|
||||||
$cidr=get_network_role_property('neutron/mesh', 'cidr')
|
$cidr = get_network_role_property('neutron/mesh', 'cidr')
|
||||||
$netmask=get_network_role_property('neutron/mesh', 'netmask')
|
$netmask = get_network_role_property('neutron/mesh', 'netmask')
|
||||||
$netmask_short=netmask_to_cidr($netmask)
|
$netmask_short = netmask_to_cidr($netmask)
|
||||||
$phys_dev=get_private_ifname($interface)
|
$phys_dev = get_private_ifname($interface)
|
||||||
|
|
||||||
$mos_mgmt_vip=$network_metadata['vips']['management']['ipaddr']
|
$mos_mgmt_vip = $network_metadata['vips']['management']['ipaddr']
|
||||||
$mos_public_vip=$network_metadata['vips']['public']['ipaddr']
|
$mos_public_vip = $network_metadata['vips']['public']['ipaddr']
|
||||||
|
|
||||||
$contrail_private_vip=$network_metadata['vips']['contrail_priv']['ipaddr']
|
$contrail_private_vip = $network_metadata['vips']['contrail_priv']['ipaddr']
|
||||||
$contrail_mgmt_vip=$contrail_private_vip
|
$contrail_mgmt_vip = $contrail_private_vip
|
||||||
|
|
||||||
$disabled_services=['neutron-plugin-openvswitch-agent','neutron-dhcp-agent','neutron-metadata-agent','neutron-l3-agent']
|
$disabled_services = ['neutron-plugin-openvswitch-agent','neutron-dhcp-agent',
|
||||||
|
'neutron-metadata-agent','neutron-l3-agent']
|
||||||
|
|
||||||
# Settings for RabbitMQ on contrail controllers
|
# Settings for RabbitMQ on contrail controllers
|
||||||
$rabbit=hiera('rabbit')
|
$rabbit = hiera('rabbit')
|
||||||
$rabbit_password=$rabbit['password']
|
$rabbit_password = $rabbit['password']
|
||||||
$rabbit_hosts_ports = hiera('amqp_hosts')
|
$rabbit_hosts_ports = hiera('amqp_hosts')
|
||||||
|
|
||||||
# RabbitMQ nodes Mgmt IP list
|
# RabbitMQ nodes Mgmt IP list
|
||||||
$rabbit_nodes_hash = get_nodes_hash_by_roles(hiera('network_metadata'), ['primary-controller', 'controller'])
|
$rabbit_nodes_hash = get_nodes_hash_by_roles(hiera('network_metadata'), ['primary-controller', 'controller'])
|
||||||
$rabbit_ips = values(get_node_to_ipaddr_map_by_network_role($rabbit_nodes_hash, 'mgmt/messaging'))
|
$rabbit_ips = values(get_node_to_ipaddr_map_by_network_role($rabbit_nodes_hash, 'mgmt/messaging'))
|
||||||
|
|
||||||
# Contrail DB nodes Private IP list
|
# Contrail DB nodes Private IP list
|
||||||
$primary_contrail_db_nodes_hash = get_nodes_hash_by_roles(hiera('network_metadata'), ['primary-contrail-db'])
|
$primary_contrail_db_nodes_hash = get_nodes_hash_by_roles(hiera('network_metadata'), ['primary-contrail-db'])
|
||||||
|
|
|
@ -0,0 +1,97 @@
|
||||||
|
---
|
||||||
|
sources:
|
||||||
|
- name: meter_source
|
||||||
|
interval: 60
|
||||||
|
meters:
|
||||||
|
- "*"
|
||||||
|
sinks:
|
||||||
|
- meter_sink
|
||||||
|
- name: cpu_source
|
||||||
|
interval: 60
|
||||||
|
meters:
|
||||||
|
- "cpu"
|
||||||
|
sinks:
|
||||||
|
- cpu_sink
|
||||||
|
- name: disk_source
|
||||||
|
interval: 60
|
||||||
|
meters:
|
||||||
|
- "disk.read.bytes"
|
||||||
|
- "disk.read.requests"
|
||||||
|
- "disk.write.bytes"
|
||||||
|
- "disk.write.requests"
|
||||||
|
- "disk.device.read.bytes"
|
||||||
|
- "disk.device.read.requests"
|
||||||
|
- "disk.device.write.bytes"
|
||||||
|
- "disk.device.write.requests"
|
||||||
|
sinks:
|
||||||
|
- disk_sink
|
||||||
|
- name: network_source
|
||||||
|
interval: 60
|
||||||
|
meters:
|
||||||
|
- "network.incoming.bytes"
|
||||||
|
- "network.incoming.packets"
|
||||||
|
- "network.outgoing.bytes"
|
||||||
|
- "network.outgoing.packets"
|
||||||
|
sinks:
|
||||||
|
- network_sink
|
||||||
|
- name: contrail_source
|
||||||
|
interval: 600
|
||||||
|
meters:
|
||||||
|
- "ip.floating.receive.packets"
|
||||||
|
- "ip.floating.transmit.packets"
|
||||||
|
- "ip.floating.receive.bytes"
|
||||||
|
- "ip.floating.transmit.bytes"
|
||||||
|
resources:
|
||||||
|
- contrail://<%= scope.lookupvar('contrail::contrail_private_vip') %>:8081
|
||||||
|
sinks:
|
||||||
|
- contrail_sink
|
||||||
|
sinks:
|
||||||
|
- name: meter_sink
|
||||||
|
transformers:
|
||||||
|
publishers:
|
||||||
|
- notifier://
|
||||||
|
- name: cpu_sink
|
||||||
|
transformers:
|
||||||
|
- name: "rate_of_change"
|
||||||
|
parameters:
|
||||||
|
target:
|
||||||
|
name: "cpu_util"
|
||||||
|
unit: "%"
|
||||||
|
type: "gauge"
|
||||||
|
scale: "100.0 / (10**9 * (resource_metadata.cpu_number or 1))"
|
||||||
|
publishers:
|
||||||
|
- notifier://
|
||||||
|
- name: disk_sink
|
||||||
|
transformers:
|
||||||
|
- name: "rate_of_change"
|
||||||
|
parameters:
|
||||||
|
source:
|
||||||
|
map_from:
|
||||||
|
name: "(disk\\.device|disk)\\.(read|write)\\.(bytes|requests)"
|
||||||
|
unit: "(B|request)"
|
||||||
|
target:
|
||||||
|
map_to:
|
||||||
|
name: "\\1.\\2.\\3.rate"
|
||||||
|
unit: "\\1/s"
|
||||||
|
type: "gauge"
|
||||||
|
publishers:
|
||||||
|
- notifier://
|
||||||
|
- name: network_sink
|
||||||
|
transformers:
|
||||||
|
- name: "rate_of_change"
|
||||||
|
parameters:
|
||||||
|
source:
|
||||||
|
map_from:
|
||||||
|
name: "network\\.(incoming|outgoing)\\.(bytes|packets)"
|
||||||
|
unit: "(B|packet)"
|
||||||
|
target:
|
||||||
|
map_to:
|
||||||
|
name: "network.\\1.\\2.rate"
|
||||||
|
unit: "\\1/s"
|
||||||
|
type: "gauge"
|
||||||
|
publishers:
|
||||||
|
- notifier://
|
||||||
|
- name: contrail_sink
|
||||||
|
publishers:
|
||||||
|
- rpc://
|
||||||
|
transformers:
|
Loading…
Reference in New Issue