Active IQ Unified Manager Discussions

Schedule a workflow from a workflow?

waynesilvia
7,358 Views

I would like to be able to have one workflow "submit" another workflow to run later in the day.

So for example I run workflow 1 at 2:00PM and the last command is to submit a workflow 2 to run at 10:00PM the same day.

Is this possible? 

10 REPLIES 10

adaikkap
7,261 Views

Hi,

     Could you help me understand, why you want to do this and whats the usecase you are trying to accomplish by this ?

If you could explain your need, we can help you better.

I think this can  be done. In the meantime I will get back to on how this can be done.

Regards

adai

waynesilvia
7,261 Views

using WFA 2.2.0.2.4RC1

Main issue is that I am doing a workflow to provision volume/qtree and one of the last steps I would like to do is update DFM/Oncommand with qtree comments.     I am having an issue with being able to refresh oncommand/dfm 5.2 cluster mode, it basically renders oncommand down. and I have to restart it.  The examples I found that people supplied to refresh and wait work fine with 5.2 7 mode....but when I tried to covert it to use 5.2 cluster mode it stops oncommand from running.  So my next thought was that I could just wait for oncommand to update itself and have my first workflow (the one that creates the volume/qtree) submit another workflow that updates the qtree comments in oncommand....which does work by the way...its the refresh and wait part that breaks.

So with out being able to get the DFM refresh and wait to work, I thought I could find another way to update the comments at a later date/time by having the Workflow schedule it later.  Another thought I had was have the first workflow create a CSV that i could read in the comment fields and update them later as well.   Believe I am all for getting the DFM refresh and wait working instead of this "workaround" I am trying to do.

So the bases of what started with is below for the DFM part of this.

below does not seem to work properly

https://communities.netapp.com/docs/DOC-29174

Below works after a little tweaking

https://communities.netapp.com/docs/DOC-29349



sinhaa
7,260 Views

If refresh and Wait for Refresh on 5.2 Cmode is your actual requirement, attaching the 2 commands that you can use directly in your workflow as the last commands. Import them and  Read the Command description to know more about it. They can be imported on WFA2.0.1 and above.

If this post resolved your issue, help others by selecting ACCEPT AS SOLUTION or adding a KUDO.

waynesilvia
7,260 Views

Thanks.  This version does appear to work, however I do run into what appears to be a permissions issue..

1) refresh appears to work just fine.

      I logged into the DFM server and saw that the timestamps were getting updated...blank then eventually time stamp shows...

Just after command                                                                                 after a little bit it updates time stamp

fsTimestamp                        fsTimestamp                        2014-05-29 10:17:28.000000

2) wait...this produces an authentication error and I am not sure what it is exactly...

           Is it the rights to run dfm detail command on the oncommand server?

    

     When I login to the dfm server in order for me to run the dfm detail command I need to prefix it with sudo and then put in MY password...this is different than the credentials defined under Execution for the oncommand server.

Question: what user does it attempt to run the dfm detail command?  As it looks like the credentials are are successful, then it fails.  Do I need to make sure the credentials defined under "execution" has shell access to the oncommand server?  any additional information would be appreciated...Thanks again for replying.

output below...

Execution Failed

"User cannot be authenticated"

Info on command...

11:35:37.290 INFO  [Wait for OCUM(DFM) 5_2 CMode Monitor Refresh on a Cluster] Executing command: ./Wait_for_OCUM_DFM__5_2_CMode_Monitor_Refresh_on_a_Cluster6572347826740431099.ps1 -ClusterName 'apollo' -DFMServerName 'oncmdcl-prod-02.uit.tufts.edu'

11:35:37.399 INFO  [Wait for OCUM(DFM) 5_2 CMode Monitor Refresh on a Cluster] Waiting for monitor refresh for cluster apollo

11:35:37.508 INFO  [Wait for OCUM(DFM) 5_2 CMode Monitor Refresh on a Cluster] Credentials successfully provided for 'oncmdcl-prod-02.uit.tufts.edu'

11:35:40.660 ERROR  [Wait for OCUM(DFM) 5_2 CMode Monitor Refresh on a Cluster] User cannot be authenticated.

11:35:40.816 ERROR  [Wait for OCUM(DFM) 5_2 CMode Monitor Refresh on a Cluster] Wait Command failed for Workflow 'Refresh OnCMD_DFM_CMODE' with error : User cannot be authenticated.

11:35:40.847 INFO  [Wait for OCUM(DFM) 5_2 CMode Monitor Refresh on a Cluster] ***** Workflow Execution Failed *****

sinhaa
7,260 Views

Can you please modify the command code a little. I had my ssh server running on port 202 and I hard-coded it into the command and exported it without removing it.

$Details = Invoke-NaSsh -Name $DFMServerName -Command $("dfm detail " + $ClusterName) -Credential $credentials -Port 202

The correct code.

$Details = Invoke-NaSsh -Name $DFMServerName -Command $("dfm detail " + $ClusterName) -Credential $credentials

If this post resolved your issue, help others by selecting ACCEPT AS SOLUTION or adding a KUDO.

waynesilvia
7,260 Views

I already changed it to begin with....I saw the port difference and removed -port...so its not a port use problem.

sinhaa
7,260 Views

Are you able to connect to the OCUM(DFM) Cmode server from your WFA server using any ssh client like Putty?

If this post resolved your issue, help others by selecting ACCEPT AS SOLUTION or adding a KUDO.

waynesilvia
7,260 Views

I stated what I was able to do in my previous reply on Jun 2, 2014 8:51 AM...

Yes I can ssh to it,  I login to the DFM server using my credentials....I can run the dfm detail command but need to sudu...my assumption wfa is not using an account that has permissions to run the command via ssh and or I need to be able to run dfm without the need to provide sudu.  

previous reply on Jun 2, 2014 8:51 AM...for detail.


sinhaa
6,220 Views

In WFA, what credentials are you providing? Are you using the Credentials you are using to Login to DFM using SSH or the Credentials you are using to run dfm commands i.e. the sudo credentials?

Are you able to directly login to DFM using those sudo credentials by SSH? If yes, try saving those sudo credentials in WFA credentials and run the command.

If this post resolved your issue, help others by selecting ACCEPT AS SOLUTION or adding a KUDO.

ktim
7,260 Views

I agree with sinhaa that the working refresh commands are probably the best option here.

My MetaWorkflow commands almost do what you want, but don't have the scheduling element written yet (it's fairly trivial to add).

Another option would be to have the workflow wait for a while. I recently wrote the attached "Wait for hours" command which might be useful...

-Tim

Public