Fix ceilometer configuration files for Mitaka

This commit adjusts ceilometer configs for servers and agents:
- Redundant groups from agent and server are deleted
- pipeline.yaml for server is updated

Change-Id: I4a386ffeb332586150d8d9f1f592e2c6ab6260f1
diff --git a/ceilometer/files/mitaka/ceilometer-agent.conf.Debian b/ceilometer/files/mitaka/ceilometer-agent.conf.Debian
index 0234a65..879c5ee 100644
--- a/ceilometer/files/mitaka/ceilometer-agent.conf.Debian
+++ b/ceilometer/files/mitaka/ceilometer-agent.conf.Debian
@@ -8,7 +8,11 @@
 # Print debugging output (set logging level to DEBUG instead
 # of default WARNING level). (boolean value)
 #debug=false
-debug=False
+{%- if agent.debug is defined %}
+debug = {{ agent.debug }}
+{%- else %}
+debug = False
+{%- endif %}
 
 # Print more verbose output (set logging level to INFO instead
 # of default WARNING level). (boolean value)
@@ -86,112 +90,6 @@
 # option. (string value)
 #control_exchange = openstack
 
-[database]
-
-#
-# From oslo.db
-#
-
-# The file name to use with SQLite. (string value)
-# Deprecated group/name - [DEFAULT]/sqlite_db
-#sqlite_db = oslo.sqlite
-
-# If True, SQLite uses synchronous mode. (boolean value)
-# Deprecated group/name - [DEFAULT]/sqlite_synchronous
-#sqlite_synchronous = true
-
-# The back end to use for the database. (string value)
-# Deprecated group/name - [DEFAULT]/db_backend
-#backend = sqlalchemy
-
-# The SQLAlchemy connection string to use to connect to the database.
-# (string value)
-# Deprecated group/name - [DEFAULT]/sql_connection
-# Deprecated group/name - [DATABASE]/sql_connection
-# Deprecated group/name - [sql]/connection
-#connection = <None>
-
-# The SQLAlchemy connection string to use to connect to the slave
-# database. (string value)
-#slave_connection = <None>
-
-# The SQL mode to be used for MySQL sessions. This option, including
-# the default, overrides any server-set SQL mode. To use whatever SQL
-# mode is set by the server configuration, set this to no value.
-# Example: mysql_sql_mode= (string value)
-#mysql_sql_mode = TRADITIONAL
-
-# Timeout before idle SQL connections are reaped. (integer value)
-# Deprecated group/name - [DEFAULT]/sql_idle_timeout
-# Deprecated group/name - [DATABASE]/sql_idle_timeout
-# Deprecated group/name - [sql]/idle_timeout
-#idle_timeout = 3600
-
-# Minimum number of SQL connections to keep open in a pool. (integer
-# value)
-# Deprecated group/name - [DEFAULT]/sql_min_pool_size
-# Deprecated group/name - [DATABASE]/sql_min_pool_size
-#min_pool_size = 1
-
-# Maximum number of SQL connections to keep open in a pool. (integer
-# value)
-# Deprecated group/name - [DEFAULT]/sql_max_pool_size
-# Deprecated group/name - [DATABASE]/sql_max_pool_size
-#max_pool_size = <None>
-
-# Maximum number of database connection retries during startup. Set to
-# -1 to specify an infinite retry count. (integer value)
-# Deprecated group/name - [DEFAULT]/sql_max_retries
-# Deprecated group/name - [DATABASE]/sql_max_retries
-#max_retries = 10
-
-# Interval between retries of opening a SQL connection. (integer
-# value)
-# Deprecated group/name - [DEFAULT]/sql_retry_interval
-# Deprecated group/name - [DATABASE]/reconnect_interval
-#retry_interval = 10
-
-# If set, use this value for max_overflow with SQLAlchemy. (integer
-# value)
-# Deprecated group/name - [DEFAULT]/sql_max_overflow
-# Deprecated group/name - [DATABASE]/sqlalchemy_max_overflow
-#max_overflow = <None>
-
-# Verbosity of SQL debugging information: 0=None, 100=Everything.
-# (integer value)
-# Deprecated group/name - [DEFAULT]/sql_connection_debug
-#connection_debug = 0
-
-# Add Python stack traces to SQL as comment strings. (boolean value)
-# Deprecated group/name - [DEFAULT]/sql_connection_trace
-#connection_trace = false
-
-# If set, use this value for pool_timeout with SQLAlchemy. (integer
-# value)
-# Deprecated group/name - [DATABASE]/sqlalchemy_pool_timeout
-#pool_timeout = <None>
-
-# Enable the experimental use of database reconnect on connection
-# lost. (boolean value)
-#use_db_reconnect = false
-
-# Seconds between retries of a database transaction. (integer value)
-#db_retry_interval = 1
-
-# If True, increases the interval between retries of a database
-# operation up to db_max_retry_interval. (boolean value)
-#db_inc_retry_interval = true
-
-# If db_inc_retry_interval is set, the maximum seconds between retries
-# of a database operation. (integer value)
-#db_max_retry_interval = 10
-
-# Maximum retries in case of connection error or deadlock error before
-# error is raised. Set to -1 to specify an infinite retry count.
-# (integer value)
-#db_max_retries = 20
-
-
 [keystone_authtoken]
 
 #
