Nuage VSD provides a highly scalable, high availability, high performance SDN controller for network virtualization of data centers.
This charm is used to configure the VSD node as a VM inside a KVM machine orchestrated by Juju and is used to control the Nuage VSC.
Nuage VSD - Policy Engine
The principle use of this charm is with the Nuage VSC and VRS components. The VSD Charm orchestrates the deployment of the The Nuage VSD: a programmable policy and analytics engine with a flexible and hierarchical network policy framework for a Cloud Management System such as OpenStack.
This charm should be used with other principle openstack charms to configure and control the data-path service units configured using the Nuage VRS Charms
NOTE: this charm relies on binaries and VSD VM definition file that are distributed to customers of Nuage Networks VSP solution.
The VSD service is deployed as a KVM virtual machine.
The VSD repository: The VSD VM (.qcow) image and its VM definition file are provided either as a payload or as an URL to customers to download and deploy on Juju machines.
This VSD VM image must be placed either in the 'payload' folder within the charm or as part of a valid repository URL prior
to deployment. The charm expects to find the image; if they are missing the install hook will error out.
The charm will use the VSD image and VM definition xml specified and deploy it on a kvm.
juju deploy nuage-vsd juju add-relation neutron-api nuage-vsd // This relation is required to plugin VSD details in Neutron-api for communication between these two services. juju add-relation nuage-vsd nuage-vsc // This relation is requrired for VSD to talk to VSC juju expose nuage-vsd
VSD VM (KVM) Configuration
The VSD service VM is required to have a minimum of 12GB of memory and a minimum of 4 cores.
The VSD VM management IP address is a static IP address and is a configuration parameter of the VSD charm.
In a MaaS deployment this IP address must be obtained from the IP range defined for the MaaS DHCP configuration.
The following nuage-vsd charm configuration parameters are required(MUST) otherwise your installation will fail:
vsd-vm-ip-address: This is the Ip Address you want to give to your VSD VM.
Note: Make sure your VSD IP corresponds to any DNS name because while installing VSD service, hooks checks for DNS Name associated to VSD IP address.
vsd-vm-default-gw: Gateway that your VSD-VM will use to talk to other services in juju env like nauge-VSC and Neutron-api
vsd-vm-dns-server: "DNS Server which will be used to reslove the DNS for VSD-VM IP."
vsd-vm-subnet-mask-length: "Please provide the subnet mask of the network you gave VSD-VM IP form"
vsd-repository-url: "URL to get the Nuage VSD image". This will typically contain two files: vsd.qcow2 adn vsd.xml which are used to virsh define the VSD VM.
Note: Also make sure the vsp-license-file that you provide to fetch vsd license must be set and valid.
Please install python modules nose, mock flake8 yaml and pycurl for unit test to pass.
Known Limitations and Issues
MaaS 1.7 API does not yet support the API to obtain an IP address from the IP range defined for the MaaS DHCP configuration.
This charm only support deployment with OpenStack Icehouse or better.
755 Ravendale Drive
Mountain View CA 94043
- (string) vsd user name
- (string) Optional: Memory for VSD VM
- (string) "IP Address of the VSD VM" Note: Make sure your VSD IP corresponds to any DNS name because while installing VSD service, hooks will checks for DNS Name associated to VSD IP address.
- (string) License file for Nuage VSP. The VSD License must be set and valid.
- (string) Gateway for the VSD VM. Gateway that your VSD-VM will use to reach to other services in juju env like nauge-VSC and Neutron-api
- (string) DNS Server which will be used to reslove the DNS for VSD-VM IP.
- (string) Optional: ntp server. Used only when you want to use different ntp-server
- (string) Optional: Bridge you want to use for VSD-VM
- (string) Optional: VSD VM disk size in G
- (string) "Optional: Nuage VSD API version ex: 3.2" 'Please configure this parameter appropriately. Default is "3.2". Must be used for version above 3.2.'
- (string) Optional: A image file name that is present in the payload or fetched directory to configure the VSC image on KVM
- (string) Subnet mask for the VM IP
- (string) Optional: A vm definition file template name that is present in the templates directory to configure the VSC image on KVM
- (string) Provide URL to get the Nuage VSD image
- (string) vsd password.