Hello community
I can solved the irule and i share my irule
when RULE_INIT {
set ::active_connections 0
set ::Jump 0
set ::Atalla01 "10.1.xx.xx"
set ::Atalla02 "10.1.xx.xx"
set ::Atalla03 "10.1.xx.xx"
set ::Pool_A "Atalla_xxxx_A"
set ::Pool_B "Atalla_xxxx_pool_B"
set ::Pool_C "Atalla_xxxx_pool_C"
set ::PortAtalla xxxx
}
when CLIENT_ACCEPTED {
log "JUMP : $::Jump"
if {([LB::status pool $::Pool_A member $::Atalla01 $::PortAtalla] eq "up") and ([LB::status pool $::Pool_B member $::Atalla02 $::PortAtalla] eq "up") and ([LB::status pool $::Pool_C member $::Atalla03 $::PortAtalla] eq "up")}{
log "ENTRO 0"
set ::Jump 0
se balancea hacia el primer nodo
}
elseif {([LB::status pool $::Pool_A member $::Atalla01 $::PortAtalla] eq "up") and ([LB::status pool $::Pool_B member $::Atalla02 $::PortAtalla] eq "down") and ([LB::status pool $::Pool_C member $::Atalla03 $::PortAtalla] eq "down")}{
log "ENTRO 0 S"
set ::Jump 0
se balancea hacia el tercer nodo
}
elseif {([LB::status pool $::Pool_A member $::Atalla01 $::PortAtalla] eq "down") and ([LB::status pool $::Pool_B member $::Atalla02 $::PortAtalla] eq "up") and ([LB::status pool $::Pool_C member $::Atalla03 $::PortAtalla] eq "down")}{
log "ENTRO 1"
set ::Jump 1
se balancea hacia el segundo nodo
}
elseif {([LB::status pool $::Pool_A member $::Atalla01 $::PortAtalla] eq "down") and ([LB::status pool $::Pool_B member $::Atalla02 $::PortAtalla] eq "down") and ([LB::status pool $::Pool_C member $::Atalla03 $::PortAtalla] eq "up")}{
log "ENTRO 2"
set ::Jump 2
se balancea hacia el tercer nodo
}
if {$::Jump ==0} {
pool Atalla_xxxx_pool_A
incr ::active_connections 1
if {$::active_connections %4==0} {
set ::Jump 1 }
}
else {
pool Atalla_xxxx_pool_B
incr ::active_connections 1
if {$::active_connections %4==0} {
set ::Jump 0 }
}
}