Network Configuration

Registered by Aaron Sahlin

Summary
=======
Guide the administrator through creating an external network and then set up private networks per project for them.

Motivation
========
Networking in Horizon is confusing and spread across several panels making it hard to understand and setup. You have to be a network expert and also have knowledge of neutron to understand what is actually being done when creating the different network entities (network, subnet, router, etc..) Or how you link them together to obtain what you want.

Description
=========
This blueprint is to add a new Network Configuration Panel (http://invis.io/GA1SQ0VKX) . The panel will walk the admin through setting up networks by asking for minimal input in common terms for the external network and then creating / configuring as much under the covers as possible to ease network setup. Throughout the network configuration panel text/information will be provided giving explaining what is being asked for and what the results of the users selections/input will be.

After completion, first the external network / subnets will be created and attached to physical router, then the project level networks will be created and setup (1 internal network/subnet/router created and connected to external network).

UX
===
Jeff Calcaterra to provide link.

Testing
======
Ensure networks are created and configured per user input. Test the different variations, select All Projects, single project, and multiple projects and ensure networks are created and configured correspondingly.
Ensure external network / subnets are created per specifications.
Ensure Error paths are work per design (listed below).

Error Handling:
What happens when an error occurs during network creation / configuration? There are different paths we could take:
1) Roll back all changes made by network configuration
2) Display a message saying we hit errors during creation and let admin know what was created before error occurred. (No roll back)
3) Give admin options: 'Try Again', 'Roll back', or 'Display what was created'.
** For the first pass we are planning on going with option 2. This is something that would be a candidate for future enhancement.

Outside Dependencies
==================
Uses existing REST APIs

Requirements Update Required
========================
None

Doc Impact
=========
The goal is that Network Configurationand in-panel help will be self explanatory but new setup guide section should be added.

Blueprint information

Status:
Complete
Approver:
David Lyle
Priority:
Medium
Drafter:
Aaron Sahlin
Direction:
Approved
Assignee:
Aaron Sahlin
Definition:
Obsolete
Series goal:
None
Implementation:
Good progress
Milestone target:
None
Started by
David Lyle
Completed by
Rob Cresswell

Related branches

Sprints

Whiteboard

asahlin (1/12/15) - I just wanted to add a note that this blueprint / design was done in cooperation with our networking team and experts, Deanna Brown and John Mcginn.

Gerrit topic: https://review.openstack.org/#q,topic:bp/admin-network-configuration,n,z

Addressed by: https://review.openstack.org/151799
    WIP Network Configuration

Addressed by: https://review.openstack.org/163486 -- merged
    Update Neutron AngularJS service

[david-lyle | 2015-03-17] Moving out of kilo.

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.