@@ -275,73 +173,6 @@
 # Password for Redis server (optional). (string value)
 #password = <None>
 
-
-[matchmaker_ring]
-
-#
-# From oslo.messaging
-#
-
-# Matchmaker ring file (JSON). (string value)
-# Deprecated group/name - [DEFAULT]/matchmaker_ringfile
-#ringfile = /etc/oslo/matchmaker_ring.json
-
-[oslo_messaging_amqp]
-
-#
-# From oslo.messaging
-#
-
-# address prefix used when sending to a specific server (string value)
-# Deprecated group/name - [amqp1]/server_request_prefix
-#server_request_prefix = exclusive
-
-# address prefix used when broadcasting to all servers (string value)
-# Deprecated group/name - [amqp1]/broadcast_prefix
-#broadcast_prefix = broadcast
-
-# address prefix when sending to any server in group (string value)
-# Deprecated group/name - [amqp1]/group_request_prefix
-#group_request_prefix = unicast
-
-# Name for the AMQP container (string value)
-# Deprecated group/name - [amqp1]/container_name
-#container_name = <None>
-
-# Timeout for inactive connections (in seconds) (integer value)
-# Deprecated group/name - [amqp1]/idle_timeout
-#idle_timeout = 0
-
-# Debug: dump AMQP frames to stdout (boolean value)
-# Deprecated group/name - [amqp1]/trace
-#trace = false
-
-# CA certificate PEM file for verifing server certificate (string
-# value)
-# Deprecated group/name - [amqp1]/ssl_ca_file
-#ssl_ca_file =
-
-# Identifying certificate PEM file to present to clients (string
-# value)
-# Deprecated group/name - [amqp1]/ssl_cert_file
-#ssl_cert_file =
-
-# Private key PEM file used to sign cert_file certificate (string
-# value)
-# Deprecated group/name - [amqp1]/ssl_key_file
-#ssl_key_file =
-
-# Password for decrypting ssl_key_file (if encrypted) (string value)
-# Deprecated group/name - [amqp1]/ssl_key_password
-#ssl_key_password = <None>
-
-# Accept clients using either SSL or plain TCP (boolean value)
-# Deprecated group/name - [amqp1]/allow_insecure_clients
-#allow_insecure_clients = false
-
-
-
-
 [oslo_messaging_rabbit]
 
 #
diff --git a/ceilometer/files/mitaka/ceilometer-server.conf.Debian b/ceilometer/files/mitaka/ceilometer-server.conf.Debian
index f746b4d..15895e9 100644
--- a/ceilometer/files/mitaka/ceilometer-server.conf.Debian
+++ b/ceilometer/files/mitaka/ceilometer-server.conf.Debian
@@ -8,7 +8,11 @@
 # Print debugging output (set logging level to DEBUG instead
 # of default WARNING level). (boolean value)
 #debug=false
-debug=False
+{%- if server.debug is defined %}
+debug = {{ server.debug }}
+{%- else %}
+debug = False
+{%- endif %}
 
 # Print more verbose output (set logging level to INFO instead
 # of default WARNING level). (boolean value)
@@ -100,66 +104,6 @@
 batch_polled_samples = {{ server.batch_polled_samples|lower }}
 {%- endif %}
 
