ZXTM Control API Overview and Reference
Version 4.0
2.2 Adding a node to a pool
Provisioning systems can dynamically deploy applications across servers,
perhaps in reaction to increased server load. This example demonstrates
a Control API application that modifies the nodes that a pool balances
traffic to.
If the pool is using ZXTM's `Perceptive' algorithm (the preferred load
balancing method for busy sites), then ZXTM will slowly ramp up the load
on newly introduced nodes, gauging their potential performance, until
they run at the same speed as the other nodes in the pool. This `Slow
Start' capability ensures that new nodes are not immediately overloaded
with a large burst of traffic.
2.2.1 Perl
Example
#!/usr/bin/perl w
use SOAP::Lite 0.60;
# This is the url of the ZXTM admin server
my $admin_server = https://username:password@host:9090 ;
# The pool to edit, and the node to add
my $poolName = "test pool";
my $newNode = "10.100.1.10:80";
my $conn = SOAP::Lite
> uri( http://soap.zeus.com/zxtm/1.0/Pool/ )
> proxy("$admin_server/soap")
> on_fault( sub {
my( $conn, $res ) = @_;
die ref $res ? $res >faultstring :
$conn >transport >status; } );
# Get a list of pools
my $res = $conn >getPoolNames();
my @names = @{$res >result};
# Get the nodes for each pool
$res = $conn >getNodes( \@names );
34
New Page 1