[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