-[alarm]
-
-#
-# Options defined in ceilometer.cli
-#
-
-# Class to launch as alarm evaluation service. (string value)
-#evaluation_service=ceilometer.alarm.service.SingletonAlarmService
-evaluation_service=ceilometer.alarm.service.SingletonAlarmService
-
-
-#
-# Options defined in ceilometer.alarm.notifier.rest
-#
-
-# SSL Client certificate for REST notifier. (string value)
-#rest_notifier_certificate_file=
-
-# SSL Client private key for REST notifier. (string value)
-#rest_notifier_certificate_key=
-
-# Whether to verify the SSL Server certificate when calling
-# alarm action. (boolean value)
-#rest_notifier_ssl_verify=true
-
-
-#
-# Options defined in ceilometer.alarm.rpc
-#
-
-# The topic that ceilometer uses for alarm notifier messages.
-# (string value)
-#notifier_rpc_topic=alarm_notifier
-
-# The topic that ceilometer uses for alarm partition
-# coordination messages. (string value)
-#partition_rpc_topic=alarm_partition_coordination
-partition_rpc_topic=alarm_partition_coordination
-
-
-#
-# Options defined in ceilometer.alarm.service
-#
-
-# Period of evaluation cycle, should be >= than configured
-# pipeline interval for collection of underlying metrics.
-# (integer value)
-# Deprecated group/name - [alarm]/threshold_evaluation_interval
-#evaluation_interval=60
-evaluation_interval=60
-
-
-#
-# Options defined in ceilometer.api.controllers.v2
-#
-
-# Record alarm change events. (boolean value)
-#record_history=true
-record_history=True
-
 [api]
 
 #
@@ -180,6 +124,8 @@
 # (boolean value)
 #enable_reverse_dns_lookup=false
 
+workers={{ server.get('workers', 1) }}
+
 [coordination]
 
 #
@@ -245,86 +191,12 @@
 event_connection = log://
 {%- endif %}
 
-# The SQLAlchemy connection string to use to connect to the slave
-# database. (string value)
-#slave_connection = <None>
-
-# The SQL mode to be used for MySQL sessions. This option, including
-# the default, overrides any server-set SQL mode. To use whatever SQL
-# mode is set by the server configuration, set this to no value.
-# Example: mysql_sql_mode= (string value)
-#mysql_sql_mode = TRADITIONAL
-
-# Timeout before idle SQL connections are reaped. (integer value)
-# Deprecated group/name - [DEFAULT]/sql_idle_timeout
-# Deprecated group/name - [DATABASE]/sql_idle_timeout
-# Deprecated group/name - [sql]/idle_timeout
-#idle_timeout = 3600
-
-# Minimum number of SQL connections to keep open in a pool. (integer
-# value)
-# Deprecated group/name - [DEFAULT]/sql_min_pool_size
-# Deprecated group/name - [DATABASE]/sql_min_pool_size
-#min_pool_size = 1
-
-# Maximum number of SQL connections to keep open in a pool. (integer
-# value)
-# Deprecated group/name - [DEFAULT]/sql_max_pool_size
-# Deprecated group/name - [DATABASE]/sql_max_pool_size
-#max_pool_size = <None>
-
 # Maximum number of database connection retries during startup. Set to
 # -1 to specify an infinite retry count. (integer value)
 # Deprecated group/name - [DEFAULT]/sql_max_retries
 # Deprecated group/name - [DATABASE]/sql_max_retries
 #max_retries = 10
-
-# Interval between retries of opening a SQL connection. (integer
-# value)
-# Deprecated group/name - [DEFAULT]/sql_retry_interval
-# Deprecated group/name - [DATABASE]/reconnect_interval
-#retry_interval = 10
-
-# If set, use this value for max_overflow with SQLAlchemy. (integer
-# value)
-# Deprecated group/name - [DEFAULT]/sql_max_overflow
-# Deprecated group/name - [DATABASE]/sqlalchemy_max_overflow
-#max_overflow = <None>
-
-# Verbosity of SQL debugging information: 0=None, 100=Everything.
-# (integer value)
-# Deprecated group/name - [DEFAULT]/sql_connection_debug
-#connection_debug = 0
-
-# Add Python stack traces to SQL as comment strings. (boolean value)
-# Deprecated group/name - [DEFAULT]/sql_connection_trace
-#connection_trace = false
-
-# If set, use this value for pool_timeout with SQLAlchemy. (integer
-# value)
-# Deprecated group/name - [DATABASE]/sqlalchemy_pool_timeout
-#pool_timeout = <None>
-
-# Enable the experimental use of database reconnect on connection
-# lost. (boolean value)
-#use_db_reconnect = false
-
-# Seconds between retries of a database transaction. (integer value)
-#db_retry_interval = 1
-
-# If True, increases the interval between retries of a database
-# operation up to db_max_retry_interval. (boolean value)
-#db_inc_retry_interval = true
-
-# If db_inc_retry_interval is set, the maximum seconds between retries
-# of a database operation. (integer value)
-#db_max_retry_interval = 10
-
-# Maximum retries in case of connection error or deadlock error before
-# error is raised. Set to -1 to specify an infinite retry count.
-# (integer value)
-#db_max_retries = 20
-
+max_retries = -1
 
 [keystone_authtoken]
 
@@ -394,32 +266,6 @@
 #admin_tenant_name=admin
 admin_tenant_name={{ server.identity.tenant }}
 
