vADC Docs

Brocade Virtual Traffic Manager Plugin for VMware vRealize Orchestrator

by aannavarapu ‎08-11-2015 11:14 AM - edited ‎08-11-2015 12:06 PM (2,558 Views)

This article describes the installation procedure for the vTM plugin for vRO and how it enables automating the most common configurations of a Traffic Manager in a vCenter environment. The plugin uses the SOAP API of the Traffic Manager to enable vRealize Orchestrator workflows. The workflows available are classified into CRUD operations including but not limited to adding, deleting and reading pool, node, rule and virtual server configurations. Additional workflows for attaching and detaching vTM instances are included in the plugin.

 

 

Spoiler

Note: The Plugin can be downloaded from this article. It is added as a zip file. Unzip it to get the plugin in .dar format

 

Virtual Traffic Manager Overview

 

Brocade Virtual Traffic Manager (vTM) is a software-based application delivery controller (ADC) designed to deliver faster and more reliable access to public web sites and private applications. vTM frees applications from the constraints of legacy, proprietary, hardware-based load balancers, which enables them to run on any physical, virtual, or cloud environment. With vADC products from Brocade, organizations can:

 

  • Make applications more reliable with local and global load balancing
  • Scale application servers by up to 3x by offloading TCP and SSL connection overhead
  • Accelerate applications by up to 4x by using web content optimization (WCO)
  • Secure applications from the latest application attacks, including SQL injection, XSS, CSRF, and more
  • Control applications effectively with built-in application intelligence and full-featured scripting engine

 

Virtual Traffic Manager offers much more than basic load balancing. It controls and optimizes end-user services by inspecting, transforming, prioritizing, and routing application traffic. The powerful TrafficScript® engine facilitates the implementation of traffic management policies that are unique to an application by allowing organizations to build custom functionality or to leverage existing features in Virtual Traffic Manager in a specialized way. With vTM, organizations can deliver:

 

Performance

Improve application performance for users by offloading encryption and compression from the web server by dynamic caching and reducing the number of TCP sessions on the application.

 

Reliability and scalability

Increase application reliability by load balancing traffic across web and application servers, balancing load across multiple data centers (private or public clouds), monitoring the response time of servers in real-time to decide the fastest way to deliver a service, protecting against traffic surges, and by managing the bandwidth and rate of requests used by different classes of traffic.

 

Advanced scripting and application intelligence

Manage application delivery more easily with fine-grained control of users and services using TrafficScript, an easy-to-use scripting language that can parse any user transaction, and take specific, real-time action based on user, application, request, or more. Development teams use TrafficScript to enable a point of control in distributed applications, while operations teams use it to quickly respond to changing business requirements or problems within an application before developers can fix it.

 

Application acceleration

Dramatically accelerate web-based applications and websites in real-time with optional web content optimization (WCO) functionality. It dynamically groups activities for fewer long distance round trips, resamples and sprites images to reduce bandwidth, and minifies JavaScript and combines style sheets to give the best possible response time for loading a web page on any browser or device.

 

Application-layer security

Enhance application security by filtering out errors in web requests, and protecting against external threats, with the option of a comprehensive Layer-7 firewall to defend against deliberate attacks.

 

Why vTM plugin for vRO

 

With businesses focusing more on automation and orchestration of IT services in today’s hybrid deployments, the attention towards product integrations using APIs has increased. The vTM plugin for vRO is a great solution in making available the core load balancing functions to the vCenter environment in the form of workflows and actions using SOAP API. The plugin, in addition to automating the configuration aspects of load balancing, will prevent misconfigurations. This helps businesses to accelerate and reduce IT costs while retaining quality.

 

Requirements

  • vTM Plugin DAR file (Version 1.0.0)
  • vRealize Orchestrator Server 
  • vRealize Orchestrator Client

 

Installing vTM Plugin

To install the Virtual Traffic Manager plugin for vRO:

 

  • Download the vTM plugin DAR file from this page
  • Login to the vRealize Orchestrator UI and click on “Plug-ins” on the left frame
  • Scroll to the bottom on the right frame and click on the empty text-box for “Plug-in file
  • Browse and locate the vTM plugin DAR file named “o11nplugin-brocade.dar”. Once Selected, click open and then “Upload and Install
  • Click “Apply Changes
  • Click “Startup Options” on the left frame and select “Restart service” to register the plugin

 plugin-install.png

 

Certificate Installation

