Supported Platforms
CloudStack Network Guru Plugin from Juniper Networks
Note: Please check the plugin download page for the latest version of this document
What is in this Version?
In this release , the CloudStack Network Guru Plugin from Juniper Networks supports configuration of layer 2 services and uses NDAPI or NETCONF/DMI to configure physical networks. This release is tested with KVM hypervisor hosts, Xen hypervisor hosts and CloudStack Version 4.2/4.3.
Plugin Overview
The Juniper Networks plugin for CloudStack enables you to orchestrate physical network configurations. The plugin supports Junos Space Network Director API (NDAPI Version 1.6) as well as NETCONF/DMI to configure the physical network.
When configured to work with NETCONF/DMI, this plugin supports the following Juniper Networks switching platforms running Junos OS Release 13.1 or later. For more information about these platforms, see http://www.juniper.net/us/en/products-services/switching/.
- All EX Series switches
- QFX3500, QFX3600, and QFX5100 standalone switches
- QFX3000-G QFabric system
- QFX3000-M QFabric system
Please refer to NDAPI documentation for the list of supported switches if you wish to configure the plugin to work with NDAPI.
Pre-requisites for Using the Plugin
The plugin can be configured to work either with NETCONF/DMI or NDAPI.
Before you use the plugin:
- lldpd must be installed and running on all the hypervisor hosts if the plugin must be used with lldp.
- Configure the same login name, password, and SSH port on all the Juniper Networks switches you want to use with the plugin.
Installing the Plugin
To install the plugin on Cloudstack 4.2:
- Download the tar.gz file for the plugin to a directory on the CloudStack management server.
- Extract the tar.gz file.
For example:
tar zxvf cloudstack4.2-juniper-network-guru-plugin-version-1_6.tar.gzThe
juniper-network-guru-plugin
directory is created in your current working directory. - Run the install script:
./install.sh
- Update the
/etc/cloudstack/management/componentContext.xml
file with entries relevant to Juniper Networks CloudStack Network Guru plugin.You can find a sample
componentContext.xml
file with the relevant entries packaged within the downloaded plugin. You can open this file in an editor and search Juniper to identify relevant entries. - Update the
/etc/cloudstack/management/JuniperNetworkGuru.properties
file.If you choose NDAPI as the value for the NW_ORCHESTRATION_VIA variable in the
/etc/cloudstack/management/JuniperNetworkGuru.properties
file, see Configuring the Juniper Plugin with NDAPI. - Restart the CloudStack Management Server. To restart the CloudStack Management Server, see Stopping and Restarting the Management Server
To install the plugin on Cloudstack 4.3:
- Download the tar.gz file for the plugin to a directory on the CloudStack management server.
- Extract the tar.gz file.
For example:
tar zxvf cloudstack4.2-juniper-network-guru-plugin-version-1_6.tar.gzThe
juniper-network-guru-plugin
directory is created in your current working directory. - Run the install script:
./install.sh
- Update the
/etc/cloudstack/management/JuniperNetworkGuru.properties
file.If you choose NDAPI as the value for the NW_ORCHESTRATION_VIA variable in the
/etc/cloudstack/management/JuniperNetworkGuru.properties
file, see Configuring the Juniper Plugin with NDAPI. - Restart the CloudStack Management Server. To restart the CloudStack Management Server, see Stopping and Restarting the Management Server
Stopping and Restarting the Management Server
You must stop and restart the management server for changes to take effect.
To stop the management server, issue the following command:
# service cloudstack-management stop
To start the management server, issue the following command:
# service cloudstack-management start
Configuring the Plugin
This section describes:
Configuring the Juniper Plugin to Use DMI
To configure the Juniper plugin by using the DMI, set the value
of NW_ORCHESTRATION_VIA to NETCONF in the /etc/cloudstack/management/JuniperNetworkGuru.properties
file. Specify the DEVICE_USER and DEVICE_PASSWORD in the /etc/cloudstack/management/JuniperNetworkGuru.properties
file.
The Juniper plugin must be aware which physical ports on the Juniper Networks switches (through which guest traffic flows) are directly connected to the physical ports on the hypervisor host. You can use either of the following configurations to enable the plugin to obtain this information:
- Set the value of USE_LLDP to true and also specify information about the switches (such as IP address,
username, and password) in the
/etc/cloudstack/management/JuniperNetworkGuru.properties
file as shown in the following sample excerpt of the/etc/cloudstack/management/JuniperNetworkGuru.properties
file:USE_LLDP = true SWITCHES = switch1, switch2,...
- Specify the ports on the switches relevant to guest
traffic in the
/etc/cloudstack/management/JuniperNetworkGuru.properties
file as shown in the following example:GUEST_TRAFFIC_SWITCH_PORTS=10.207.68.239:ge-0/0/20,10.207.68.239:ge-0/0/21,10.94.208.66:BBAK8304:xe-0/0/2
Configuring the Juniper Plugin with NDAPI
To configure the Juniper plugin with NDAPI, set the value for NW_ORCHESTRATION_VIA to NDAPI in /etc/cloudstack/management/JuniperNetworkGuru.properties file. Additionally, you must provide the switch topology to the NDAPI server by completing the following procedure:
- Update the values for the NDAPI_SERVER_URL, USERNAME, and PASSWORD variables in the
/etc/cloudstack/management/JuniperNetworkGuru.properties
file. - Update the
topology.xml
file (which is included in the plugin and exists in the directory to which the*.tgz
file is extracted) with these values: host-name, IP, password and revenueport_ifd. - Run the setup_ndapi.sh script:
./setup_ndapi.sh
Record the values for the NAAS_DOMAINID, TENANT_ID, and NAAS_SERVICE_ID variables, and update
/etc/cloudstack/management/JuniperNetworkGuru.properties
with those values.
Configuring Juniper Networks Switches
To use the Juniper Networks plugin with DMI and NDAPI , enable NETCONF and SSH on Juniper Networks switches.
To use the Juniper Networks plugin with DMI-LLDP, enable NETCONF , SSH, and LLDP (the switch port connected to the KVM hypervisor host) on Juniper Networks switches.
For information on how to enable SSH, NETCONF, and LLDP on various Juniper Networks switches, refer to the respective documentation from Juniper Networks.
Additional Information
For more information about the plugin, write to cloudstack-plugin-support@juniper.net.
Appendix
Example Topology XML
<NaasDomains> <NaasDomain name="my_domain"> <topology name="my_topo"> <systems> <system name="bng-dcnb-ex-a" mgmtIp="ip of switch" userId="login name of switch" password="switch password"> <capabilities> <capability name="switching" /> </capabilities> <revenueport_ifds> <revenueport_ifd name="ge-0/0/0"/> <revenueport_ifd name="ge-0/0/1"/> <revenueport_ifd name="ge-0/0/2"/> <revenueport_ifd name="ge-0/0/3"/> <revenueport_ifd name="ge-0/0/4"/> <revenueport_ifd name="ge-0/0/5"/> <revenueport_ifd name="ge-0/0/6"/> <revenueport_ifd name="ge-0/0/7"/> <revenueport_ifd name="ge-0/0/8"/> <revenueport_ifd name="ge-0/0/9"/> </system> </systems> </topology> </NaasDomain> </NaasDomains>
Release Notes
On Cloudstack 4.3, the user has to first create the network.
Later, the user can create instances and attach them to the network
created. This is the workaround for an known design issue in Cloudstack4.3
involving multiple network gurus.
Published: 2014-08-13
Supported Platforms
Published: 2014-08-13