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 (Highlight to read)
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
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
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
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
View full article