Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

Navigation

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:

  1. Download the tar.gz file for the plugin to a directory on the CloudStack management server.
  2. Extract the tar.gz file.

    For example:

    tar zxvf cloudstack4.2-juniper-network-guru-plugin-version-1_6.tar.gz

    The juniper-network-guru-plugin directory is created in your current working directory.

  3. Run the install script:
    ./install.sh
  4. 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.

  5. 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.

  6. 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:

  1. Download the tar.gz file for the plugin to a directory on the CloudStack management server.
  2. Extract the tar.gz file.

    For example:

    tar zxvf cloudstack4.2-juniper-network-guru-plugin-version-1_6.tar.gz

    The juniper-network-guru-plugin directory is created in your current working directory.

  3. Run the install script:
    ./install.sh
  4. 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.

  5. 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:

  1. Configuring the Juniper Plugin to Use DMI
  2. Configuring the Juniper Plugin with NDAPI

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:

  1. Update the values for the NDAPI_SERVER_URL, USERNAME, and PASSWORD variables in the /etc/cloudstack/management/JuniperNetworkGuru.properties file.
  2. 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.
  3. 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