Forum Discussion

francisco_1_162's avatar
francisco_1_162
Icon for Nimbostratus rankNimbostratus
May 25, 2011

bigpip commands for GTM

what are the command to view pools & servers and wide ip status using bigip on GTM?

 

 

Please advise.

 

 

Thanks
  • You can use tmsh to do this:

     

     

    tmsh show /gtm pool

     

    tmsh show /gtm server

     

    tmsh show /gtm wideip

     

     

    You can check the tmsh reference guide on AskF5 for more info:

     

     

    http://support.f5.com/kb/en-us/products/big-ip_ltm/manuals/product/tmsh_reference_guide_10_2_0.html

     

     

    Aaron
  • There is a Wiki that has started to list the command translations from bigpipe to tmsh.

     

     

    http://devcentral.f5.com/wiki/default.aspx/tmsh/BigpipeMappings.html

     

  • tmsh list gtm still works. But the original question was how to get the status of GTM objects, so I used 'show'.

     

     

    Aaron
  • Hi Aaron,

     

    A no. of times I setup a test environment on LTM with a no. of pool members so while testing the applications I know the connection originating IP's as well as the servers IP's. I want to see that which client IP is getting served by which pool member, is there a command which display this?????/

     

     

    Regards
  • You can view the connection table to get this info. See tmsh help sys conn or b conn help for details.

    Or on a low volume virtual server, you could log the client, virtual server, serverside source, and server IP addresses using aniRule:

    
    when CLIENT_ACCEPTED {
         Get time for start of TCP connection in milleseconds
        set tcp_start_time [clock clicks -milliseconds]
         Log the start of a new TCP connection
        log "New TCP connection from [IP::client_addr]:[TCP::client_port] to [virtual name],\
            [IP::local_addr]:[TCP::local_port], [whereis [IP::client_addr]]"
    }
    when HTTP_REQUEST {
         Get time for start of HTTP request
        set http_request_time [clock clicks -milliseconds]
         Log the start of a new HTTP request
        set LogString "Client [IP::client_addr]:[TCP::client_port] -> [HTTP::host][HTTP::uri]"
        log local0. "$LogString (request)"
    }
    when LB_SELECTED {
        log local0. "Client [IP::client_addr]:[TCP::client_port]: Selected [LB::server]"
    }
    when LB_FAILED {
        log local0. "Client [IP::client_addr]:[TCP::client_port]: Failed to [LB::server]"
    }
    when SERVER_CONNECTED {
        log local0. "Client [IP::client_addr]:[TCP::client_port]: Connected to\
            [IP::server_addr]:[TCP::server_port]"
    }
    when HTTP_RESPONSE {
         Received the response headers from the server.  Log the pool name, IP and port, status and time delta
        log local0. "$LogString (response) - pool info: [LB::server] - status: [HTTP::status]\
            (request/response delta: [expr {[clock clicks -milliseconds] - $http_request_time}] ms)"
    }
    when CLIENT_CLOSED {
         Log the end time of the TCP connection
        log "Closed TCP connection from [IP::client_addr]:[TCP::client_port] to [IP::local_addr]:[TCP::local_port]\
            (open for: [expr {[clock clicks -milliseconds] - $tcp_start_time}] ms)"
    }

    Aaron
  • Many Thanks Aaron, so associating this iRule to any Virtual server will give me the details of which user IP is getting served by which Pool member ryt... ?