-[matchmaker_redis]
-
-#
-# From oslo.messaging
-#
-
-# Host to locate redis. (string value)
-#host = 127.0.0.1
-
-# Use this port to connect to redis host. (integer value)
-#port = 6379
-
-# Password for Redis server (optional). (string value)
-#password = <None>
-
-
-[matchmaker_ring]
-
-#
-# From oslo.messaging
-#
-
-# Matchmaker ring file (JSON). (string value)
-# Deprecated group/name - [DEFAULT]/matchmaker_ringfile
-#ringfile = /etc/oslo/matchmaker_ring.json
-
 [notification]
 
 #
@@ -433,7 +279,11 @@
 
 # Save event details. (boolean value)
 #store_events=false
+{%- if server.database.elasticsearch.enabled %}
 store_events=True
+{%- else %}
+store_events=False
+{%- endif %}
 
 # Messaging URLs to listen for notifications. Example:
 # transport://user:pass@host1:port[,hostN:portN]/virtual_host
@@ -442,6 +292,11 @@
 
 disable_non_metric_meters = False
 
+{%- if server.workers is defined %}
+workers = server.get("workers", 1)
+{%- endif %}
+
+
 [publisher]
 
 #
@@ -462,62 +317,6 @@
 {%- endif %}
 {%- endfor %}
 
-[oslo_messaging_amqp]
-
-#
-# From oslo.messaging
-#
-
-# address prefix used when sending to a specific server (string value)
-# Deprecated group/name - [amqp1]/server_request_prefix
-#server_request_prefix = exclusive
-
-# address prefix used when broadcasting to all servers (string value)
-# Deprecated group/name - [amqp1]/broadcast_prefix
-#broadcast_prefix = broadcast
-
-# address prefix when sending to any server in group (string value)
-# Deprecated group/name - [amqp1]/group_request_prefix
-#group_request_prefix = unicast
-
-# Name for the AMQP container (string value)
-# Deprecated group/name - [amqp1]/container_name
-#container_name = <None>
-
-# Timeout for inactive connections (in seconds) (integer value)
-# Deprecated group/name - [amqp1]/idle_timeout
-#idle_timeout = 0
-
-# Debug: dump AMQP frames to stdout (boolean value)
-# Deprecated group/name - [amqp1]/trace
-#trace = false
-
-# CA certificate PEM file for verifing server certificate (string
-# value)
-# Deprecated group/name - [amqp1]/ssl_ca_file
-#ssl_ca_file =
-
-# Identifying certificate PEM file to present to clients (string
-# value)
-# Deprecated group/name - [amqp1]/ssl_cert_file
-#ssl_cert_file =
-
-# Private key PEM file used to sign cert_file certificate (string
-# value)
-# Deprecated group/name - [amqp1]/ssl_key_file
-#ssl_key_file =
-
-# Password for decrypting ssl_key_file (if encrypted) (string value)
-# Deprecated group/name - [amqp1]/ssl_key_password
-#ssl_key_password = <None>
-
-# Accept clients using either SSL or plain TCP (boolean value)
-# Deprecated group/name - [amqp1]/allow_insecure_clients
-#allow_insecure_clients = false
-
-
-
-
 [oslo_messaging_rabbit]
 
 #
@@ -680,8 +479,8 @@
 # to Identity Service is established. (boolean value)
 #insecure=false
 
-
 [cors]
+
 #
 # From oslo.middleware
 #
@@ -724,4 +523,4 @@
 #allow_headers = X-Auth-Token,X-Openstack-Request-Id,X-Subject-Token,X-Project-Id,X-Project-Name,X-Project-Domain-Id,X-Project-Domain-Name,X-Domain-Id,X-Domain-Name
 {% if server.get('cors', {}).allow_headers is defined %}
 allow_headers = {{ server.cors.allow_headers }}
-{% endif %}
+{% endif %}
\ No newline at end of file
diff --git a/ceilometer/files/mitaka/pipeline.yaml b/ceilometer/files/mitaka/pipeline.yaml
index 058e3cf..6fa518b 100644
--- a/ceilometer/files/mitaka/pipeline.yaml
+++ b/ceilometer/files/mitaka/pipeline.yaml
@@ -11,6 +11,16 @@
       interval: 60
       meters:
           - "*"
+          - "!volume.create.*"
+          - "!volume.delete.*"
+          - "!volume.update.*"
+          - "!volume.resize.*"
+          - "!volume.attach.*"
+          - "!volume.detach.*"
+          - "!snapshot.create.*"
+          - "!snapshot.delete.*"
+          - "!identity.authenticate.*"
+          - "!storage.api.request"
       sinks:
           - meter_sink
 sinks: