Forum Discussion

Igor_Pruchanski's avatar
Igor_Pruchanski
Icon for Nimbostratus rankNimbostratus
Oct 25, 2012

iControl search?

Hello,

 

I am writing a tool to search things across 50+ load balancers, but we have a very shaky relationship with our network team, so I don't really want to do anything that would piss them off.

 

Our LTM's are partitioned, so I can easily get only the VIPs belonging to our BU. On the GTM's everything is on one partition, so I would like to only get the things with a particular word in the name. Is that possible?

 

get_list() does not seem to do it. and get_object_status() does not like my search string. I've tried all kinds of different variariations of the search string, to no avail.

 

 

How can i make this work?

 

 

Error!

 

Exception caught in GlobalLB::urn:iControl:GlobalLB/WideIP::get_object_status()

 

Exception: Common::OperationFailed

 

primary_error_code : 16908342 (0x01020036)

 

secondary_error_code : 0

 

error_string : 01020036:3: The requested GTM wide IP address (*platform*) was not found.%

 

7 Replies

  • bump.

     

     

    There is 11,000+ VirtualServers that show up on our GTM. I need to select 120 at the most. Is there really no way to do that and I have to get the entire thing with get_list() and then parse it only for the things I need?
  • Hi Igor, currently there isn't a search built into the API. In fact, in the 11+ years the API has been around, this is the first time I've heard a request for that. It's a great idea, and one I think would be beneficial to the users, but it's not in there now. I'd suggest you put an enhancement request in with your support channel to work on getting it put in.

     

    With that said, making a get_list() call with 11k objects should still work. You'll likely want to split that list down when calling subsequent functions with that listing thought.

     

    -Joe

     

  • If you walk the SNMP tree you will notice the iControl calls match it. To me this means that iControl was built on or like the SNMP output. This is why there really isnt single selct items and why its not really OOP in general.

     

    That said, while get_list is always a full list, the attributes can be pulled with a partial list. We tend to pull in all the WIPs once or twice a day and then make status calls with a partial list.

     

     

    public static void GetWIPS(string server)

     

    {

     

    // get list of wips every 12 hours

     

    var conn = new Interfaces(server, Definition.Instance.Username, Definition.Instance.Password);

     

    var wips = conn.GlobalLBWideIP.get_list();

     

    Save(wips); // save to database

     

    }

     

    public static void GetStatus(string server, string pattern)

     

    {

     

    // get wip status on demand

     

    var wips = Load();

     

    wips = wips.Where(x => x.Contains(pattern)).ToArray();

     

    var conn = new Interfaces(server, Definition.Instance.Username, Definition.Instance.Password);

     

    var status = conn.GlobalLBWideIP.get_object_status(wips);

     

    }

     

     

  • Joe,

     

     

    It comes up from time to time in the forum --

     

     

    https://devcentral.f5.com/community/group/aft/2164990/asg/51

     

     

    Part of the problem is that RFE's are handled in very esoteric ways at F5, especially since half the company will tell you that iControl isn't officially supported. So getting iControl issues in front of the right audience is a major challenge from a customer standpoint. That being said, YOU have always been an invaluable resource in this forum and for that I am truly grateful! I think there have been many issues that would have been showstoppers without your help in the past.

     

     

    I think search/filter on the various get_list() methods would be fantastic!

     

  • Hi Matthew,

     

     

    iControl is absolutely supported. F5 Support won't write an iControl app for customers, but they should handle RFEs and breakfix issues like any other feature.

     

     

    If you have any issues with Support handling RFEs, I encourage you to contact your account team for help.

     

     

    Thanks, Aaron
  • This is from a while back, removing the names to protect the innocent:

     

     

     

    Matt,

     

     

    My name is with F5, and I'm contacting you in regards to case . I left you a voicemail.

     

     

    iControl is not supported by F5 Network Support, and is not covered as part of your support contract. If you have any issues with iControl, you should post them on the forums at http://devcentral.f5.com, as the developers of the iControl API do watch and assist with users having issues with the API.

     

     

    A brief mention of this is made in the Scope of Support document located at http://www.f5.com/pdf/customer-support/guidelines-and-policies-ds.pdf, under the iRules support section.

     

     

    I apologize that I can't be of more help, but all iControl support has to go through Devcentral. Thank you for your understanding.

     

     

    So yeah, it's hit or miss. And you usually do have to escalate stuff. Anyways, bottom line is devcentral is the best place to get help and the F5 support model around iControl is inconsistently understood internally at F5. I pretty much think all the support guys dread getting an iControl case and instinctively schluff it off.
  • Thanks for that. Can you email me the complete info (aaron at f5 dot com) and I'll take a look at talk with the support person as necessary?

     

     

    Thanks, Aaron