Puppet Labs : Module of the Week: riverbed/stingray – Installs and Configures the Stingray Traffic Manager:
Purpose | Install and configure the Stingray Traffic Manager |
Module | riverbed/stingray |
Puppet Version | 2.7+ |
Platforms | Linux x86, x86_64 ‐ Kernel 2.6 (2.6.8+, 2.6.22+ for IPv6), glibc 2.3.6+ |
Riverbed
Stingray Traffic Manager is a full performance software and virtual Layer 7 application delivery controller (ADC) that enables enterprises and cloud operators to create, manage, and deliver key services more quickly, more flexibly, and at a lower cost. Stingray Traffic Manager offers much more than just load balancing. It controls and optimizes end-user services by inspecting, transforming, prioritizing, and routing application traffic.
The Stingray Traffic Manager Puppet module will automatically download and install the Stingray Traffic Manager software onto a node.
Installing the module
Complexity | Easy |
Installation Time | 5 minutes |
Installing the Stingray Traffic Manager Puppet module is as simple as using the Puppet module tool, available in Puppet 2.7.14+ and Puppet Enterprise 2.5+:
# puppet module install riverbed/stingray
Notice: Preparing to install into /etc/puppet/modules ...
Notice: Downloading from https://forge.puppetlabs.com ...
Notice: Installing -- do not interrupt ...
/etc/puppet/modules
└─┬ riverbed-stingray (v0.1.1)
└── puppetlabs-stdlib (v3.2.0)
Resource Overview
This
reference guide has descriptions of all the resources available.
Configuring the module
Complexity | Easy |
Installation Time | 5 minutes |
To install the Stingray Traffic Manager software, put the following in your
node definition once you have read the
Riverbed End User License Agreement:
class {'stingray':
accept_license => 'accept'
}
There are some optional parameters as well. The full list of parameters is below:
- ‘install_dir’: Directory to install the Stingray software to (default: /usr/local/stingray/).
- ‘version’: The version of Stingray to install (default: 9.1).
- ‘tmp_dir’: Temp directory to use during installation (default: /tmp).
- ‘accept_license’: Use of this software is subject to the terms of the Riverbed End User License Agreement. Set this to ‘accept’ once you have read the license (default: reject).
The node definition can either be directly in the site manifest file (either /etc/puppet/manifests/site.pp or /etc/puppetlabs/puppet/manifests/site.pp) or in a separate file imported to the site manifest file.
Example usage
The below example configures the Stingray Traffic Manager to manage a simple website named Northern Lights. It creates a pool with two backend nodes, a virtual server, and a traffic IP group. It also creates a Transparent Session affinity based persistence class as well as an HTTP health monitor. Both are assigned to the pool.
node 'stmtest' {
class {'stingray':
accept_license => 'accept'
}
stingray::new_cluster{'new_cluster':
}
stingray::pool{'Northern Lights':
nodes => ['192.168.22.121:80', '192.168.22.122:80'],
algorithm => 'Least Connections',
persistence => 'NL Persistence',
monitors => 'NL Monitor'
}
stingray::virtual_server{'Northern Lights':
pool => 'Northern Lights',
address => '!NL TIP',
enabled => 'yes',
}
stingray::trafficipgroup{'NL TIP':
ipaddresses => '10.32.147.85',
machines => 'stmtest',
enabled => yes,
}
stingray::monitor{'NL':
type => 'HTTP',
path => '/',
body_regex => '.*'
}
}
The above example can be expanded to decrypt SSL traffic by adding in the below code snippet, which creates an additional virtual server to take in and decrypt SSL traffic and imports the certificate that virtual server will use.
stingray::virtual_server { 'Northern Lights SSL':
address => '!NL TIP',
protocol => 'HTTP',
port => 443,
pool => 'Northern Lights',
enabled => 'yes',
ssl_decrypt => 'yes',
ssl_certificate => 'My SSL Certificate'
}
stingray::ssl_certificate{'My SSL Certificate':
certificate_file => 'puppet:///modules/stingray/cert.public',
private_key_file => 'puppet:///modules/stingray/cert.private'
}
Conclusion
With the Stingray Puppet module you can easily provision and configure a Stingray Traffic Manager deployment in the cloud or in your private data center. The Stingray Puppet module will automatically:
- Download the Stingray Traffic Manager software from the Riverbed Support site and install it on the target machine
- Join existing clusters or create new ones
- Create Virtual Servers, Traffic IP Groups, Pools, Monitors, and Persistence classes
Learn More:
没有评论:
发表评论