yahoo-eng-team team mailing list archive
-
yahoo-eng-team team
-
Mailing list archive
-
Message #87289
[Bug 1945560] [NEW] Neutron-metering doesnt get "bandwidth" metric
Public bug reported:
Hello everyone!
I'm trying to get the "bandwidth" metric from all of the instances.
I've already installed the neutron-metering agent using Kolla-Ansible.
Also, I've created two meters for neutron:
+--------------------------------------+-----------+-------------+--------+
| ID | Name | Description | Shared |
+--------------------------------------+-----------+-------------+--------+
| 64d3ca0d-30c3-4159-8a8c-c011e54be83a | name1-out | | |
| 6927ce7d-413c-4749-9e74-6725c59c2de2 | name1-in | | |
+--------------------------------------+-----------+-------------+--------+
I've already also created the rules for the ingress and egress:
+--------------------------------------+----------+-----------+------------------+------------------+-----------------------+
| ID | Excluded | Direction | Remote IP Prefix | Source IP Prefix | Destination IP Prefix |
+--------------------------------------+----------+-----------+------------------+------------------+-----------------------+
| 0f11b59d-3e94-4886-a30f-348ce9cacfa7 | | ingress | 192.168.0.0/24 | None | None |
| 7f88e16f-a58c-42c8-9447-82843a41591e | | egress | 192.168.0.0/24 | None | None |
+--------------------------------------+----------+-----------+------------------+------------------+-----------------------+
And this is the detail of one of my VMs, where I want to measure the bandwidth:
+-------------------------------------+----------------------------------------------------------+
| Field | Value |
+-------------------------------------+----------------------------------------------------------+
| OS-DCF:diskConfig | MANUAL |
| OS-EXT-AZ:availability_zone | nova |
| OS-EXT-SRV-ATTR:host | urimeba |
| OS-EXT-SRV-ATTR:hypervisor_hostname | urimeba |
| OS-EXT-SRV-ATTR:instance_name | instance-00000006 |
| OS-EXT-STS:power_state | Running |
| OS-EXT-STS:task_state | None |
| OS-EXT-STS:vm_state | active |
| OS-SRV-USG:launched_at | 2021-09-28T01:13:10.000000 |
| OS-SRV-USG:terminated_at | None |
| accessIPv4 | |
| accessIPv6 | |
| addresses | public1=192.168.0.30 |
| config_drive | |
| created | 2021-09-28T01:13:04Z |
| flavor | m1.tiny (1) |
| hostId | 81e8f4bc7aca4da99189723a66c4ceb656973850ce68737f28c14023 |
| id | a42a2905-1fe4-45e2-90e1-f3071e039a15 |
| image | cirros (d65726f0-ae15-48cf-b5ee-645695f685fe) |
| key_name | None |
| name | test_image_cirros |
| progress | 0 |
| project_id | 8c9e007415c745feb315a11e7f410c0d |
| properties | |
| security_groups | name='default' |
| status | ACTIVE |
| updated | 2021-09-29T22:53:15Z |
| user_id | fad13a6f51794a6b8e91d6f863078b84 |
| volumes_attached | |
+-------------------------------------+----------------------------------------------------------+
As far as I can see, everything is well configured.
I took a look at ceilometer measurements and saw that this metric "bandwidth" needed a "notification" origin, which make me wonder If I had ceilometer configured well to get this metric.
The trouble is that I have 3 docker containers: ceilometer-compute, ceilometer-central and ceilometer-notification.
By default, Kolla-Ansible deploys ceilometer based on events (I think), but only inside the "ceilometer-notification" container I have two differents files, which are:
*event_definitons.yaml
*event_pipeline.yaml
The content of "event_definitions.yaml" is the same found in the repo (I dont put the content here, because is a lot of text):
https://github.com/openstack/ceilometer/blob/master/ceilometer/pipeline/data/event_definitions.yaml
And the content of "event_pipeline.yaml" is this:
---
sources:
- name: event_source
events:
- "*"
sinks:
- event_sink
sinks:
- name: event_sink
publishers:
- gnocchi://
Also, I have 2 polling files:
*polling_all.yaml
*polling.yaml
The content of "polling_all.yaml" is:
---
sources:
- name: all_pollsters
interval: 300
meters:
- "*"
And the content of "polling.yaml" is:
---
sources:
- name: some_pollsters
interval: 300
meters:
- cpu
- cpu_l3_cache
- memory.usage
- network.incoming.bytes
- network.incoming.packets
- network.outgoing.bytes
- network.outgoing.packets
- disk.device.read.bytes
- disk.device.read.requests
- disk.device.write.bytes
- disk.device.write.requests
- hardware.cpu.util
- hardware.cpu.user
- hardware.cpu.nice
- hardware.cpu.system
- hardware.cpu.idle
- hardware.cpu.wait
- hardware.cpu.kernel
- hardware.cpu.interrupt
- hardware.memory.used
- hardware.memory.total
- hardware.memory.buffer
- hardware.memory.cached
- hardware.memory.swap.avail
- hardware.memory.swap.total
- hardware.system_stats.io.outgoing.blocks
- hardware.system_stats.io.incoming.blocks
- hardware.network.ip.incoming.datagrams
- hardware.network.ip.outgoing.datagrams
When I try to get the metric with "openstack metric list | grep
bandwidth", nothing shows up.
The neutron-metering log shows effectively how no bandwidth is getting found:
2021-09-29 23:36:31.409 7 DEBUG neutron.services.metering.agents.metering_agent [-] Traffic counters [{}] retrieved for routers [{'52100624-471d-4e7e-a19f-ff87e8161070': {'id': '52100624-471d-4e7e-a19f-ff87e8161070', 'name': 'demo-router', 'tenant_id': '8c9e007415c745feb315a11e7f410c0d', 'admin_state_up': True, 'status': 'ACTIVE', 'gw_port_id': '83161bcf-46ca-4b1d-931f-8794a5a5c9e9', 'distributed': False, '_metering_labels': [{'id': '64d3ca0d-30c3-4159-8a8c-c011e54be83a', 'rules': [{'id': '7f88e16f-a58c-42c8-9447-82843a41591e', 'metering_label_id': '64d3ca0d-30c3-4159-8a8c-c011e54be83a', 'direction': 'egress', 'remote_ip_prefix': '192.168.0.0/24', 'source_ip_prefix': None, 'destination_ip_prefix': None, 'excluded': True}], 'shared': True, 'name': 'name1-out'}, {'id': '6927ce7d-413c-4749-9e74-6725c59c2de2', 'rules': [{'id': '0f11b59d-3e94-4886-a30f-348ce9cacfa7', 'metering_label_id': '6927ce7d-413c-4749-9e74-6725c59c2de2', 'direction': 'ingress', 'remote_ip_prefix': '192.168.0.0/24', 'source_ip_prefix': None, 'destination_ip_prefix': None, 'excluded': True}], 'shared': True, 'name': 'name1-in'}]}}]. _add_metering_infos /var/lib/kolla/venv/lib/python3.6/site-packages/neutron/services/metering/agents/metering_agent.py:224
I'll appreciate any help.
Thanks and Greetings!
** Affects: neutron
Importance: Undecided
Status: New
--
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to neutron.
https://bugs.launchpad.net/bugs/1945560
Title:
Neutron-metering doesnt get "bandwidth" metric
Status in neutron:
New
Bug description:
Hello everyone!
I'm trying to get the "bandwidth" metric from all of the instances.
I've already installed the neutron-metering agent using Kolla-Ansible.
Also, I've created two meters for neutron:
+--------------------------------------+-----------+-------------+--------+
| ID | Name | Description | Shared |
+--------------------------------------+-----------+-------------+--------+
| 64d3ca0d-30c3-4159-8a8c-c011e54be83a | name1-out | | |
| 6927ce7d-413c-4749-9e74-6725c59c2de2 | name1-in | | |
+--------------------------------------+-----------+-------------+--------+
I've already also created the rules for the ingress and egress:
+--------------------------------------+----------+-----------+------------------+------------------+-----------------------+
| ID | Excluded | Direction | Remote IP Prefix | Source IP Prefix | Destination IP Prefix |
+--------------------------------------+----------+-----------+------------------+------------------+-----------------------+
| 0f11b59d-3e94-4886-a30f-348ce9cacfa7 | | ingress | 192.168.0.0/24 | None | None |
| 7f88e16f-a58c-42c8-9447-82843a41591e | | egress | 192.168.0.0/24 | None | None |
+--------------------------------------+----------+-----------+------------------+------------------+-----------------------+
And this is the detail of one of my VMs, where I want to measure the bandwidth:
+-------------------------------------+----------------------------------------------------------+
| Field | Value |
+-------------------------------------+----------------------------------------------------------+
| OS-DCF:diskConfig | MANUAL |
| OS-EXT-AZ:availability_zone | nova |
| OS-EXT-SRV-ATTR:host | urimeba |
| OS-EXT-SRV-ATTR:hypervisor_hostname | urimeba |
| OS-EXT-SRV-ATTR:instance_name | instance-00000006 |
| OS-EXT-STS:power_state | Running |
| OS-EXT-STS:task_state | None |
| OS-EXT-STS:vm_state | active |
| OS-SRV-USG:launched_at | 2021-09-28T01:13:10.000000 |
| OS-SRV-USG:terminated_at | None |
| accessIPv4 | |
| accessIPv6 | |
| addresses | public1=192.168.0.30 |
| config_drive | |
| created | 2021-09-28T01:13:04Z |
| flavor | m1.tiny (1) |
| hostId | 81e8f4bc7aca4da99189723a66c4ceb656973850ce68737f28c14023 |
| id | a42a2905-1fe4-45e2-90e1-f3071e039a15 |
| image | cirros (d65726f0-ae15-48cf-b5ee-645695f685fe) |
| key_name | None |
| name | test_image_cirros |
| progress | 0 |
| project_id | 8c9e007415c745feb315a11e7f410c0d |
| properties | |
| security_groups | name='default' |
| status | ACTIVE |
| updated | 2021-09-29T22:53:15Z |
| user_id | fad13a6f51794a6b8e91d6f863078b84 |
| volumes_attached | |
+-------------------------------------+----------------------------------------------------------+
As far as I can see, everything is well configured.
I took a look at ceilometer measurements and saw that this metric "bandwidth" needed a "notification" origin, which make me wonder If I had ceilometer configured well to get this metric.
The trouble is that I have 3 docker containers: ceilometer-compute, ceilometer-central and ceilometer-notification.
By default, Kolla-Ansible deploys ceilometer based on events (I think), but only inside the "ceilometer-notification" container I have two differents files, which are:
*event_definitons.yaml
*event_pipeline.yaml
The content of "event_definitions.yaml" is the same found in the repo (I dont put the content here, because is a lot of text):
https://github.com/openstack/ceilometer/blob/master/ceilometer/pipeline/data/event_definitions.yaml
And the content of "event_pipeline.yaml" is this:
---
sources:
- name: event_source
events:
- "*"
sinks:
- event_sink
sinks:
- name: event_sink
publishers:
- gnocchi://
Also, I have 2 polling files:
*polling_all.yaml
*polling.yaml
The content of "polling_all.yaml" is:
---
sources:
- name: all_pollsters
interval: 300
meters:
- "*"
And the content of "polling.yaml" is:
---
sources:
- name: some_pollsters
interval: 300
meters:
- cpu
- cpu_l3_cache
- memory.usage
- network.incoming.bytes
- network.incoming.packets
- network.outgoing.bytes
- network.outgoing.packets
- disk.device.read.bytes
- disk.device.read.requests
- disk.device.write.bytes
- disk.device.write.requests
- hardware.cpu.util
- hardware.cpu.user
- hardware.cpu.nice
- hardware.cpu.system
- hardware.cpu.idle
- hardware.cpu.wait
- hardware.cpu.kernel
- hardware.cpu.interrupt
- hardware.memory.used
- hardware.memory.total
- hardware.memory.buffer
- hardware.memory.cached
- hardware.memory.swap.avail
- hardware.memory.swap.total
- hardware.system_stats.io.outgoing.blocks
- hardware.system_stats.io.incoming.blocks
- hardware.network.ip.incoming.datagrams
- hardware.network.ip.outgoing.datagrams
When I try to get the metric with "openstack metric list | grep
bandwidth", nothing shows up.
The neutron-metering log shows effectively how no bandwidth is getting found:
2021-09-29 23:36:31.409 7 DEBUG neutron.services.metering.agents.metering_agent [-] Traffic counters [{}] retrieved for routers [{'52100624-471d-4e7e-a19f-ff87e8161070': {'id': '52100624-471d-4e7e-a19f-ff87e8161070', 'name': 'demo-router', 'tenant_id': '8c9e007415c745feb315a11e7f410c0d', 'admin_state_up': True, 'status': 'ACTIVE', 'gw_port_id': '83161bcf-46ca-4b1d-931f-8794a5a5c9e9', 'distributed': False, '_metering_labels': [{'id': '64d3ca0d-30c3-4159-8a8c-c011e54be83a', 'rules': [{'id': '7f88e16f-a58c-42c8-9447-82843a41591e', 'metering_label_id': '64d3ca0d-30c3-4159-8a8c-c011e54be83a', 'direction': 'egress', 'remote_ip_prefix': '192.168.0.0/24', 'source_ip_prefix': None, 'destination_ip_prefix': None, 'excluded': True}], 'shared': True, 'name': 'name1-out'}, {'id': '6927ce7d-413c-4749-9e74-6725c59c2de2', 'rules': [{'id': '0f11b59d-3e94-4886-a30f-348ce9cacfa7', 'metering_label_id': '6927ce7d-413c-4749-9e74-6725c59c2de2', 'direction': 'ingress', 'remote_ip_prefix': '192.168.0.0/24', 'source_ip_prefix': None, 'destination_ip_prefix': None, 'excluded': True}], 'shared': True, 'name': 'name1-in'}]}}]. _add_metering_infos /var/lib/kolla/venv/lib/python3.6/site-packages/neutron/services/metering/agents/metering_agent.py:224
I'll appreciate any help.
Thanks and Greetings!
To manage notifications about this bug go to:
https://bugs.launchpad.net/neutron/+bug/1945560/+subscriptions
Follow ups