Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Date

Revision

Author

Descriptionofthechange

06/04/2014

0.1

Suresh Ramamurthy

Initial Draft

07/22/20140.2Suresh RamamurhtyAdded information about plugin client dependency and UserData support in VPC

 

Glossary

 

Term

Definition

VSP

Virtualized Services Platform

VSD

Virtualized Services Directory

VSC

Virualized Services Controller

VRS

Virtualized Routing and Switching

...

1. Advanced Isolated network mode:

  • DHCP

  • Static NAT

  • Source NAT

  • FirewallNetwork ACL

  • Virtual Networking

2. VPC network mode:

  • DHCP

  • Static NAT

  • Source NAT

  • Network ACL

  • Virtual Networking

    Note: If User needs Password Reset funtionality, then they can choose UserData Service and select VirtualRouter for isolated networks or VPCVirtualRouter for VPC as the ServiceProvider.

...

  •  The initial implementation targets the Xen Server and ESXI hypervisor. Additional services will be supported in subsequent releases

Advantages

All the network isolation and routing is handled by the Nuage SDN solution. Routing of the packets happen at hypervisor itself. Virtual Router is not used for routing the packets thus the current issue of the Virtual Router being the bottleneck is avoided. The Virtual Router VM is spawned used only for Password reset functionality. The Nuage solution also helps significantly improve the agility and scale of a CS deployment as compared to a Virtual Router based deployment

...

All the above components needs to be provisioned for the plugin to function properly. Also, Nuage VSP plugin directly talks with Nuage VSD using Rest API. So, all the components needs to be running to test the plugin functionality. NuageVsp plugin depends on the plugin client library. This needs to be installed on the management server as part of CloudStack management server installation.

The following tests should be verified before declaring the feature complete:

...

a) Create a network offering for VPC with default deny all rule and select services supported by Nuage VSP plugin for VPC. Choose NuageVsp as the service provider for DHCP, SourceNAT, StaticNAT, NetworkACL and Virtual Networking services. Choose NuageVspVpc for NerworkACL service 

    Choose VPCVirtualRouter as the service provider for UserData service.

b) Create a VPC offering with the same services that were selected to create the network offering

bc) Create an a VPC and select "Default VPC offering with NuageVsp" as the VPC offering created above.

cd) Create a tier and select the network offering created above

ce) Spawn a 2 VMs. VMs should each get an IP address. They should ping each other. SSH to a box on the external network should fail

df) Create a Static NAT and associate it one of the VM

eg) Add an Network ACL Egress rule for the network with source CIDR as 0.0.0.0/0, protocol as TCP and ssh port number

fh) SSH to box that is in the external network should work

...

Architecture and Design description

A Nuage VSP pluign plugin will be developed to add Nuage network virtualization into CloudStack

...

NuageVspElement

a) Create/Delete NetworkACL, Firewall and Egress rule in VSP

b) Create/Delete Static NAT

NuageVspVpcElement

a) Create/Delete NetworkACL

b) Spawn/Delete VR

NuageVspManagera

) Create a default VPC offeringb) Handle sync to clean up the stale entities in VSP

...

A new Service provider called NuageVsp will be added. This needs to be enabled for the physical network that has the Guest Network with VSP isolation. Nuage VSD information need to be configured for NuageVsp Service provider

Note: NuageVsp network plugin depends on a NuageVsp plugin client library. So, this client library needs to installed after installing CloudStackon management server as part of CloudStack management server installation. When a NuageVsp provider information is added for the guest network,

plugin loads the client library and then uses the library to make REST API calls to Nuage VSD to create logical topology, VMs etc.. 

Web Services APIs

None

UI Flow

...