Ceilometer chart: Add missing definition files

This commit adds two missing definition files which are
meters.yaml and polling.yaml.

meters.yaml is the meter definition file that used for
ceilometer notification agent to convert meters.
polling.yaml is the polling definition file that used for
ceilometer polling agents to pull meters.

Change-Id: I6b9b7543aa1a77661d6a86166af59fde85085513
Story: 2005019
Task: 29811
Signed-off-by: Angie Wang <angie.wang@windriver.com>
This commit is contained in:
Angie Wang 2019-03-04 10:14:15 -05:00 committed by Chris Wedgwood
parent dbc69e3920
commit f987595373
5 changed files with 330 additions and 0 deletions

View File

@ -120,5 +120,7 @@ data:
pipeline.yaml: {{ toYaml .Values.conf.pipeline | b64enc }} pipeline.yaml: {{ toYaml .Values.conf.pipeline | b64enc }}
event_definitions.yaml: {{ toYaml .Values.conf.event_definitions | b64enc }} event_definitions.yaml: {{ toYaml .Values.conf.event_definitions | b64enc }}
gnocchi_resources.yaml: {{ toYaml .Values.conf.gnocchi_resources | b64enc }} gnocchi_resources.yaml: {{ toYaml .Values.conf.gnocchi_resources | b64enc }}
meters.yaml: {{ toYaml .Values.conf.meters | b64enc }}
polling.yaml: {{ toYaml .Values.conf.polling | b64enc }}
{{ include "helm-toolkit.snippets.values_template_renderer" (dict "envAll" $envAll "template" .Values.conf.wsgi_ceilometer "key" "wsgi-ceilometer.conf" "format" "Secret" ) | indent 2 }} {{ include "helm-toolkit.snippets.values_template_renderer" (dict "envAll" $envAll "template" .Values.conf.wsgi_ceilometer "key" "wsgi-ceilometer.conf" "format" "Secret" ) | indent 2 }}
{{- end }} {{- end }}

View File

@ -92,6 +92,10 @@ spec:
mountPath: /etc/ceilometer/gnocchi_resources.yaml mountPath: /etc/ceilometer/gnocchi_resources.yaml
subPath: gnocchi_resources.yaml subPath: gnocchi_resources.yaml
readOnly: true readOnly: true
- name: ceilometer-etc
mountPath: /etc/ceilometer/polling.yaml
subPath: polling.yaml
readOnly: true
- name: ceilometer-bin - name: ceilometer-bin
mountPath: /tmp/ceilometer-compute.sh mountPath: /tmp/ceilometer-compute.sh
subPath: ceilometer-compute.sh subPath: ceilometer-compute.sh

View File

@ -90,6 +90,10 @@ spec:
mountPath: /etc/ceilometer/gnocchi_resources.yaml mountPath: /etc/ceilometer/gnocchi_resources.yaml
subPath: gnocchi_resources.yaml subPath: gnocchi_resources.yaml
readOnly: true readOnly: true
- name: ceilometer-etc
mountPath: /etc/ceilometer/polling.yaml
subPath: polling.yaml
readOnly: true
- name: ceilometer-bin - name: ceilometer-bin
mountPath: /tmp/ceilometer-central.sh mountPath: /tmp/ceilometer-central.sh
subPath: ceilometer-central.sh subPath: ceilometer-central.sh

View File

@ -90,6 +90,12 @@ spec:
mountPath: /etc/ceilometer/gnocchi_resources.yaml mountPath: /etc/ceilometer/gnocchi_resources.yaml
subPath: gnocchi_resources.yaml subPath: gnocchi_resources.yaml
readOnly: true readOnly: true
- name: etc-ceilometer-meters
mountPath: /etc/ceilometer/meters.d
- name: ceilometer-etc
mountPath: /etc/ceilometer/meters.d/meters.yaml
subPath: meters.yaml
readOnly: true
- name: ceilometer-bin - name: ceilometer-bin
mountPath: /tmp/ceilometer-notification.sh mountPath: /tmp/ceilometer-notification.sh
subPath: ceilometer-notification.sh subPath: ceilometer-notification.sh
@ -98,6 +104,8 @@ spec:
volumes: volumes:
- name: pod-etc-ceilometer - name: pod-etc-ceilometer
emptyDir: {} emptyDir: {}
- name: etc-ceilometer-meters
emptyDir: {}
- name: ceilometer-etc - name: ceilometer-etc
secret: secret:
secretName: ceilometer-etc secretName: ceilometer-etc

