Add support for the Nexus 1000V into the Cisco Plugin

Registered by Kyle Mestery

This blueprint tracks the addition of Nexus 1000V support into the Cisco plugin. The Nexus 1000V will allow for the creation of virtual networks on KVM based hypervisors.

Blueprint information

Status:
Complete
Approver:
Kyle Mestery
Priority:
Medium
Drafter:
Kyle Mestery
Direction:
Needs approval
Assignee:
Abhishek Raut
Definition:
Approved
Series goal:
Accepted for havana
Implementation:
Implemented
Milestone target:
milestone icon 2013.2
Started by
Kyle Mestery
Completed by
Abhishek Raut

Related branches

Sprints

Whiteboard

16-Jul: Moving to H3 as this will not be able to merge prior to H2 cutoff.

Scope: This blueprint will track internally the addition of Nexus 1000V support into the Cisco plugin.

Use Cases: This will enable the Cisco Nexus 1000V to integrate with the Cisco plugin and be used to drive the realization of Quantum constructs.

Implementation overview: TBD

Data Model Changes: All locally contained to the Cisco plugin. We will likely be adding a few new extension APIs around port-profiles here.

Configuration variables: TBD

APIs:

Plugin interface: N/A

Required plugin support: N/A, this is a blueprint specifically for the Cisco plugin.

Dependencies: Nothing new outside of the existing Cisco plugin code.

CLI requirements: The plugin will introduce new CLIs around port-profiles. Examples of this are listed here:

1. Create a network profile
    quantum profile-create PROFILE_NAME network --segment_type vlan --segment_range 400-499
2. Create a network
    quantum net-create NETWORK_NAME --n1kv:profile_id NETWORK_PROFILE_ID
    The above NETWORK_PROFILE_ID is that of the network profile created in step 1.
3. Create a subnet
    quantum subnet-create NETWORK_NAME 10.0.0.1/24
    NETWORK_NAME corresponds to the name of the network created in step 2.
4. Create a port
    quantum port-create NETWORK_NAME --n1kv:profile_id POLICY_PROFILE_ID
    The above POLICY_PROFILE_ID is that of the policy profile received from Nexus 1000V VSM
5. Boot a VM
    nova boot --image IMAGE_ID--flavor 1 --nic net-id=NETWORK_ID --meta port_id=PORT_ID VM_NAME
    IMAGE_ID can be found out by executing "nova image-list" command.
    NETWORK_ID is the network uuid from step 2
    PORT_ID is the port uuid from step 4

Horizon requirements: In progress.

Usage example: See CLI section.

Test cases: Unit tests will be a part of this new sub-plugin.

Gerrit topic: https://review.openstack.org/#q,topic:bp/cisco-plugin-n1k-support,n,z

Addressed by: https://review.openstack.org/34642
    Add support for the Nexus 1000V into the Cisco Plugin.

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.