ST: allow the same vmi to be referenced in multiple service-instances

Bug #1661134 reported by amit surana
48
This bug affects 3 people
Affects Status Importance Assigned to Milestone
Juniper Openstack
Status tracked in Trunk
R3.2
Fix Committed
High
Yuvaraja Mariappan
R4.0
Fix Committed
High
Yuvaraja Mariappan
Trunk
Fix Committed
High
Yuvaraja Mariappan

Bug Description

A common service-chain use case is to have hundreds of left-VNs (private VNs) connected to the same right-vn (public VN). In such cases, it would be ideal to have each of the service-instances to be able to refer to the same right-VN vmi. While this works fine for in-network-nat SIs, it is not supported if the SIs are of type in-network.

Currently, when this topology is configured, only the last/latest SI<->vmi reference is kept (the prior one(s) is/are broken).

Ranjeet R (rranjeet-n)
Changed in juniperopenstack:
assignee: Sachin Bansal (sbansal) → Ranjeet R (rranjeet-n)
amit surana (asurana-t)
description: updated
amit surana (asurana-t)
description: updated
Revision history for this message
OpenContrail Admin (ci-admin-f) wrote : A change has been merged

Reviewed: https://review.opencontrail.org/28637
Committed: http://github.org/Juniper/contrail-controller/commit/6c05344b3bd9a6b6307520ad1f8d72ef7c2641e2
Submitter: Zuul (<email address hidden>)
Branch: master

commit 6c05344b3bd9a6b6307520ad1f8d72ef7c2641e2
Author: Ranjeet R <email address hidden>
Date: Thu Feb 9 13:26:41 2017 -0800

Fixes: ST: allow the same vmi to be referenced in multiple service-instances

The VirtualMachineInterfaceST class has a singular variable
to store port_tuple. Making it an array to keep updating
if there are multiple port tuples.

Also, having multiple port tuples will work only in the case
of in-network service mode.

Also, adding a UT to check for port tuples.

Change-Id: I8f459860b06aad63a49feaa9b4e59b0dcfa2d86b
Closes-Bug: 1661134

Revision history for this message
OpenContrail Admin (ci-admin-f) wrote : [Review update] master

Review in progress for https://review.opencontrail.org/29484
Submitter: Ranjeet R (<email address hidden>)

Revision history for this message
OpenContrail Admin (ci-admin-f) wrote : A change has been merged

Reviewed: https://review.opencontrail.org/29484
Committed: http://github.org/Juniper/contrail-controller/commit/91a2ed314d84b9f4bac72a66ba87344d1d7d874a
Submitter: Zuul (<email address hidden>)
Branch: master

commit 91a2ed314d84b9f4bac72a66ba87344d1d7d874a
Author: Ranjeet R <email address hidden>
Date: Thu Mar 9 15:16:03 2017 -0800

Fixes: ST: allow the same vmi to be referenced in multiple service-instances

In CI, there are times when tests run parallely and the
function check_all_vmis_deleted are checking for VMIs
created by other test cases as well.

Modifying the function to check for VMIs related to the
test case alone.

Change-Id: I969bf2ef91a3d65feb4cc2bb15ab337951987eec
Closes-Bug: 1661134

Revision history for this message
OpenContrail Admin (ci-admin-f) wrote : [Review update] master

Review in progress for https://review.opencontrail.org/30224
Submitter: Ranjeet R (<email address hidden>)

Revision history for this message
OpenContrail Admin (ci-admin-f) wrote : A change has been merged

Reviewed: https://review.opencontrail.org/30224
Committed: http://github.org/Juniper/contrail-controller/commit/e47f5157cf90440cb71e0b7434f1830b50208a4f
Submitter: Zuul (<email address hidden>)
Branch: master

commit e47f5157cf90440cb71e0b7434f1830b50208a4f
Author: Ranjeet R <email address hidden>
Date: Thu Apr 6 15:12:13 2017 -0700

Fixes: ST: allow the same vmi to be referenced in multiple service-instances

The VRF assign rules needs to accumlate before getting assigned for the VMI.
It was getting reset for vm_pt.

Fixing the UT.

Change-Id: I8666bfcf1718edb44cfb5f68efa49ddd2e251006
Closes-Bug: 1661134

Revision history for this message
Sreelakshmi (ssarva) wrote :

 we need this backported to COntrail 3.2.x for ATT's FirstNet usecase. can someone please create the scope for the same?