View File

@ -937,6 +937,312 @@ conf:
- hardware.network.outgoing.bytes - hardware.network.outgoing.bytes
- hardware.network.outgoing.errors - hardware.network.outgoing.errors
resource_type: host_network_interface resource_type: host_network_interface
meters:
metric:
- name: "image.size"
event_type:
- "image.upload"
- "image.delete"
- "image.update"
type: "gauge"
unit: B
volume: $.payload.size
resource_id: $.payload.id
project_id: $.payload.owner
- name: "image.download"
event_type: "image.send"
type: "delta"
unit: "B"
volume: $.payload.bytes_sent
resource_id: $.payload.image_id
user_id: $.payload.receiver_user_id
project_id: $.payload.receiver_tenant_id
- name: "image.serve"
event_type: "image.send"
type: "delta"
unit: "B"
volume: $.payload.bytes_sent
resource_id: $.payload.image_id
project_id: $.payload.owner_id
- name: 'volume.size'
event_type:
- 'volume.exists'
- 'volume.create.*'
- 'volume.delete.*'
- 'volume.resize.*'
- 'volume.attach.*'
- 'volume.detach.*'
- 'volume.update.*'
type: 'gauge'
unit: 'GB'
volume: $.payload.size
user_id: $.payload.user_id
project_id: $.payload.tenant_id
resource_id: $.payload.volume_id
metadata:
display_name: $.payload.display_name
volume_type: $.payload.volume_type
- name: 'snapshot.size'
event_type:
- 'snapshot.exists'
- 'snapshot.create.*'
- 'snapshot.delete.*'
type: 'gauge'
unit: 'GB'
volume: $.payload.volume_size
user_id: $.payload.user_id
project_id: $.payload.tenant_id
resource_id: $.payload.snapshot_id
metadata:
display_name: $.payload.display_name
- name: 'backup.size'
event_type:
- 'backup.exists'
- 'backup.create.*'
- 'backup.delete.*'
- 'backup.restore.*'
type: 'gauge'
unit: 'GB'
volume: $.payload.size
user_id: $.payload.user_id
project_id: $.payload.tenant_id
resource_id: $.payload.backup_id
metadata:
display_name: $.payload.display_name
- name: $.payload.metrics.[*].name
event_type: 'magnum.bay.metrics.*'
type: 'gauge'
unit: $.payload.metrics.[*].unit
volume: $.payload.metrics.[*].value
user_id: $.payload.user_id
project_id: $.payload.project_id
resource_id: $.payload.resource_id
lookup: ['name', 'unit', 'volume']
- name: $.payload.measurements.[*].metric.[*].name
event_type: 'objectstore.http.request'
type: 'delta'
unit: $.payload.measurements.[*].metric.[*].unit
volume: $.payload.measurements.[*].result
resource_id: $.payload.target.id
user_id: $.payload.initiator.id
project_id: $.payload.initiator.project_id
lookup: ['name', 'unit', 'volume']
- name: 'memory'
event_type: 'compute.instance.*'
type: 'gauge'
unit: 'MB'
volume: $.payload.memory_mb
user_id: $.payload.user_id
project_id: $.payload.tenant_id
resource_id: $.payload.instance_id
user_metadata: $.payload.metadata
metadata: &instance_meta
host: $.payload.host
flavor_id: $.payload.instance_flavor_id
flavor_name: $.payload.instance_type
display_name: $.payload.display_name
host: $.payload.host
image_ref: $.payload.image_meta.base_image_ref
- name: 'vcpus'
event_type: 'compute.instance.*'
type: 'gauge'
unit: 'vcpu'
volume: $.payload.vcpus
user_id: $.payload.user_id
project_id: $.payload.tenant_id
resource_id: $.payload.instance_id
user_metadata: $.payload.metadata
metadata:
<<: *instance_meta
- name: 'compute.instance.booting.time'
event_type: 'compute.instance.create.end'
type: 'gauge'
unit: 'sec'
volume:
fields: [$.payload.created_at, $.payload.launched_at]
plugin: 'timedelta'
project_id: $.payload.tenant_id
resource_id: $.payload.instance_id
user_metadata: $.payload.metadata
metadata:
<<: *instance_meta
- name: 'disk.root.size'
event_type: 'compute.instance.*'
type: 'gauge'
unit: 'GB'
volume: $.payload.root_gb
user_id: $.payload.user_id
project_id: $.payload.tenant_id
resource_id: $.payload.instance_id
user_metadata: $.payload.metadata
metadata:
<<: *instance_meta
- name: 'disk.ephemeral.size'
event_type: 'compute.instance.*'
type: 'gauge'
unit: 'GB'
volume: $.payload.ephemeral_gb
user_id: $.payload.user_id
project_id: $.payload.tenant_id
resource_id: $.payload.instance_id
user_metadata: $.payload.metadata
metadata:
<<: *instance_meta
- name: 'bandwidth'
event_type: 'l3.meter'
type: 'delta'
unit: 'B'
volume: $.payload.bytes
project_id: $.payload.tenant_id
resource_id: $.payload.label_id
- name: 'compute.node.cpu.frequency'
event_type: 'compute.metrics.update'
type: 'gauge'
unit: 'MHz'
volume: $.payload.metrics[?(@.name='cpu.frequency')].value
resource_id: $.payload.host + "_" + $.payload.nodename
timestamp: $.payload.metrics[?(@.name='cpu.frequency')].timestamp
metadata:
event_type: $.event_type
host: $.publisher_id
source: $.payload.metrics[?(@.name='cpu.frequency')].source
- name: 'compute.node.cpu.user.time'
event_type: 'compute.metrics.update'
type: 'cumulative'
unit: 'ns'
volume: $.payload.metrics[?(@.name='cpu.user.time')].value
resource_id: $.payload.host + "_" + $.payload.nodename
timestamp: $.payload.metrics[?(@.name='cpu.user.time')].timestamp
metadata:
event_type: $.event_type
host: $.publisher_id
source: $.payload.metrics[?(@.name='cpu.user.time')].source
- name: 'compute.node.cpu.kernel.time'
event_type: 'compute.metrics.update'
type: 'cumulative'
unit: 'ns'
volume: $.payload.metrics[?(@.name='cpu.kernel.time')].value
resource_id: $.payload.host + "_" + $.payload.nodename
timestamp: $.payload.metrics[?(@.name='cpu.kernel.time')].timestamp
metadata:
event_type: $.event_type
host: $.publisher_id
source: $.payload.metrics[?(@.name='cpu.kernel.time')].source
- name: 'compute.node.cpu.idle.time'
event_type: 'compute.metrics.update'
type: 'cumulative'
unit: 'ns'
volume: $.payload.metrics[?(@.name='cpu.idle.time')].value
resource_id: $.payload.host + "_" + $.payload.nodename
timestamp: $.payload.metrics[?(@.name='cpu.idle.time')].timestamp
metadata:
event_type: $.event_type
host: $.publisher_id
source: $.payload.metrics[?(@.name='cpu.idle.time')].source
- name: 'compute.node.cpu.iowait.time'
event_type: 'compute.metrics.update'
type: 'cumulative'
unit: 'ns'
volume: $.payload.metrics[?(@.name='cpu.iowait.time')].value
resource_id: $.payload.host + "_" + $.payload.nodename
timestamp: $.payload.metrics[?(@.name='cpu.iowait.time')].timestamp
metadata:
event_type: $.event_type
host: $.publisher_id
source: $.payload.metrics[?(@.name='cpu.iowait.time')].source
- name: 'compute.node.cpu.kernel.percent'
event_type: 'compute.metrics.update'
type: 'gauge'
unit: 'percent'
volume: $.payload.metrics[?(@.name='cpu.kernel.percent')].value * 100
resource_id: $.payload.host + "_" + $.payload.nodename
timestamp: $.payload.metrics[?(@.name='cpu.kernel.percent')].timestamp
metadata:
event_type: $.event_type
host: $.publisher_id
source: $.payload.metrics[?(@.name='cpu.kernel.percent')].source
- name: 'compute.node.cpu.idle.percent'
event_type: 'compute.metrics.update'
type: 'gauge'
unit: 'percent'
volume: $.payload.metrics[?(@.name='cpu.idle.percent')].value * 100
resource_id: $.payload.host + "_" + $.payload.nodename
timestamp: $.payload.metrics[?(@.name='cpu.idle.percent')].timestamp
metadata:
event_type: $.event_type
host: $.publisher_id
source: $.payload.metrics[?(@.name='cpu.idle.percent')].source
- name: 'compute.node.cpu.user.percent'
event_type: 'compute.metrics.update'
type: 'gauge'
unit: 'percent'
volume: $.payload.metrics[?(@.name='cpu.user.percent')].value * 100
resource_id: $.payload.host + "_" + $.payload.nodename
timestamp: $.payload.metrics[?(@.name='cpu.user.percent')].timestamp
metadata:
event_type: $.event_type
host: $.publisher_id
source: $.payload.metrics[?(@.name='cpu.user.percent')].source
- name: 'compute.node.cpu.iowait.percent'
event_type: 'compute.metrics.update'
type: 'gauge'
unit: 'percent'
volume: $.payload.metrics[?(@.name='cpu.iowait.percent')].value * 100
resource_id: $.payload.host + "_" + $.payload.nodename
timestamp: $.payload.metrics[?(@.name='cpu.iowait.percent')].timestamp
metadata:
event_type: $.event_type
host: $.publisher_id
source: $.payload.metrics[?(@.name='cpu.iowait.percent')].source
- name: 'compute.node.cpu.percent'
event_type: 'compute.metrics.update'
type: 'gauge'
unit: 'percent'
volume: $.payload.metrics[?(@.name='cpu.percent')].value * 100
resource_id: $.payload.host + "_" + $.payload.nodename
timestamp: $.payload.metrics[?(@.name='cpu.percent')].timestamp
metadata:
event_type: $.event_type
host: $.publisher_id
source: $.payload.metrics[?(@.name='cpu.percent')].source
- name: $.payload.outcome - $.payload.outcome + 'identity.authenticate.' + $.payload.outcome
type: 'delta'
unit: 'user'
volume: 1
event_type:
- 'identity.authenticate'
resource_id: $.payload.initiator.id
user_id: $.payload.initiator.id
- name: 'dns.domain.exists'
event_type: 'dns.domain.exists'
type: 'cumulative'
unit: 's'
volume:
fields: [$.payload.audit_period_beginning, $.payload.audit_period_ending]
plugin: 'timedelta'
project_id: $.payload.tenant_id
resource_id: $.payload.id
user_id: $._context_user
metadata:
status: $.payload.status
pool_id: $.payload.pool_id
host: $.publisher_id
- name: 'trove.instance.exists'
event_type: 'trove.instance.exists'
type: 'cumulative'
unit: 's'
volume:
fields: [$.payload.audit_period_beginning, $.payload.audit_period_ending]
plugin: 'timedelta'
project_id: $.payload.tenant_id
resource_id: $.payload.instance_id
user_id: $.payload.user_id
metadata:
nova_instance_id: $.payload.nova_instance_id
state: $.payload.state
service_id: $.payload.service_id
instance_type: $.payload.instance_type
instance_type_id: $.payload.instance_type_id
paste: paste:
'app:api-server': 'app:api-server':
paste.app_factory: 'ceilometer.api.app:app_factory' paste.app_factory: 'ceilometer.api.app:app_factory'
@ -954,6 +1260,12 @@ conf:
paste.filter_factory: 'oslo_middleware:RequestId.factory' paste.filter_factory: 'oslo_middleware:RequestId.factory'
'pipeline:main': 'pipeline:main':
pipeline: cors http_proxy_to_wsgi request_id authtoken api-server pipeline: cors http_proxy_to_wsgi request_id authtoken api-server
polling:
sources:
- name: all_pollsters
interval: 600
meters:
- "*"
pipeline: pipeline:
sources: sources:
- name: meter_source - name: meter_source