[Bug 1841700] Re: instance ingress bandwidth limiting doesn't works in ocata.
Jorge Niedbalski
1841700 at bugs.launchpad.net
Mon Sep 9 16:24:15 UTC 2019
Hello,
I've tested the PPA on
https://launchpad.net/~niedbalski/+archive/ubuntu/hf-00237904/ with
xenial-ocata deployed cloud.
Please note that it's a requirement to run the migrations steps up to
heads.
ubuntu at niedbalski-bastion:~/octavia/openstack$ juju config neutron-api
enable-qos=True
| 50b8f714-3ee4-4260-8359-820420471bdb | | fa:16:3e:88:c1:a0 |
ip_address='10.5.150.6', subnet_id='7daca73f-31ab-4401-bc6e-
e74dd38b7fc1' | N/A |
ubuntu at niedbalski-bastion:~/octavia/openstack$ openstack network qos policy create testing-policy --share
+-------------+--------------------------------------+
| Field | Value |
+-------------+--------------------------------------+
| description | |
| id | fac2be5e-64e0-4308-b477-0f8c0096c0b8 |
| is_default | None |
| name | testing-policy |
| project_id | d215199a727a4384ad7d43825e86ff69 |
| rules | [] |
| shared | True |
| tags | [] |
+-------------+--------------------------------------+
ubuntu at niedbalski-bastion:~/octavia/openstack$ openstack network qos rule create --type bandwidth-limit --max-kbps 300 --ingress testing-policy
Failed to create Network QoS rule: BadRequestException: 400: Client Error for url: http://10.5.0.66:9696/v2.0/qos/policies/fac2be5e-64e0-4308-b477-0f8c0096c0b8/bandwidth_limit_rules, {"NeutronError": {"message": "Unrecognized attribute(s) 'direction'", "type": "HTTPBadRequest", "detail": ""}}
----> With the patch applied
neutron-api
root at juju-cd6736-1841700-4:/home/ubuntu# systemctl status neutron*
● neutron-server.service - OpenStack Neutron Server
Loaded: loaded (/lib/systemd/system/neutron-server.service; enabled; vendor preset: enabled)
Active: active (running) since Mon 2019-09-09 15:47:00 UTC; 1min 39s ago
Process: 13597 ExecStartPre=/bin/chown neutron:adm /var/log/neutron (code=exited, status=0/SUCCESS)
ubuntu at juju-cd6736-1841700-4:~$ sudo su
root at juju-cd6736-1841700-4:/home/ubuntu# dpkg -l |grep neutron
ii neutron-common 2:10.0.7-0ubuntu1~cloud1ubuntu1+hf1560961v20190826.13 all Neutron is a virtual network service for Openstack - common
ii neutron-plugin-ml2 2:10.0.7-0ubuntu1~cloud1ubuntu1+hf1560961v20190826.13 all Neutron is a virtual network service for Openstack - ML2 plugin
ii neutron-server 2:10.0.7-0ubuntu1~cloud1ubuntu1+hf1560961v20190826.13 all Neutron is a virtual network service for Openstack - server
ii python-neutron 2:10.0.7-0ubuntu1~cloud1ubuntu1+hf1560961v20190826.13 all Neutron is a virtual network service for Openstack - Python library
neutron-gateway
root at juju-cd6736-1841700-5:/home/ubuntu# dpkg -l | grep neutron
ii neutron-common 2:10.0.7-0ubuntu1~cloud1ubuntu1+hf1560961v20190826.13 all Neutron is a virtual network service for Openstack - common
ii neutron-dhcp-agent 2:10.0.7-0ubuntu1~cloud1ubuntu1+hf1560961v20190826.13 all Neutron is a virtual network service for Openstack - DHCP agent
ii neutron-l3-agent 2:10.0.7-0ubuntu1~cloud1ubuntu1+hf1560961v20190826.13 all Neutron is a virtual network service for Openstack - l3 agent
ii neutron-lbaas-common 2:10.0.1-0ubuntu1~cloud0 all Neutron is a virtual network service for Openstack - common
ii neutron-lbaasv2-agent 2:10.0.1-0ubuntu1~cloud0 all Neutron is a virtual network service for Openstack - LBaaSv2 agent
ii neutron-metadata-agent 2:10.0.7-0ubuntu1~cloud1ubuntu1+hf1560961v20190826.13 all Neutron is a virtual network service for Openstack - metadata agent
ii neutron-metering-agent 2:10.0.7-0ubuntu1~cloud1ubuntu1+hf1560961v20190826.13 all Neutron is a virtual network service for Openstack - metering agent
ii neutron-openvswitch-agent 2:10.0.7-0ubuntu1~cloud1ubuntu1+hf1560961v20190826.13 all Neutron is a virtual network service for Openstack - Open vSwitch plugin agent
ii python-neutron 2:10.0.7-0ubuntu1~cloud1ubuntu1+hf1560961v20190826.13 all Neutron is a virtual network service for Openstack - Python library
root at juju-cd6736-1841700-5:/home/ubuntu# systemctl status neutron-openvswitch-agent
● neutron-openvswitch-agent.service - Openstack Neutron Open vSwitch Plugin Agent
Loaded: loaded (/lib/systemd/system/neutron-openvswitch-agent.service; enabled; vendor preset: enabled)
Active: active (running) since Mon 2019-09-09 15:52:12 UTC; 1min 58s ago
compute-node
root at juju-cd6736-1841700-8:/home/ubuntu# systemctl list-unit-files neutron*
UNIT FILE STATE
neutron-openvswitch-agent.service enabled
neutron-ovs-cleanup.service enabled
oot at juju-cd6736-1841700-8:/home/ubuntu# dpkg -l | grep neutron
ii neutron-common 2:10.0.7-0ubuntu1~cloud1ubuntu1+hf1560961v20190826.13 all Neutron is a virtual network service for Openstack - common
ii neutron-openvswitch-agent 2:10.0.7-0ubuntu1~cloud1ubuntu1+hf1560961v20190826.13 all Neutron is a virtual network service for Openstack - Open vSwitch plugin agent
ii python-neutron 2:10.0.7-0ubuntu1~cloud1ubuntu1+hf1560961v20190826.13 all Neutron is a virtual network service for Openstack - Python library
root at juju-cd6736-1841700-4:/home/ubuntu# neutron-db-manage upgrade head
INFO [alembic.runtime.migration] Context impl MySQLImpl.
INFO [alembic.runtime.migration] Will assume non-transactional DDL.
Running upgrade for neutron ...
INFO [alembic.runtime.migration] Context impl MySQLImpl.
INFO [alembic.runtime.migration] Will assume non-transactional DDL.
INFO [alembic.runtime.migration] Running upgrade a9c43481023c -> 2b42d90729da, qos add direction to bw_limit_rule table
OK
INFO [alembic.runtime.migration] Context impl MySQLImpl.
INFO [alembic.runtime.migration] Will assume non-transactional DDL.
Running upgrade for neutron-dynamic-routing ...
INFO [alembic.runtime.migration] Context impl MySQLImpl.
INFO [alembic.runtime.migration] Will assume non-transactional DDL.
OK
INFO [alembic.runtime.migration] Context impl MySQLImpl.
INFO [alembic.runtime.migration] Will assume non-transactional DDL.
Running upgrade for neutron-fwaas ...
INFO [alembic.runtime.migration] Context impl MySQLImpl.
INFO [alembic.runtime.migration] Will assume non-transactional DDL.
OK
INFO [alembic.runtime.migration] Context impl MySQLImpl.
INFO [alembic.runtime.migration] Will assume non-transactional DDL.
Running upgrade for neutron-lbaas ...
INFO [alembic.runtime.migration] Context impl MySQLImpl.
INFO [alembic.runtime.migration] Will assume non-transactional DDL.
OK
INFO [alembic.runtime.migration] Context impl MySQLImpl.
INFO [alembic.runtime.migration] Will assume non-transactional DDL.
Running upgrade for neutron-vpnaas ...
INFO [alembic.runtime.migration] Context impl MySQLImpl.
INFO [alembic.runtime.migration] Will assume non-transactional DDL.
OK
ubuntu at niedbalski-bastion:~/octavia/openstack$ openstack network qos rule create --type bandwidth-limit --max-kbps 300 --ingress testing-policy
+----------------+--------------------------------------+
| Field | Value |
+----------------+--------------------------------------+
| direction | ingress |
| id | 6d01cefa-0042-40cd-ae74-bcb723ca7ca4 |
| max_burst_kbps | 0 |
| max_kbps | 300 |
| name | None |
| project_id | |
+----------------+--------------------------------------+
ubuntu at niedbalski-bastion:~/octavia/openstack$ openstack port set 50b8f714-3ee4-4260-8359-820420471bdb --qos-policy fac2be5e-64e0-4308-b477-0f8c0096c0b8
ubuntu at niedbalski-bastion:~/octavia/openstack$ openstack port show 50b8f714-3ee4-4260-8359-820420471bdb | grep qos
| qos_policy_id | fac2be5e-64e0-4308-b477-0f8c0096c0b8 |
ubuntu at niedbalski-bastion:~/octavia/openstack$ openstack network qos rule list fac2be5e-64e0-4308-b477-0f8c0096c0b8
+--------------------------------------+--------------------------------------+-----------------+----------+-----------------+----------+-----------+-----------+
| ID | QoS Policy ID | Type | Max Kbps | Max Burst Kbits | Min Kbps | DSCP mark | Direction |
+--------------------------------------+--------------------------------------+-----------------+----------+-----------------+----------+-----------+-----------+
| 6d01cefa-0042-40cd-ae74-bcb723ca7ca4 | fac2be5e-64e0-4308-b477-0f8c0096c0b8 | bandwidth_limit | 300 | 0 | | | ingress |
+--------------------------------------+--------------------------------------+-----------------+----------+-----------------+----------+-----------+-----------+
root at juju-cd6736-1841700-8:/home/ubuntu# sudo ovs-vsctl list qos
_uuid : 2862acaa-a79f-4a62-b387-f89bca4a6965
external_ids : {id="tap75d95386-01"}
other_config : {}
queues : {0=a15774f7-ae31-40e7-9c0f-937d68a7dc0c}
type : linux-htb
root at juju-cd6736-1841700-8:/home/ubuntu# sudo ovs-vsctl list queue
_uuid : a15774f7-ae31-40e7-9c0f-937d68a7dc0c
dscp : []
external_ids : {id="tap75d95386-01", queue_type="0"}
other_config : {burst="0", max-rate="300000"}
--
You received this bug notification because you are a member of Ubuntu
OpenStack, which is subscribed to neutron in Ubuntu.
https://bugs.launchpad.net/bugs/1841700
Title:
instance ingress bandwidth limiting doesn't works in ocata.
Status in Ubuntu Cloud Archive:
New
Status in neutron:
Fix Released
Status in neutron package in Ubuntu:
Fix Released
Status in neutron source package in Xenial:
New
Bug description:
[Environment]
Xenial-Ocata deployment
[Description]
The instance ingress bandwidth limit implementation was targeted for
Ocata [0], but the full implementation ingress/egress was done during
the pike [1] cycle.
However, isn't reported or explicit that ingress direction isn't
supported in ocata, which causes the following exception when
--ingress is specified.
$ openstack network qos rule create --type bandwidth-limit --max-kbps 300 --max-burst-kbits 300 --ingress bw-limiter
Failed to create Network QoS rule: BadRequestException: 400: Client Error for url: https://openstack:9696/v2.0/qos/policies/xxxx/bandwidth_limit_rules, Unrecognized attribute(s) 'direction'
It would be desirable for this feature to be available on Ocata for being able to
set ingress/egress bandwidth limits on the ports.
[0] https://blueprints.launchpad.net/neutron/+spec/instance-ingress-bw-limit
[1] https://bugs.launchpad.net/neutron/+bug/1560961
To manage notifications about this bug go to:
https://bugs.launchpad.net/cloud-archive/+bug/1841700/+subscriptions
More information about the Ubuntu-openstack-bugs
mailing list