In some cases, vRealize Orchestrator requires self signed certificates of Virtual Traffic Managers to be imported to enable workflow interactions. Because of this requirement, it is recommended to do so.

 

  • Login to the vRealize Orchestrator UI and click on “Network” on the left frame
  • On the right frame of the UI, select the “SSL Trust Manager” tab
  • At the bottom of the page for input “Import from URL”, type the https admin UI address of the SteelApp Traffic Manager and click Import
  • Click “Import” when asked for confirmation to import. However, ensure that the Common Name of the certificate for a vTM matches how we connect to it (either IP or FQDN) from the workflows

 cert-install.png

 

Packaged Workflows

Once the Brocade vTM plugin is deployed using the admin UI of vRO, the workflows packaged along with the plugin are accessible to be run from the vRealize Orchestrator client.

 

  • Login to the vRealize Orchestrator client software
  • Select the Workflows tab and expand the list of workflow to find the folder “Brocade
  • The vTM plugin comes packaged with the following workflows. The workflows are categorized as Create, Read, Update and Delete (CRUD) operations in addition to a couple of workflows for Inventory management in vRO. The table describes what each workflow does

 

Workflow

Workflow Type

Workflow Description

Add vTM to Inventory

Inventory Configuration

Attaches a VTM ADC to vRO Inventory.

 

Input: username, password, IP and Port Number

Output: None

Remove vTM from Inventory

Inventory Configuration

Detaches a vTM ADC from the vCO Inventory.

Input: vTM Instance

Output: None

Add Node to Pool

Create Operations

Adds an IP address and port number of a service as a node to a named Pool.

 

Input: Pool, IP address, Port Number

Output: Node

Add Pool to vTM

Create Operations

Adds a Pool to a vTM. At least one node needs to be entered while creating a pool.

 

Input: STM, Pool name, ip address, port number

Output: Pool

Add Request Rule to Virtual Server

Create Operations

Adds a Traffic Script request rule to a Virtual Server. The field Rule text takes the complete traffic script code as input. The enable option attaches it to the virtual server.

 

Input: Virtual Server, Rule Name, Rule Text, enable, run frequency

Output: Rule

Add Response Rule to Virtual Server

Create Operations

Adds a Traffic Script response rule to a Virtual Server. The field Rule text takes the complete traffic script code as an input. The enable option attaches it to the virtual server.

 

Input: Virtual Server, Rule Name, Rule Text, enable, run frequency

Output: Rule

Add Virtual Server to vTM

Create Operations

Adds a Virtual Server to a vTM. A default pool needs to be selected for the virtual server. By default, the virtual server binds to all IP addresses in the vTM.

 

Input: vTM, port Number, Protocol, Default Pool, Virtual Server Name

Delete Node from Pool

Delete Operations

Deletes a selected Node from a Pool.

 

Input: Pool, Node

Output: None

Delete Pool from vTM

Delete Operations

Deletes a selected Pool from a vTM.

 

Input: vTM, Pool

Output: None

Delete Request Rule from Virtual Server

Delete Operations

Deletes a selected request rule from a Virtual Server.

 

Input: Virtual Server, Rule

Output: None

Delete Response Rule from Virtual Server

Delete Operations

Deletes a selected response rule from a Virtual Server.

 

Input: Virtual Server, Rule

Output: None

Delete Virtual Server from vTM

Delete Operations

Deletes a selected Virtual Server from a vTM.

 

Input: STM, Virtual Server

Output: None

Get Nodes from Pool

Read Operations

Gets the List of Nodes from a selected Pool.

 

Input: Pool

Output: Array of Nodes

Get Pools from vTM

Read Operations

Gets the List of Pools from a vTM.

 

Input: vTM

Output: Array of Pools

Get Request Rules from Virtual Server

Read Operations

Gets the List of Request rules from a selected Virtual Server.

 

Input: Virtual Server

Output: Array of Request Rules

Get Response Rules from Virtual Server

Read Operations

Gets the List of Response rules from a selected Virtual Server.

 

Input: Virtual Server

Output: Array of Response Rules

Get Virtual Servers from vTM

Read Operations

Gets the List of Virtual Servers from an vTM.

 

Input: STM

Output: Array of Virtual Servers

Disable Node in Pool

Update Operations

Disables a selected Node in a Pool.

 

Input: Pool, Node

Output: None

Drain Node in Pool

Update Operations

Drains a selected Node in a Pool.

 

Input: Pool, Node

Output: None

Enable Node in Pool

Update Operations

Makes a Node active in a Pool.

 

Input: Pool, Node

Output: None

Enable Virtual Server

Update Operations

Enables/Disables a selected Virtual Server

 

Input: vTM, Virtual Server, Enable

Output: None

Update LB Algorithm for Pool

Update Operations

Updates the LB algorithm for a selected Pool

 

Input: vTM, Pool, LB type

Output: None

 

 

 workflows.png

 

Contributors