Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

SNAT pool IPs shared across multiple DSCs of BIG-IPs #1059

Open
mattgreene opened this issue Oct 25, 2017 · 0 comments
Open

SNAT pool IPs shared across multiple DSCs of BIG-IPs #1059

mattgreene opened this issue Oct 25, 2017 · 0 comments

Comments

@mattgreene
Copy link
Contributor

Agent Version

8.3.6

Operating System

N/A

OpenStack Release

Mitaka

Description

The model for SNAT creates an SNAT pool per project. In a ‘multi pair’ installation (i.e. scaling pairs horizontally) we see LBs from the same project scheduled across device pairs. This leads to the SNAT pool IPs being shared, this leads to situations where traffic to an LB on one pair is eventually ‘blackholed’ on the second pair, bringing down customer scenarios. We have fixed this by allowing the VS VIP to be used as the SNAT IP, ensuring uniqueness on device pairs. We discussed this in January, but never heard anything back.

Deployment

Multiple BIG-IP device service clusters.

Additional Notes

This is a bug in our SNAT allocations when trying to scale out a single tenant’s services across multiple DSCs of BIG-IPs.

Currently our SNATs are created based on a naming scheme which is insufficient to handle the use of multiple BIG-IP DSC with agents sharing the same environment_prefix, but a different environment_group numbers. When services requested and the agent’s capacity score dictates the placement of loadbalancing services on a different DSC then the one originially hosting services for a tenant, new SNATs are not created, but rather the same SNAT translation addresses are provisioned on both DSCs. This creates an IP address conflict on the tenant subnets.

The solution is to change the SNAT naming convention to include the environment_group number such that each DSC gets its own set of SNAT translation addresses allocated from the tenant’s subnets. The way tenant based SNAT pools are created will also have to be smart enough to attribute for the environment_group number.

@amudukutore amudukutore added P3 and removed P2 labels Jan 15, 2018
@amudukutore amudukutore added P2 and removed P3 labels Jan 25, 2018
@jlongstaf jlongstaf added P3 and removed P2 labels Feb 15, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants