← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1556342] Re: Able to create pool with different protocol than listener protocol

 

** Changed in: neutron
     Assignee: (unassigned) => xuchaochao (xuchaochao)

** Changed in: neutron
       Status: Expired => In Progress

-- 
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to neutron.
https://bugs.launchpad.net/bugs/1556342

Title:
  Able to create pool with different protocol than listener protocol

Status in neutron:
  In Progress

Bug description:
  When creating a pool with different protocol than listener protocol, a pool is create even though the protocols are not compatible.
  Previously, this would not display any pools in neutron lbaas-pool-list since the protocols are not compatible. 

  
  Initial state
  $ neutron lbaas-loadbalancer-list
  +--------------------------------------+------+-------------+---------------------+----------+
  | id                                   | name | vip_address | provisioning_status | provider |
  +--------------------------------------+------+-------------+---------------------+----------+
  | bf449f65-633d-4859-b417-28b35f4eaea2 | lb1  | 10.0.0.3    | ERROR               | octavia  |
  | c6bf0765-47a9-49d9-a2f2-dd3f1ea81a5c | lb2  | 10.0.0.13   | ACTIVE              | octavia  |
  | e1210b03-f440-4bc1-84ca-9ba70190854f | lb3  | 10.0.0.16   | ACTIVE              | octavia  |
  +--------------------------------------+------+-------------+---------------------+----------+

  $ neutron lbaas-listener-list
  +--------------------------------------+--------------------------------------+-------+----------+---------------+----------------+
  | id                                   | default_pool_id                      | name  | protocol | protocol_port | admin_state_up |
  +--------------------------------------+--------------------------------------+-------+----------+---------------+----------------+
  | 4cda881c-9209-42ac-9c97-e1bfab0300b2 | 6be3dae1-f159-4e0e-94ea-5afdfdab05fc | list2 | HTTP     |            80 | True           |
  +--------------------------------------+--------------------------------------+-------+----------+---------------+----------------+

  $ neutron lbaas-pool-list
  +--------------------------------------+-------+----------+----------------+
  | id                                   | name  | protocol | admin_state_up |
  +--------------------------------------+-------+----------+----------------+
  | 6be3dae1-f159-4e0e-94ea-5afdfdab05fc | pool2 | HTTP     | True           |
  +--------------------------------------+-------+----------+----------------+

  
  Create new listener with TCP protocol 
  $ neutron lbaas-listener-create --name list3 --loadbalancer lb3 --protocol TCP --protocol-port 22
  Created a new listener:
  +---------------------------+------------------------------------------------+
  | Field                     | Value                                          |
  +---------------------------+------------------------------------------------+
  | admin_state_up            | True                                           |
  | connection_limit          | -1                                             |
  | default_pool_id           |                                                |
  | default_tls_container_ref |                                                |
  | description               |                                                |
  | id                        | 9574801a-675b-4784-baf0-410d1a1fd941           |
  | loadbalancers             | {"id": "e1210b03-f440-4bc1-84ca-9ba70190854f"} |
  | name                      | list3                                          |
  | protocol                  | TCP                                            |
  | protocol_port             | 22                                             |
  | sni_container_refs        |                                                |
  | tenant_id                 | b24968d717804ffebd77803fce24b5a4               |
  +---------------------------+------------------------------------------------+

  Create pool with HTTP protocol instead of TCP
  $ neutron lbaas-pool-create --name pool3 --lb-algorithm ROUND_ROBIN --listener list3 --protocol HTTP
  Listener protocol TCP and pool protocol HTTP are not compatible.

  Pool list shows pool3 even though the protocols are not compatible and should not be able to create pool
  $ neutron lbaas-pool-list
  +--------------------------------------+-------+----------+----------------+
  | id                                   | name  | protocol | admin_state_up |
  +--------------------------------------+-------+----------+----------------+
  | 6be3dae1-f159-4e0e-94ea-5afdfdab05fc | pool2 | HTTP     | True           |
  | 7e6fbe67-60b0-40cd-afdd-44cddd8c60a1 | pool3 | HTTP     | True           |
  +--------------------------------------+-------+----------+----------------+

  From mysql, pool table from octavia DB. No pool3 
  +--------------------------------------+--------------------------------------+-------+-------------+----------+--------------+------------------+---------+--------------------------------------+
  | project_id                           | id                                   | name  | description | protocol | lb_algorithm | operating_status | enabled | load_balancer_id                     |
  +--------------------------------------+--------------------------------------+-------+-------------+----------+--------------+------------------+---------+--------------------------------------+
  | b24968d7-1780-4ffe-bd77-803fce24b5a4 | 6be3dae1-f159-4e0e-94ea-5afdfdab05fc | pool2 |             | HTTP     | ROUND_ROBIN  | ONLINE           |       1 | c6bf0765-47a9-49d9-a2f2-dd3f1ea81a5c |
  +--------------------------------------+--------------------------------------+-------+-------------+----------+--------------+------------------+---------+--------------------------------------+

  From mysql,  lbaas_pools table from neutron DB. Pool3 is in PENDING_CREATE. 
  +----------------------------------+--------------------------------------+-------+-------------+----------+--------------+------------------+----------------+---------------------+------------------+--------------------------------------+
  | tenant_id                        | id                                   | name  | description | protocol | lb_algorithm | healthmonitor_id | admin_state_up | provisioning_status | operating_status | loadbalancer_id                      |
  +----------------------------------+--------------------------------------+-------+-------------+----------+--------------+------------------+----------------+---------------------+------------------+--------------------------------------+
  | b24968d717804ffebd77803fce24b5a4 | 6be3dae1-f159-4e0e-94ea-5afdfdab05fc | pool2 |             | HTTP     | ROUND_ROBIN  | NULL             |              1 | ACTIVE              | ONLINE           | c6bf0765-47a9-49d9-a2f2-dd3f1ea81a5c |
  | b24968d717804ffebd77803fce24b5a4 | 7e6fbe67-60b0-40cd-afdd-44cddd8c60a1 | pool3 |             | HTTP     | ROUND_ROBIN  | NULL             |              1 | PENDING_CREATE      | OFFLINE          | e1210b03-f440-4bc1-84ca-9ba70190854f |
  +----------------------------------+--------------------------------------+-------+-------------+----------+--------------+------------------+----------------+---------------------+------------------+--------------------------------------+

To manage notifications about this bug go to:
https://bugs.launchpad.net/neutron/+bug/1556342/+subscriptions