Learn F5 Technologies, Get Answers & Share Community Solutions Join DevCentral

Filter by:
  • Solution
  • Technology
Answers

How to make sure BIG-IP is ready to take iControl commands to build an App Service

Building a java application to orchestrate F5 creation and configuration. Basic readout. We make the following iControl calls to the F5 (in this order): 1) bigIp.ManagementDevice().get_failover_state(devices) - loop untill the state returned is HA_STATE_ACTIVE 2) upload base (vlan,selfip,etc..) iApp template 3) configureTemplate - bigIp.ManagementApplicationService().create() - that's where it usually fails 4) save configuration 5) license 6) upload iapp template 2 7) configureTemplate - bigIp.ManagementApplicationService().create() - sometimes fails

During step 3, we usually get something like this: error_string : 01020005:3: The requested operation is not implemented yet.

I've set the code to retry if it encounters a failure. After a couple tries, the code will succeed and move on. But this is silly, I should be able to make the correct iControl calls to BIG-IP to validate that it is in a happy state and can accept my iControl iApp commands.

Anyone have any thoughts on how to create a robust request or group of requests to F5 to know that it's ready?

2
Rate this Question

Answers to this Question

placeholder+image
USER ACCEPTED ANSWER & F5 ACCEPTED ANSWER

James

You may be triggering the iApp's implementation before the control plane (mcp) is ready. In tmsh, I would watch "show sys mcp" until it is in a running state. BTW, why are you uploading the iApp before licensing (steps 2 and 3), and again afterwards (steps 6 and 7)?

Fred

1
placeholder+image
USER ACCEPTED ANSWER & F5 ACCEPTED ANSWER

Thanks Fred, We are implementing 3 different iapps, so we upload 1, run 1, upload2, run2, upload 3, run 3. We have it broken out this way because I have a few other scenarios we use and I'm mixing and matching iApps so each one is it's own function. That's a good point about mcpd. I'll add some code that checks the services that are running before I run my commands to see if that seems to be the issue.

0
placeholder+image
USER ACCEPTED ANSWER & F5 ACCEPTED ANSWER

OK, I understand. If your goals is to bring these apps up quickly, perhaps a different order would help: 1) license, 2) upload all 3 iapps, 3) pause for system readiness, 4) run all 3 iapps, 5) save config.

0
placeholder+image
USER ACCEPTED ANSWER & F5 ACCEPTED ANSWER

Yeah, that sounds like a plan. It's the "pause for system readiness" that I'm trying to get rid of. I'd rather query something to know the system is definitely ready and then go as opposed to pause, try, fail, pause, try, fail, pause, try work, but I definitely like the idea of reordering.

0