[APIC mapping] VLAN networks don't work with APIC mapping driver
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Group Based Policy |
Fix Released
|
High
|
Amit Bose |
Bug Description
APIC-mapping driver only supports Neutron networks of type OpFlex. This prevents use of GBP/APIC with VLAN networks.
Changed in group-based-policy: | |
status: | New → In Progress |
OpenStack Infra (hudson-openstack) wrote : Fix proposed to group-based-policy (stable/mitaka) | #1 |
OpenStack Infra (hudson-openstack) wrote : Fix proposed to group-based-policy (stable/liberty) | #2 |
Fix proposed to branch: stable/liberty
Review: https:/
OpenStack Infra (hudson-openstack) wrote : Fix proposed to group-based-policy (stable/kilo) | #3 |
Fix proposed to branch: stable/kilo
Review: https:/
OpenStack Infra (hudson-openstack) wrote : Fix proposed to group-based-policy (stable/juno) | #4 |
Fix proposed to branch: stable/juno
Review: https:/
OpenStack Infra (hudson-openstack) wrote : Fix merged to group-based-policy (master) | #5 |
Reviewed: https:/
Committed: https:/
Submitter: Jenkins
Branch: master
commit ba62041267cb785
Author: Amit Bose <email address hidden>
Date: Fri May 6 14:41:52 2016 -0700
[APIC-mapping] Support non-OpFlex networks
This change enables the apic-mapping driver to
handle endpoints (ports) when the network-type
is VLAN. In this scenario, there are no OpFlex
agents on the compute/network nodes that can configure
the datapath to isolate traffic and enforce policy.
Instead we use additional 'shadow' Neutron networks,
one per PTG, to isolate ports within a PTG from other
PTGs. Static path binding is configured on-demand on
APIC using the segmentation-ID of the shadow networks.
These additional "shadow" networks mirror the
configuration of the Neutron network created for
the L2-policy of the PTGs:
- The shadow networks are named using the convention
apic_
- Subnets in the L2P network are reflected in shadow
networks of each PTG associated with the L2P. Their
names use the convention
apic_
- Implicit ports created for policy-targets are mirrored
in the shadow network of the corresponding PTG. This
additional 'shadow' port is now associated with the
PT instead of the implicitly created port. These implicit
ports have device_owner set to 'apic' and device_id set
to the ID of the PT for which they were created.
- Explicit ports for PTs is allowed as long as they have
been created in the appropriate shadow network
- DHCP ports on the shadow networks are disabled to avoid
unwanted/wrong responses to DHCP requests from VMs.
This scheme imposes a few restrictions:
- PTG of a PT can be no longer updated because that would
require changing the network of the associated port
- Ports created in the L2P network cannot be associated
with a PT; instead such an explicit port must be created
in the shadow network for the PTG of the PT.
Without OpFlex agent, NAT-ing won't work with APIC. So
the apic-mapping driver configures external-segments on
APIC for the no-NAT case. Once support for edge-NAT is
available (e.g. through ASR integration), we can make
the appropriate changes to make floating-IPs and PAT
work.
Service-
endpoints in the OpFlex agent, is not expected to work
out-of-the-box with non-OpFlex network.
Closes-Bug: 1581264
Change-Id: I39d09257f6eadc
Signed-off-by: Amit Bose <email address hidden>
Changed in group-based-policy: | |
status: | In Progress → Fix Released |
tags: | added: in-stable-juno |
OpenStack Infra (hudson-openstack) wrote : Fix merged to group-based-policy (stable/juno) | #6 |
Reviewed: https:/
Committed: https:/
Submitter: Jenkins
Branch: stable/juno
commit b4db17b3601b899
Author: Amit Bose <email address hidden>
Date: Fri May 6 14:41:52 2016 -0700
[APIC-mapping] Support non-OpFlex networks
This change enables the apic-mapping driver to
handle endpoints (ports) when the network-type
is VLAN. In this scenario, there are no OpFlex
agents on the compute/network nodes that can configure
the datapath to isolate traffic and enforce policy.
Instead we use additional 'shadow' Neutron networks,
one per PTG, to isolate ports within a PTG from other
PTGs. Static path binding is configured on-demand on
APIC using the segmentation-ID of the shadow networks.
These additional "shadow" networks mirror the
configuration of the Neutron network created for
the L2-policy of the PTGs:
- The shadow networks are named using the convention
apic_
- Subnets in the L2P network are reflected in shadow
networks of each PTG associated with the L2P. Their
names use the convention
apic_
- Implicit ports created for policy-targets are mirrored
in the shadow network of the corresponding PTG. This
additional 'shadow' port is now associated with the
PT instead of the implicitly created port. These implicit
ports have device_owner set to 'apic' and device_id set
to the ID of the PT for which they were created.
- Explicit ports for PTs is allowed as long as they have
been created in the appropriate shadow network
- DHCP ports on the shadow networks are disabled to avoid
unwanted/wrong responses to DHCP requests from VMs.
This scheme imposes a few restrictions:
- PTG of a PT can be no longer updated because that would
require changing the network of the associated port
- Ports created in the L2P network cannot be associated
with a PT; instead such an explicit port must be created
in the shadow network for the PTG of the PT.
Without OpFlex agent, NAT-ing won't work with APIC. So
the apic-mapping driver configures external-segments on
APIC for the no-NAT case. Once support for edge-NAT is
available (e.g. through ASR integration), we can make
the appropriate changes to make floating-IPs and PAT
work.
Service-
endpoints in the OpFlex agent, is not expected to work
out-of-the-box with non-OpFlex network.
Closes-Bug: 1581264
Change-Id: I39d09257f6eadc
Signed-off-by: Amit Bose <email address hidden>
(cherry picked from commit ba62041267cb785
(cherry picked from commit 971ed58eeed832a
(cherry picked from commit 7c3eb7b8eb6b419
(cherry picked from commit 1b5e62ab190b79c
tags: | added: in-stable-kilo |
OpenStack Infra (hudson-openstack) wrote : Fix merged to group-based-policy (stable/kilo) | #7 |
Reviewed: https:/
Committed: https:/
Submitter: Jenkins
Branch: stable/kilo
commit 1b5e62ab190b79c
Author: Amit Bose <email address hidden>
Date: Fri May 6 14:41:52 2016 -0700
[APIC-mapping] Support non-OpFlex networks
This change enables the apic-mapping driver to
handle endpoints (ports) when the network-type
is VLAN. In this scenario, there are no OpFlex
agents on the compute/network nodes that can configure
the datapath to isolate traffic and enforce policy.
Instead we use additional 'shadow' Neutron networks,
one per PTG, to isolate ports within a PTG from other
PTGs. Static path binding is configured on-demand on
APIC using the segmentation-ID of the shadow networks.
These additional "shadow" networks mirror the
configuration of the Neutron network created for
the L2-policy of the PTGs:
- The shadow networks are named using the convention
apic_
- Subnets in the L2P network are reflected in shadow
networks of each PTG associated with the L2P. Their
names use the convention
apic_
- Implicit ports created for policy-targets are mirrored
in the shadow network of the corresponding PTG. This
additional 'shadow' port is now associated with the
PT instead of the implicitly created port. These implicit
ports have device_owner set to 'apic' and device_id set
to the ID of the PT for which they were created.
- Explicit ports for PTs is allowed as long as they have
been created in the appropriate shadow network
- DHCP ports on the shadow networks are disabled to avoid
unwanted/wrong responses to DHCP requests from VMs.
This scheme imposes a few restrictions:
- PTG of a PT can be no longer updated because that would
require changing the network of the associated port
- Ports created in the L2P network cannot be associated
with a PT; instead such an explicit port must be created
in the shadow network for the PTG of the PT.
Without OpFlex agent, NAT-ing won't work with APIC. So
the apic-mapping driver configures external-segments on
APIC for the no-NAT case. Once support for edge-NAT is
available (e.g. through ASR integration), we can make
the appropriate changes to make floating-IPs and PAT
work.
Service-
endpoints in the OpFlex agent, is not expected to work
out-of-the-box with non-OpFlex network.
Closes-Bug: 1581264
Change-Id: I39d09257f6eadc
Signed-off-by: Amit Bose <email address hidden>
(cherry picked from commit ba62041267cb785
(cherry picked from commit 971ed58eeed832a
(cherry picked from commit 7c3eb7b8eb6b419
tags: | added: in-stable-liberty |
OpenStack Infra (hudson-openstack) wrote : Fix merged to group-based-policy (stable/liberty) | #8 |
Reviewed: https:/
Committed: https:/
Submitter: Jenkins
Branch: stable/liberty
commit 7c3eb7b8eb6b419
Author: Amit Bose <email address hidden>
Date: Fri May 6 14:41:52 2016 -0700
[APIC-mapping] Support non-OpFlex networks
This change enables the apic-mapping driver to
handle endpoints (ports) when the network-type
is VLAN. In this scenario, there are no OpFlex
agents on the compute/network nodes that can configure
the datapath to isolate traffic and enforce policy.
Instead we use additional 'shadow' Neutron networks,
one per PTG, to isolate ports within a PTG from other
PTGs. Static path binding is configured on-demand on
APIC using the segmentation-ID of the shadow networks.
These additional "shadow" networks mirror the
configuration of the Neutron network created for
the L2-policy of the PTGs:
- The shadow networks are named using the convention
apic_
- Subnets in the L2P network are reflected in shadow
networks of each PTG associated with the L2P. Their
names use the convention
apic_
- Implicit ports created for policy-targets are mirrored
in the shadow network of the corresponding PTG. This
additional 'shadow' port is now associated with the
PT instead of the implicitly created port. These implicit
ports have device_owner set to 'apic' and device_id set
to the ID of the PT for which they were created.
- Explicit ports for PTs is allowed as long as they have
been created in the appropriate shadow network
- DHCP ports on the shadow networks are disabled to avoid
unwanted/wrong responses to DHCP requests from VMs.
This scheme imposes a few restrictions:
- PTG of a PT can be no longer updated because that would
require changing the network of the associated port
- Ports created in the L2P network cannot be associated
with a PT; instead such an explicit port must be created
in the shadow network for the PTG of the PT.
Without OpFlex agent, NAT-ing won't work with APIC. So
the apic-mapping driver configures external-segments on
APIC for the no-NAT case. Once support for edge-NAT is
available (e.g. through ASR integration), we can make
the appropriate changes to make floating-IPs and PAT
work.
Service-
endpoints in the OpFlex agent, is not expected to work
out-of-the-box with non-OpFlex network.
Closes-Bug: 1581264
Change-Id: I39d09257f6eadc
Signed-off-by: Amit Bose <email address hidden>
(cherry picked from commit ba62041267cb785
(cherry picked from commit 971ed58eeed832a
tags: | added: in-stable-mitaka |
OpenStack Infra (hudson-openstack) wrote : Fix merged to group-based-policy (stable/mitaka) | #9 |
Reviewed: https:/
Committed: https:/
Submitter: Jenkins
Branch: stable/mitaka
commit 971ed58eeed832a
Author: Amit Bose <email address hidden>
Date: Fri May 6 14:41:52 2016 -0700
[APIC-mapping] Support non-OpFlex networks
This change enables the apic-mapping driver to
handle endpoints (ports) when the network-type
is VLAN. In this scenario, there are no OpFlex
agents on the compute/network nodes that can configure
the datapath to isolate traffic and enforce policy.
Instead we use additional 'shadow' Neutron networks,
one per PTG, to isolate ports within a PTG from other
PTGs. Static path binding is configured on-demand on
APIC using the segmentation-ID of the shadow networks.
These additional "shadow" networks mirror the
configuration of the Neutron network created for
the L2-policy of the PTGs:
- The shadow networks are named using the convention
apic_
- Subnets in the L2P network are reflected in shadow
networks of each PTG associated with the L2P. Their
names use the convention
apic_
- Implicit ports created for policy-targets are mirrored
in the shadow network of the corresponding PTG. This
additional 'shadow' port is now associated with the
PT instead of the implicitly created port. These implicit
ports have device_owner set to 'apic' and device_id set
to the ID of the PT for which they were created.
- Explicit ports for PTs is allowed as long as they have
been created in the appropriate shadow network
- DHCP ports on the shadow networks are disabled to avoid
unwanted/wrong responses to DHCP requests from VMs.
This scheme imposes a few restrictions:
- PTG of a PT can be no longer updated because that would
require changing the network of the associated port
- Ports created in the L2P network cannot be associated
with a PT; instead such an explicit port must be created
in the shadow network for the PTG of the PT.
Without OpFlex agent, NAT-ing won't work with APIC. So
the apic-mapping driver configures external-segments on
APIC for the no-NAT case. Once support for edge-NAT is
available (e.g. through ASR integration), we can make
the appropriate changes to make floating-IPs and PAT
work.
Service-
endpoints in the OpFlex agent, is not expected to work
out-of-the-box with non-OpFlex network.
Closes-Bug: 1581264
Change-Id: I39d09257f6eadc
Signed-off-by: Amit Bose <email address hidden>
(cherry picked from commit ba62041267cb785
Fix proposed to branch: stable/mitaka /review. openstack. org/315880
Review: https:/