cancel
Showing results for 
Search instead for 
Did you mean: 

Multiport Pool Dynamic Port Selection

SOLVED
ecornwell
Contributor

Multiport Pool Dynamic Port Selection

Hello,

We have an interesting setup we're thinking about.  Today we have a firewall that does a dest NAT based on port.  We send everything to a single server but we want to setup some redundancy and load balancing.  Our thought was that we could use the SteelApp to do that but what we would like to do is something with traffic script to be able to pick a destination port based on source IP.  (We're making an app act like a multi-tenant app when receiving data.)

I know I could setup a pool per destination port but is there anyway we could do it through trafficscript?   I thought about using a hash table with source address and destination port.  I haven't seen any way that I could specify the dest port during the connection.

Would we be limited to setting up the pool per dest port then use trafficscript to select the pool?   My only concern when doing this is that we'd like to setup an HA pair of nodes where we just have a single today.  That would be a lot of pools to configure.  ( Incoming dest ports x 2)

Thank you!

1 ACCEPTED SOLUTION

Accepted Solutions
aclarke
Frequent Contributor

Re: Multiport Pool Dynamic Port Selection

ecornwall,

     pool.select() and pool.use() allows for you to specify the host and port to use (ignoring what the STM would pick left to it's own devices), so you can arbitrarily construct the configuration you need. Bear in mind if you are constructing this programatically, you are bypassing the internal health checking. You can work around this in one of two ways:

  1. if the nodes are not pre-defined, you can check the node health before you use it with TrafficScript; or
  2. you can have actual nodes that match what you are going to choose and check that the node is healthy using pool.activenodes() (which was introduced in STM 9.6 form memory - don't quote me on that)

There is an example of 1. in Using Stingray Traffic Manager as a Forward Proxy

Hope this helps..

Cheers.

Aidan.

--
Aidan Clarke
Pulse Secure vADC Product Manager

View solution in original post

2 REPLIES 2
aclarke
Frequent Contributor

Re: Multiport Pool Dynamic Port Selection

ecornwall,

     pool.select() and pool.use() allows for you to specify the host and port to use (ignoring what the STM would pick left to it's own devices), so you can arbitrarily construct the configuration you need. Bear in mind if you are constructing this programatically, you are bypassing the internal health checking. You can work around this in one of two ways:

  1. if the nodes are not pre-defined, you can check the node health before you use it with TrafficScript; or
  2. you can have actual nodes that match what you are going to choose and check that the node is healthy using pool.activenodes() (which was introduced in STM 9.6 form memory - don't quote me on that)

There is an example of 1. in Using Stingray Traffic Manager as a Forward Proxy

Hope this helps..

Cheers.

Aidan.

--
Aidan Clarke
Pulse Secure vADC Product Manager
ecornwell
Contributor

Re: Multiport Pool Dynamic Port Selection

I've said it before and I'll say it again, you are amazing!!!     That's exactly what I was looking for!   Now to set it up and test it!

Thanks!!!!