Revision history for this message
OpenContrail Admin (ci-admin-f) wrote : [Review update] R3.2

Review in progress for https://review.opencontrail.org/30429
Submitter: Ranjeet R (<email address hidden>)

Revision history for this message
OpenContrail Admin (ci-admin-f) wrote : [Review update] master

Review in progress for https://review.opencontrail.org/30431
Submitter: Ranjeet R (<email address hidden>)

Revision history for this message
OpenContrail Admin (ci-admin-f) wrote : A change has been merged

Reviewed: https://review.opencontrail.org/30431
Committed: http://github.org/Juniper/contrail-controller/commit/f61a4052f1537e6c37aefd67d49c4583297f29c9
Submitter: Zuul (<email address hidden>)
Branch: master

commit f61a4052f1537e6c37aefd67d49c4583297f29c9
Author: Ranjeet R <email address hidden>
Date: Thu Apr 13 21:12:48 2017 -0700

Fixes: ST: allow the same vmi to be referenced in multiple service-instances

Accumlates the ACLs before assigning it to the VMI. It was getting
assigned for every VM PT.

Change-Id: Ief33432cfbb4cf5fe37553575975a0973844a6ff
Closes-Bug: 1661134

Revision history for this message
OpenContrail Admin (ci-admin-f) wrote : [Review update] R3.2

Review in progress for https://review.opencontrail.org/30429
Submitter: Ranjeet R (<email address hidden>)

Revision history for this message
OpenContrail Admin (ci-admin-f) wrote : A change has been merged

Reviewed: https://review.opencontrail.org/30429
Committed: http://github.org/Juniper/contrail-controller/commit/ae73f8655e68623abea5cb7339b7b2b4cb4d1939
Submitter: Zuul (<email address hidden>)
Branch: R3.2

commit ae73f8655e68623abea5cb7339b7b2b4cb4d1939
Author: Ranjeet R <email address hidden>
Date: Thu Apr 13 20:49:44 2017 -0700

Fixes: ST: allow the same vmi to be referenced in multiple service-instances

The VirtualMachineInterfaceST class has a singular variable to store port_tuple.
Making it an array to keep updating if there are multiple port tuples.
Also, having multiple port tuples will work only in the case of in-network
and in-network-net service mode. Also, adding a UT to check for port tuples.

Change-Id: Ie57796d1b4edf362072c4c5e5b043754f4e374fe
Closes-Bug: 1661134

Revision history for this message
OpenContrail Admin (ci-admin-f) wrote : [Review update] master

Review in progress for https://review.opencontrail.org/33908
Submitter: Ranjeet R (<email address hidden>)

Revision history for this message
OpenContrail Admin (ci-admin-f) wrote : [Review update] R3.2

Review in progress for https://review.opencontrail.org/33909
Submitter: Ranjeet R (<email address hidden>)

Revision history for this message
OpenContrail Admin (ci-admin-f) wrote : A change has been merged

Reviewed: https://review.opencontrail.org/33909
Committed: http://github.com/Juniper/contrail-controller/commit/c0be405595ddaa44cbaeeebda66bc7b684d280b7
Submitter: Zuul (<email address hidden>)
Branch: R3.2

commit c0be405595ddaa44cbaeeebda66bc7b684d280b7
Author: Ranjeet R <email address hidden>
Date: Fri Jul 21 16:44:44 2017 -0700

Fixes: ST: allow the same vmi to be referenced in multiple service-instances

Adding Src and Dst VN info in VRF assign rules for the agent
to do a lookup in the default VRF.

Change-Id: I215eb194a5cc43cc7b055d536d79a41913d6af53
Closes-Bug: 1661134

Jim Reilly (jpreilly)
information type: Public → Private
tags: added: att-aic-contrail
Revision history for this message
Ganesha HV (ganeshahv) wrote :

Multi-inline cases are failing.

Revision history for this message
OpenContrail Admin (ci-admin-f) wrote : [Review update] R3.2

Review in progress for https://review.opencontrail.org/34101
Submitter: Naveen N (<email address hidden>)

Revision history for this message
OpenContrail Admin (ci-admin-f) wrote :

Review in progress for https://review.opencontrail.org/34114
Submitter: Ranjeet R (<email address hidden>)

Revision history for this message
OpenContrail Admin (ci-admin-f) wrote : A change has been merged

Reviewed: https://review.opencontrail.org/34101
Committed: http://github.com/Juniper/contrail-controller/commit/8d91573a5ea407b2e32a89e7b086bd8accee9108
Submitter: Zuul (<email address hidden>)
Branch: R3.2

