Bug 1434016 - OSP10 networks and ports created with port_security_enabled=false are "disconnected"
Summary: OSP10 networks and ports created with port_security_enabled=false are "discon...
Keywords:
Status: CLOSED DUPLICATE of bug 1406263
Alias: None
Product: Red Hat OpenStack
Classification: Red Hat
Component: openstack-neutron
Version: 10.0 (Newton)
Hardware: Unspecified
OS: Linux
unspecified
high
Target Milestone: ---
: ---
Assignee: Assaf Muller
QA Contact: Toni Freger
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2017-03-20 14:41 UTC by Mark Lamourine
Modified: 2017-03-22 12:57 UTC (History)
9 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2017-03-22 12:57:33 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)
A heat template to demonstrate eth1 failure using port_security_enabled=false (4.54 KB, text/plain)
2017-03-20 14:41 UTC, Mark Lamourine
no flags Details
CLI shell only test run (2.34 KB, application/x-shellscript)
2017-03-20 18:56 UTC, Mark Lamourine
no flags Details
script to create a host with port security disabled on eth1 (corrected) (2.34 KB, application/x-shellscript)
2017-03-20 19:48 UTC, Mark Lamourine
no flags Details
Updated PROPERLY - a script to create a host with port-security disabled on eth1 (2.36 KB, application/x-shellscript)
2017-03-20 19:49 UTC, Mark Lamourine
no flags Details

Description Mark Lamourine 2017-03-20 14:41:09 UTC
Created attachment 1264773 [details]
A heat template to demonstrate eth1 failure using port_security_enabled=false

Description of problem:

When a Neutron port or network is created via Heat template, the interface on connected instances shows "disconnected" and fails to get IP configuration by DHCP

Version-Release number of selected component (if applicable):

OSP 10

How reproducible:

Create an OSP10 service via OSP-D with the port_security extension enabled in the ML2 driver.

https://wiki.openstack.org/wiki/Neutron/ML2PortSecurityExtensionDriver

/etc/neutron/plugins/ml2/ml2_conf.ini
extension_drivers = port_security

  Create an instance with a network interface with port_security_enabled=false *using heat*.  Log into the instance and attempt to bring up the interface with ifdown/ifup.  Observe the interface behavior and journalctl logs for the interface will indicate "disconnected"

creating the same configuration with port_security_enabled=true results in a working interface, but with port security enabled.

Steps to Reproduce:
1. Create OSP 10 from Director
2. Enable ML2 Port Security extension
3. Create heat stack with network with port_security_enabled=false and a host attached

See "all-in-one.yaml" attached.  Adapt the input paramters for the test environment.

openstack stack create \
  --parameter flavor=m1.small \
  --parameter image=rhel73 \
  --parameter ssh_user=cloud-user \
  --parameter key_name=ocp3 \
  --parameter hostname=test-port-security \
  --parameter external_network=public_network \
  --parameter nameservers=10.19.114.41,10.19.114.2 \
  -t all-in-one.yaml test

4. Examine the attached interface (eth1) and attempt to bring it down and up
5. Examine journalctl output for eth1

Actual results:

ifup fails indicating timeout.
journalctl indicates the interface is disconnected

Expected results:

ifup causes interface to get DHCP and configure.


Additional info:

Comment 1 Mark Lamourine 2017-03-20 17:30:32 UTC
It appears that it is not heat, but neutron that is the source of the problem.  Creating the network with the CLI manifests the same problem:




openstack network create --disable-port-security tenant-network
openstack subnet create --network tenant-network --subnet-range 172.18.20.0/24 tenant-subnet

Instances connected to 'tenant-network' will show the interface as present but disconnected.

Comment 2 Mark Lamourine 2017-03-20 18:56:30 UTC
Created attachment 1264830 [details]
CLI shell only test run

This script creates the required networks and a single host attached to both.

Adjust key values (image, key, public_network, nameserver) as needed.

If the PORT_SECURITY variable is false, then the eth1 network shows disconnected.

If it is set true then the eth1 network comes up as expected and is configured by DHCP.

You must log in and observe the journalctl for eth1 and attempt to up/down the interface.

Comment 3 Mark Lamourine 2017-03-20 19:48:17 UTC
Created attachment 1264844 [details]
script to create a host with port security disabled on eth1 (corrected)

This is a better version of the previous.  it doesn't re-create after cleaning.

- Mark

Comment 4 Mark Lamourine 2017-03-20 19:49:55 UTC
Created attachment 1264845 [details]
Updated PROPERLY - a script to create a host with port-security disabled on eth1

Comment 5 Assaf Muller 2017-03-20 23:59:30 UTC
Can you please upload an SOS report from a compute node and a controller node, and specify a timestamp in which you created a VM with port security equal to False?

Comment 6 Mark Lamourine 2017-03-21 21:19:13 UTC
Um... what's an SOS report and how do I generate one? Links are fine.

Comment 7 Assaf Muller 2017-03-21 22:00:40 UTC
(In reply to Mark Lamourine from comment #6)
> Um... what's an SOS report and how do I generate one? Links are fine.

https://access.redhat.com/solutions/3592

Comment 8 Mark Lamourine 2017-03-22 12:53:33 UTC
Assaf: thanks, and apologies for my lack of knowledge.

Roger Lopez did a search and found that this is likely a duplicate of BZ1406263

Comment 9 Assaf Muller 2017-03-22 12:57:33 UTC

*** This bug has been marked as a duplicate of bug 1406263 ***


Note You need to log in before you can comment on or make changes to this bug.