Forum Discussion

lior's avatar
lior
Icon for Nimbostratus rankNimbostratus
Dec 13, 2021

Assign specific uri to a server\node in pool

Hi,

 

I'm new at Irules and I need help

I'm trying to create an I rule that searches for a server name in the URI ("server1/2/3")

and match it to the IP address of the server in the pool I created

but that's doesn't work

here an example

 

when HTTP_REQUEST {

set uri [string tolower [HTTP::uri]] 

 if { $uri contains "server1" } {

node 10.10.10.10

 }

 elseif { $uri contains "server2" } {

node 10.10.10.11

 }  

 else {

  pool test1

 }

}

 

 

  • You can create pool for server1 and server2 and use all services under service port while adding node. Reference that pool in the iRule and it should work.

    when HTTP_REQUEST {
    set uri [string tolower [HTTP::uri]] 
    if { $uri contains "server1" } {
    pool pool1
    } elseif { $uri contains "server2" } {
    pool pool2
    } else {
    pool test1
     }
    }
  • lior's avatar
    lior
    Icon for Nimbostratus rankNimbostratus

    Thank you Enes,

    but the port number is not static

     

  • You can create pool for server1 and server2 and use all services under service port while adding node. Reference that pool in the iRule and it should work.

    when HTTP_REQUEST {
    set uri [string tolower [HTTP::uri]] 
    if { $uri contains "server1" } {
    pool pool1
    } elseif { $uri contains "server2" } {
    pool pool2
    } else {
    pool test1
     }
    }