Forum Discussion
F5 iControl Q's - Part 1: F5 iControl web based proxy?
I'm relatively new to icontrol and coding. I have basic scripting knowledge, I can write some decent iRules and batch scripts, but beyond that I've just been dabbling with perl, powershell, php, etc. Why the history lesson? Because I'm virtual blank slate of scripting languages and not sure which one to dive deep into and master. Here's what I'm trying to accomplish:
1) F5 status dashboards for application monitoring.
2) F5 enable/disable interactive web page for the admins and NOC.
3) F5 application automation/configuration workflow. - This is my f5 network nirvana..
Option number three is pie in the sky at this point, so I'm just focusing on part 1. I've dabbled in PHP, powershell, java, and perl and get various errors not getting much past either initialization errors or iControl authorization call errors. Note, we do have Enterprise Manager as well, so I'm not sure how that plays into calling iControl to a dozen EM managed LTM's or if we need to use EM as an iControl proxy itself. Where do you guys recommend I start? I appreciate any input you guys have besides RTM. :)
5 Replies
- What_Lies_Bene1
Cirrostratus
Interesting question. Here's my two pennies;
You need to think about this in terms of front end and back end. PHP is a good choice for the front end presentation. In terms of back end I'd suggest Python; it seems to be one of the languages of choice in the wider networking field where SDN, NFV and 'programability' seem to be concerned so it'll benefit you in other ways I'd say. It also seems to be a part of the Sythesis fabric 'concept'. Groovy is too but I'm really not sure if it's a better candidate than Python, should be just as easy to use though (mimics Python in most ways).
Of course, you now have the REST functionality (as well as straight iControl) too which might help you with 2) and 3) above. I read it's not so great for real time so for 1) it sounds like straight iControl would be better but of course I've no way of making an informed comparison (yet).
One thing that seems to be missed/overlooked/hidden from most opinion and comments on this subject is a database. You'll need one I would have thought and I guess MySQL is the de-facto standard for that (LAMP and all that). A bit of general reading on relational databases would come in handy I'm sure.
- NSK_01_137642
Nimbostratus
You do not need to use EM as an iControl proxy to consume the APIs. Both the SOAP and REST interfaces are available directly from the BIG IP systems themselves.
Enabling and Disabling objects is very straight forward.Just read thought the iControl Wikis on PHP.
Alternately you can use tools that already provide an intuitive UI and granular access like appviewx.com which can save you a lot of time.
- Christian_15126
Nimbostratus
Thx guys, here's where I'm at:
1) F5 status dashboards for application monitoring. - PHP codeshare scripts work now, just need to make them look more like the f5 admin interface for usability.
2) F5 enable/disable interactive web page for the admins and NOC. - Same as 1)
3) F5 application automation/configuration workflow. - This is my f5 network nirvana.. - ADC looks amazing and probably also costs a fortune, so not sure if that tool would be feasible. In the meantime, I'm going to continue researching free code alternatives and/or ways to tie into other third party tools. Thanks a lot for your guys responses! I may post a part 2 or 3 if I get stuck or come up with anything noteworthy, if not I just have a ton of research and coding to do! Thx,
- What_Lies_Bene1
Cirrostratus
Good luck, would be great to know how you get on.
- mhite_60883
Cirrocumulus
RE: 3 - If you use Ansible, there are bigip modules available for automating creation and maintenance of pools, pool members, and health monitors. There are other modules on the way. (I am the author of some of them)
Help guide the future of your DevCentral Community!
What tools do you use to collaborate? (1min - anonymous)Recent Discussions
Related Content
* Getting Started on DevCentral
* Community Guidelines
* Community Terms of Use / EULA
* Community Ranking Explained
* Community Resources
* Contact the DevCentral Team
* Update MFA on account.f5.com