Forum Discussion

myLogin_24886's avatar
myLogin_24886
Icon for Nimbostratus rankNimbostratus
Aug 10, 2007

iControl Traning ....

Does any vendor out their who provide the training for iControl API for Big-IP F5?
  • We don't provide iControl training "per-say". We do provide an overview in our BIG-IP training about the features in iControl and the types of things you can do with it. There are several factors limiting why we don't have a dedicated training session focusing solely on iControl.

     

     

    1. iControl is language independent to provide practical demos we need to focus on a language and our user base is widely distributed across .Net, Java, Perl, PHP, Python, Ruby, ...

     

    2. Understanding of iControl is ultimately dependent on understanding of our products.

     

    3. Typically the audience in our product training courses are not the same folks who are writing the iControl apps in their organization.

     

     

    With that said, I'm all for building a training program centered around iControl (even if I am a little biased). I'd be very interested in hearing what you would like to get out of that type of training session.

     

     

    In the near term, I'm focused on building more online tutorials on DevCentral. Any ideas on that front would be appreciated as well. I'm at your beckon call - give me a topic and I'll encode a video tutorial on it (as long as I can figure out how to do it).

     

     

    -Joe
  • Joe, Thanks for your quick response. I think it would help if you add some pictures like how the communication works between client code and servers code. By reading document what i am confuse that what is iControl ? is it a client code for the webservice or it is webservice it self? if it is a webservice then what middleware we need to install.
  • Don_MacVittie_1's avatar
    Don_MacVittie_1
    Historic F5 Account
    Good question, and excellent suggestion. We should have a diagram.. I'll chat with Joe about that one.

     

     

    To answer your question, iControl is the collection of web services, but if you download the API and you build it, you are actually building the client piece. That's why Apache Axis is required for the API (unless you do a lot more work, like we did with the Blackberry project because Axis isn't supported on most Blackberries) - it is the communication tool, the "middleware" so-to-speak. When you make a call, Axis encodes it to make it a right-pretty Web Services call, then Axis takes the response and decodes it before returning to you.

     

     

    On the Blackberry platform, we're using kSOAP 2 (http://ksoap2.sourceforge.net/), a light SOAP encoding mechanism for communications.

     

     

    Does that clear it up?

     

    Don.
  • Thanks Don.

     

     

    I think i am getting there. When i download - "iControl SDK v9.4.0". it actually contains the webservice code, which actually commminicate with f5 device to do the work. Does n't that webservice need to deploy on Apache Axis in order for client to access? if yes then where is the mapping file - web.xml.
  • I think you still have it a bit backwards. Webservices have two components: a client and a server.

     

     

    The server component of iControl is software that is part of the BIG-IP system. The server component is F5's part of the equation and nothing you should be concerned with. We have a web service endpoint listening on our devices and you just create the client code to communicate with it.

     

     

    The client portion is typically a proxy library that is created from our supplied WSDL files (basically describe all the web services/methods/parameters). Proxies can be created by various toolkits out there (Axis/.Net/etc). For Axis you will run WSDL2Java on the WSDL files and it will create a bunch of .java wrapper files that make a java binding ontop of our methods. This is the only piece you need to be concerned with.

     

     

    With that being said, if you are using .Net or Java, I'd suggest you take a look at the iControl assembly I've created in the Labs section of DevCentral. I've basically wrapped all the proxy code into a distribution making it very easy to program against.

     

     

    If I didn't make it clear, please let me know where I need to explain further.

     

     

    -Joe
  • I think I missed a comment to your post on the last one.

     

     

    In the SDK, there is ONLY the WSDL files. There is no iControl server code whatsoever. The only code is the sample code that makes use of the client bindings created by the various toolkits.

     

     

    -Joe
  • Joe, Thanks for explanation. That was intially i thought that SDK is client proxy. Now i understand so i can talk to my network guy. I have downloaded the wrapper class located - http://devcentral.f5.com/Default.aspx?tabid=125, and I am able to build it.