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

Provide ability to create publically-accessible VLAN / IP networks #169

Closed
sadsfae opened this issue Mar 8, 2018 · 2 comments
Closed

Provide ability to create publically-accessible VLAN / IP networks #169

sadsfae opened this issue Mar 8, 2018 · 2 comments

Comments

@sadsfae
Copy link
Member

sadsfae commented Mar 8, 2018

We have had the need to automatically allocate a floating IP / publically-routable RFC1918 network to one of the interfaces on each machine inside an assignment.

From a QUADS perspective this will be in the form of:

  • Each network is assigned an --extnet ID
  • We introduce ../conf/external-network.yml
  • We introduce a user-space tool to query available, unused extnet networks
  • We map each network to an ID via key value pairs
  • Add QUADS Methods to track/manage cloud metadata for network ID
  • Default for defining clouds is --extnet 0 (no network)

e.g.

quads --define-cloud cloud05 --force --description "openstack" --cloud-owner jtaleric --extnet 4

  • This is currently being implemented like this, example being a 10.12.80.0/20 network.

  • 2x /23 networks

  • 8x /24 networks

  • 6x /25 networks

  • 4x /26 networks

To be divided up as follows:

Network Address Subnet Gateway # of IPs

pubnet01 10.12.80.0/23 255.255.254.0 10.12.81.254 510
pubnet02 10.12.82.0/23 255.255.254.0 10.12.83.254 510
pubnet03 10.12.84.0/24 255.255.255.0 10.12.84.254 254
pubnet04 10.12.85.0/24 255.255.255.0 10.12.85.254 254
pubnet05 10.12.86.0/24 255.255.255.0 10.12.86.254 254
pubnet06 10.12.87.0/24 255.255.255.0 10.12.87.254 254
pubnet07 10.12.88.0/24 255.255.255.0 10.12.88.254 254
pubnet08 10.12.89.0/24 255.255.255.0 10.12.89.254 254
pubnet09 10.12.90.0/24 255.255.255.0 10.12.90.254 254
pubnet10 10.12.91.0/24 255.255.255.0 10.12.91.254 254
pubnet11 10.12.92.0/25 255.255.255.128 10.12.92.126 126
pubnet12 10.12.92.128/25 255.255.255.128 10.12.92.254 126
pubnet13 10.12.93.0/25 255.255.255.128 10.12.93.126 126
pubnet14 10.12.93.128/25 255.255.255.128 10.12.93.254 126
pubnet15 10.12.94.0/25 255.255.255.128 10.12.94.126 126
pubnet16 10.12.94.128/25 255.255.255.128 10.12.94.254 126
pubnet17 10.12.95.0/26 255.255.255.192 10.12.95.62 62
pubnet18 10.12.95.64/26 255.255.255.192 10.12.95.126 62
pubnet19 10.12.95.128/26 255.255.255.192 10.12.95.190 62
pubnet20 10.12.95.192/26 255.255.255.192 10.12.95.254 62
@sadsfae sadsfae added this to the 1.1 milestone Mar 8, 2018
@sadsfae sadsfae modified the milestones: 1.1, 1.0 Mar 21, 2018
@sadsfae
Copy link
Member Author

sadsfae commented Apr 20, 2018

This probably needs to go in after:

#140
#156

@sadsfae
Copy link
Member Author

sadsfae commented Mar 4, 2019

This has been implemented in 1.0.2. While the actual creation of VLANs on the switch side is not automated, it's templated and not having this in place will keep an assignment from going out which is in scope for this enhancement.

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

1 participant