commit 8d91573a5ea407b2e32a89e7b086bd8accee9108
Author: Naveen N <email address hidden>
Date: Fri Jul 28 00:12:51 2017 +0530

* Revert bidirectional ACL rule generation

If VN are specifed in VRF assign rule then agent should
implictly add reverse rule. Reverting since corresponding
schema change would also be reverted.

Change-Id: I8fc93912e8c5879f3e3dd7027dc03cf3ba5c63d8
Partial-bug:#1661134

Revision history for this message
OpenContrail Admin (ci-admin-f) wrote :

Reviewed: https://review.opencontrail.org/34114
Committed: http://github.com/Juniper/contrail-controller/commit/717e195a2387c6efc40717dc4c040bb04550bbf4
Submitter: Zuul (<email address hidden>)
Branch: R3.2

commit 717e195a2387c6efc40717dc4c040bb04550bbf4
Author: Ranjeet R <email address hidden>
Date: Thu Jul 27 16:15:48 2017 -0700

Fixes: ST: allow the same vmi to be referenced in multiple service-instances

Retracting https://review.opencontrail.org/#/c/33909/1

This will break the use case where there is a in-network and in-network-nat
in the service chain.

Change-Id: I88e44e5455053481305d5834581f3dc1ffecdf21
Closes-Bug: 1661134

Revision history for this message
OpenContrail Admin (ci-admin-f) wrote : [Review update] master

Review in progress for https://review.opencontrail.org/34156
Submitter: Sachin Bansal (<email address hidden>)

Revision history for this message
OpenContrail Admin (ci-admin-f) wrote : [Review update] R4.0

Review in progress for https://review.opencontrail.org/34159
Submitter: Sachin Bansal (<email address hidden>)

Revision history for this message
OpenContrail Admin (ci-admin-f) wrote : A change has been merged

Reviewed: https://review.opencontrail.org/34156
Committed: http://github.com/Juniper/contrail-controller/commit/9d0ac3db175148f7f3b36ca5a3b8d371edf8553c
Submitter: Zuul (<email address hidden>)
Branch: master

commit 9d0ac3db175148f7f3b36ca5a3b8d371edf8553c
Author: Sachin Bansal <email address hidden>
Date: Sun Jul 30 13:24:41 2017 -0700

Do not generate vrf assign rules for book-end RIs

When one port of a service VM is used in multiple service instances, the VRF
assign rules generated for this interface cannot identify which of those VRF
to use for the traffic. This is because VRF assign rules currently don't have
src or dst VN information. With this change, we will not create VRF assign
rules for 'book-end' interfaces, i.e., the left interface of the first instance
and right interface in the last instance in the chain. This allows us to
support this case when such a shared interface is the first or last in the
service chain.

Change-Id: Ibe9882fa96d4279b67c9aea469445c358505d957
Closes-Bug: 1661134

Revision history for this message
OpenContrail Admin (ci-admin-f) wrote :

Reviewed: https://review.opencontrail.org/34159
Committed: http://github.com/Juniper/contrail-controller/commit/7604a7a845c9c0b029dc8ac478af864d1fbc52f4
Submitter: Zuul (<email address hidden>)
Branch: R4.0

commit 7604a7a845c9c0b029dc8ac478af864d1fbc52f4
Author: Sachin Bansal <email address hidden>
Date: Sun Jul 30 13:24:41 2017 -0700

Do not generate vrf assign rules for book-end RIs

When one port of a service VM is used in multiple service instances, the VRF
assign rules generated for this interface cannot identify which of those VRF
to use for the traffic. This is because VRF assign rules currently don't have
src or dst VN information. With this change, we will not create VRF assign
rules for 'book-end' interfaces, i.e., the left interface of the first instance
and right interface in the last instance in the chain. This allows us to
support this case when such a shared interface is the first or last in the
service chain.

Change-Id: Ibe9882fa96d4279b67c9aea469445c358505d957
Closes-Bug: 1661134

Revision history for this message
Ganesha HV (ganeshahv) wrote :

1]. Tested the same scenario with ECMP and Health-Check

The right-interface VMI has a single service_health_check_refs instead of a list.
Addition/Deletion of port-tuples is not taking effect.

Revision history for this message
OpenContrail Admin (ci-admin-f) wrote : [Review update] R3.2

