Skip to content

Commit

Permalink
fix(ceilometer): process event_update msgs (rackerlabs#438)
Browse files Browse the repository at this point in the history
* fix(ceilometer): process event_update messages

Ceilometer does not keep certain aspects about instances up-to-date.
Adding a list of events to process for event_update will ensure we apply
updated event_attributes to instance resources in gnocchi. This has the
benefit of versioning instances which is great[1].

[1] - https://gnocchi.osci.io/rest.html#history

* fix(ceilometer): separate out update events

This is necessary so that during updates we don't try to modify the
resources associated to the instance. We only want to update the
instance resource itself. There may be situations whereby we want to
update associated resources, but right now we're not trying to do that.
  • Loading branch information
LukeRepko committed Sep 12, 2024
1 parent 464e3dc commit 0f6ffff
Showing 1 changed file with 50 additions and 0 deletions.
50 changes: 50 additions & 0 deletions base-helm-configs/ceilometer/ceilometer-helm-overrides.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -902,6 +902,56 @@ conf:
instance_network_interface: '{"=": {"instance_id": "%s"}}'
instance_disk: '{"=": {"instance_id": "%s"}}'

- resource_type: instance
metrics:
memory:
memory.usage:
memory.resident:
memory.swap.in:
memory.swap.out:
memory.bandwidth.total:
memory.bandwidth.local:
vcpus:
cpu:
archive_policy_name: ceilometer-low-rate
cpu_l3_cache:
disk.root.size:
disk.ephemeral.size:
disk.latency:
disk.iops:
disk.capacity:
disk.allocation:
disk.usage:
compute.instance.booting.time:
perf.cpu.cycles:
perf.instructions:
perf.cache.references:
perf.cache.misses:
attributes:
host: resource_metadata.(instance_host|host)
image_ref: resource_metadata.image_ref
launched_at: resource_metadata.launched_at
created_at: resource_metadata.created_at
deleted_at: resource_metadata.deleted_at
display_name: resource_metadata.display_name
flavor_id: resource_metadata.(instance_flavor_id|(flavor.id)|flavor_id)
flavor_name: resource_metadata.(instance_type|(flavor.name)|flavor_name)
server_group: resource_metadata.user_metadata.server_group
event_update:
- compute.instance.update
- compute.instance.exists
- compute.instance.resize_confirm.end
- compute.instance.resize_revert.end
event_attributes:
id: instance_id
display_name: display_name
host: host
availability_zone: availability_zone
flavor_id: instance_type_id
flavor_name: instance_type
user_id: user_id
project_id: project_id

- resource_type: instance_network_interface
metrics:
network.outgoing.packets:
Expand Down

0 comments on commit 0f6ffff

Please sign in to comment.