My dear colleague Richard Egenäs came up with a brilliant idéa regarding loadbalancing XML brokers using the content switching feature on Netscaler “Read This”

So what do you need to accomplich this task?
In this scenario I suppose that you have already configured all XML broker “cnames entries” on your DNS servers:
Exampel:
XML01.DOMAINNAME.COM Pointing to the Content Switching vServer handeling this traffic

So Let’s make it simple and start with:

1. Expand the Traffic management node – Load Balancing – Servers
Create all servers that are acting as XML brokers (from all farms) by adding a new server and entering name and IP of it.

2. Move over to the the Traffic management node – Load Balancing – Service Group Node and create New Service groups (1 for each farm) and add the XML brokers you created in the previous step accordingly.

3. Now it is time to move to (Traffic management node – Load Balancing – Virtual Servers node) and create some Load Balancing Virtual Servers (1 for each farm) and bind the respective Service groups to them (Of course you don’t need to specify any IP för the LBvServers, just leave it blanc: 0.0.0.0).

4. Now the real fun begins. We are going to move over to (Traffic management – Content Switching – Actions node). And we will create new actions (1 for each farm) and bind it to respective Target LB Virtual Servers that we created in the previous step.

5. In this step it’s time to create some content switching policies to be bound to respective action and make sure that the expression of the policies look like this:
HTTP.REQ.HOSTNAME.STARTSWITH(“NetBios Name”)

Example:
HTTP.REQ.HOSTNAME.STARTSWITH(“XML01”)
HTTP.REQ.HOSTNAME.STARTSWITH(“XML02”)
HTTP.REQ.HOSTNAME.STARTSWITH(“XML03”)
instead of
HTTP.REQ.HOSTNAME.STARTSWITH(“XML01.DOMAINNAME.COM”)
HTTP.REQ.HOSTNAME.STARTSWITH(“XML02.DOMAINNAME.COM”)
HTTP.REQ.HOSTNAME.STARTSWITH(“XML03.DOMAINNAME.COM”)

We use the NetBios name for acceleration of the application enumeration process on Storefront servers.

6. Let’s move up a little bit to (Traffic management node – Content Switching – Virtual Servers) and now we’re going to create a Content switching virtual server (Of course you’ll need to allocate an IP for this matter)and bind all content switching policies we created in the step above.

7. If you are using Extended ACLs to control the traffic, you need to allow trafic from and to (port) of the Content Switching vServer you just created.

8. Now as a final step we are going to logon to our Storefront servers and update the delevery services (XML brokers FQDNs) and the host file by using the NetBios name and point it to the IP of the Content Switching vServer we created.

That’s it 😉