Review in progress for https://review.opencontrail.org/34424
Submitter: Sachin Bansal (<email address hidden>)

Revision history for this message
OpenContrail Admin (ci-admin-f) wrote :

Review in progress for https://review.opencontrail.org/34528
Submitter: Yuvaraja Mariappan

Revision history for this message
OpenContrail Admin (ci-admin-f) wrote : A change has been merged

Reviewed: https://review.opencontrail.org/34424
Committed: http://github.com/Juniper/contrail-controller/commit/4dedf42052ed5fad6d9cdbc6d936219efa6ee323
Submitter: Zuul (<email address hidden>)
Branch: R3.2

commit 4dedf42052ed5fad6d9cdbc6d936219efa6ee323
Author: Sachin Bansal <email address hidden>
Date: Sun Jul 30 13:24:41 2017 -0700

Do not generate vrf assign rules for book-end RIs

When one port of a service VM is used in multiple service instances, the VRF
assign rules generated for this interface cannot identify which of those VRF
to use for the traffic. This is because VRF assign rules currently don't have
src or dst VN information. With this change, we will not create VRF assign
rules for 'book-end' interfaces, i.e., the left interface of the first instance
and right interface in the last instance in the chain. This allows us to
support this case when such a shared interface is the first or last in the
service chain.

Change-Id: Ibe9882fa96d4279b67c9aea469445c358505d957
Closes-Bug: 1661134
(cherry picked from commit 7604a7a845c9c0b029dc8ac478af864d1fbc52f4)

Revision history for this message
OpenContrail Admin (ci-admin-f) wrote : [Review update] R3.2

Review in progress for https://review.opencontrail.org/34528
Submitter: Yuvaraja Mariappan

Revision history for this message
OpenContrail Admin (ci-admin-f) wrote : [Review update] R4.0

Review in progress for https://review.opencontrail.org/34539
Submitter: Yuvaraja Mariappan

Revision history for this message
OpenContrail Admin (ci-admin-f) wrote : [Review update] master

Review in progress for https://review.opencontrail.org/34540
Submitter: Yuvaraja Mariappan

Revision history for this message
OpenContrail Admin (ci-admin-f) wrote : A change has been merged

Reviewed: https://review.opencontrail.org/34528
Committed: http://github.com/Juniper/contrail-controller/commit/a432213bf0bf5fdd90e41ec815ac96329fbb72a2
Submitter: Zuul (<email address hidden>)
Branch: R3.2

commit a432213bf0bf5fdd90e41ec815ac96329fbb72a2
Author: Yuvaraja Mariappan <email address hidden>
Date: Sat Aug 12 00:28:57 2017 -0700

Added support to configure same vmi to multiple service instances

1. Added support to configure the same vmi to multiple service instances
2. Extended the support for health check as well

Change-Id: Ic6f136985893d7e6f8c5ea7244b85bdd6d82e3a1
Partial-bug: #1661134

Revision history for this message
OpenContrail Admin (ci-admin-f) wrote :

Reviewed: https://review.opencontrail.org/34539
Committed: http://github.com/Juniper/contrail-controller/commit/c313705a1d0b27a8e0585f10013286b4304d01fb
Submitter: Zuul (<email address hidden>)
Branch: R4.0

commit c313705a1d0b27a8e0585f10013286b4304d01fb
Author: Yuvaraja Mariappan <email address hidden>
Date: Sun Aug 13 09:46:54 2017 -0700

Added support to configure same vmi to multiple service instances

1. Added support to configure the same vmi to multiple service instances
2. Extended the support for health check as well

Change-Id: Ic6f136985893d7e6f8c5ea7244b85bdd6d82e3a1
Partial-bug: #1661134t

Revision history for this message
OpenContrail Admin (ci-admin-f) wrote :

Reviewed: https://review.opencontrail.org/34540
Committed: http://github.com/Juniper/contrail-controller/commit/ee50bd12991ebde65a50e65684796254e7fc3861
Submitter: Zuul (<email address hidden>)
Branch: master

commit ee50bd12991ebde65a50e65684796254e7fc3861
Author: Yuvaraja Mariappan <email address hidden>
Date: Sun Aug 13 09:46:54 2017 -0700

Added support to configure same vmi to multiple service instances

1. Added support to configure the same vmi to multiple service instances
2. Extended the support for health check as well

Change-Id: Ic6f136985893d7e6f8c5ea7244b85bdd6d82e3a1
Partial-bug: #1661134t

information type: Private → Public
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.