You can integrate the Session Initiation Protocol (SIP)
on demand router (ODR) with Load Balancer. Load Balancer for IBM WebSphere® Application Server can help maximize
the potential of your Web site by providing a powerful, flexible,
and scalable solution to peak-demand problems.
Before you begin
Restriction: WebSphere Virtual Enterprise does not support SIP
features on the z/OS operating system.
- Install Load Balancer for IBM WebSphere Application Server Version 6.1. See the Edge Components Information Center for installation
information.
- Start the Session Initiation Protocol (SIP) proxy server.
Procedure
- Start the Load Balancer.
- From the command prompt, type dsserver start.
- Then type lbadmin to start the
administrative console for the Load Balancer.
- From the administrative console, right click on Dispatcher,
and then select Connect to Host.
- Right click on the hostname and select Start
Executor.
- Start the configuration wizard for the load balancer. Right-click Dispatch
> Start Configuration Wizard.
- Select default host.
- Type a cluster address. The cluster address should not
be pingable before the Executor starts. You must specify
this same value for host when you create a user-defined port.
- Type a port number, such as 5060.
- Add servers to the port. Add each server to which the
load balancer will proxy traffic. In your configuration,
the load-balanced server is the ODR server for your WebSphere Application Server configuration.
- Start an advisor by clicking Yes. For example,
for HTTP traffic, start the HTTP advisor. For SIP traffic, start the
SIP advisor. The advisor tells the manager whether or not a specific
port is accepting traffic.
- Alias the cluster address on the SIP proxy server loopback
adapter. For example, type lb-alias.sh <cluster_ip_address>:
#!/bin/sh
CLUSTER=$1
if [ -f /proc/sys/net/ipv4/conf/all/arp_ignore -a -f /proc/sys/net/ipv4/conf/all/arp_announce ]
then
echo Using arp_ignore
echo "3" >/proc/sys/net/ipv4/conf/all/arp_ignore
echo "2" >/proc/sys/net/ipv4/conf/all/arp_announce
ip addr add $CLUSTER/32 scope host dev lo
elif [ -f /proc/sys/net/ipv4/conf/all/hidden -a -f /proc/sys/net/ipv4/conf/lo/hidden ]
then
echo Using hidden
echo "1" > /proc/sys/net/ipv4/conf/all/hidden
echo "1" > /proc/sys/net/ipv4/conf/lo/hidden
ip addr add $CLUSTER/32 dev lo
elif [ ! -z "$( which arptables )" ]
then
echo Using arptables
arptables -A IN -s $CLUSTER -j DROP
arptables -A OUT -s $CLUSTER -j mangle --mangle-ip-s $(hostname)
ip addr add $CLUSTER/32 dev lo
else
echo Using iptables
iptables -t nat -A PREROUTING -d $CLUSTER -j REDIRECT
fi
Load Balancer Administration Guide for more
information.
- Configure an IP sprayer from the WebSphere Virtual Enterprise administrative console.
- From the administrative console, click .
- Under General Properties, in the IP sprayer configuration
section, select the checkbox for the IP sprayer from which you want
the SIP proxy server to receive traffic: Enable TCP sprayer, Enable
SSL sprayer, or Enable UDP sprayer.
- Enter a value for the Host. This is the value you specified in step 2b.
- Enter a value for the Port. This is the value you specified in step 2c.
- Click Apply, and then click Save.
- Define SIP ODR custom properties from the WebSphere Virtual Enterprise administrative console.
- From the administrative console, click .
- Under General Properties, in the Additional Properties
section, click Custom properties.
- Create the following SIP ODR custom properties:
- LBIPAddr : The IP address of the load balancer
machine.
- SIPAdvisorMethodName: The type of messages
sent by the Load Balancer advisory. This should be INFO.
- serverUDPInterface: The IP address of the
server machine.
- serverUDPPort : Specify an unused port number.
For example, 5080.
- Create a user-defined port from the WebSphere Virtual Enterprise administrative console.
- From the administrative console, click .
- Click New.
- Select User-defined port.
- Enter SIP_LB_Address for the Port
Name.
- Enter a value for the Host. This is the value you specified in step 2b.
- Enter a value for the Port. This is the value you specified in 2c. Click OK. Save changes.
- Under Ports, modify the PROXY_SIP_ADDRESS from
* to the actual host name of the proxy server machine.
- Click Apply, and then click Save.
- Modify the SIP proxy transports.
- From the administrative console, click .
- From the Port drop-down list,
select SIP_LB_Address.
- Click Apply, and then click Save.
- Restart the proxy server to save your changes. Use
the following additional steps to integrate the ODR with the load
balancer:
- Verify that the host name of the ODR machine is set for
the PROXY_SIP_ADDRESS. To verify from the administrative console,
click Servers > On Demand Routers > odr_name > Communications
> Port > PROXY_SIP_ADDRESS.
- Create a new UDP transport chain. Click Servers > On
Demand Routers > odr_name > SIP On Demand Router Settings >
SIP On Demand Router transports > New.
- Type a name for the new chain, such as ODR_SIP_PROXY_CHAIN.
- In the pull-down, select Proxy-UDP.
- Select Next and then Finish on the summary
page. Note: The PROXY_SIP_ADDRESS might not show in the
list of existing ports. In this case, select any of the ports to complete
the transport chain creaetion, then modify the UDP inbound channel
of the just created new chain afterwards. Select the new transport
chain, then select UDP inbound channel and change the port to PROXY_SIP_ADDRESS.
- Create a system property named clientUDPInterface on each
ODR and set it to the IP address of the cluster address. To create
the system property, select Servers > On Demand Routers > odr_name >
Java and Process Management > Process Definition > Java Virtual Machine
> Custom Properties > New.
- Save and synchronize the configuration.
- Restart the ODR.