Run Book Jobs tab
At Library > Run Books, you can configure and manage Run Books. With Run Books, you can create a chain of Jobs that makes it unnecessary to schedule these Jobs individually. Use the Jobs tab to manage the Jobs in the Run Book.
Job Scheduling for Modules and Projects
A Module is a container for one or more Tasks that you can execute on Agents. A Module usually contains a sequence of Tasks that are related to each other (for instance, a Task Install Windows Installer Package and a Task Reboot).
A Project is a combination of Modules. If you frequently use the same combination of Modules, it can be more convenient to combine these Modules in a Project.
When you schedule a Job at a specific time, you assign one or more Agents to execute one or more Modules and/or Projects. The Agents will execute the Tasks in these Modules and/or Projects consecutively.
In effect, you are saying: "the following Job should be performed by the following Agents at the following moment." This way of Job scheduling is sufficient to perform relatively simple maintenance tasks, such as installing an application or a Windows security update.
Job Scheduling for Run Books
A Run Book consists of a chain of Jobs that are executed in turn, possibly on different Agents.
Run Books make it possible to schedule Jobs as a chain of Jobs, where each Job in a Run Book can be executed by a different Agent. It becomes unnecessary to schedule these Jobs individually. In effect, you are saying: "The first Job should be performed by this Agent, the next Job by that Team, the next Job by these Agents, then the next Job on this Agent, etc."
- To create a duplicate of a Run Book Job, select it and click Duplicate. Creating a duplicate of a Job is useful when certain Jobs should perform the same action (for example, reboot a server). This not only saves configuration time, but also ensures that all duplicated Run Book Jobs contain the same content. By changing the values and settings of a duplicated Run Book Job, you can customize it to your needs (for example to specify a different server for each reboot action).
- To create sets of Jobs, right-click the Jobs tab and click Add Separator. Separators are a visual aid to enhance readability in Run Books that contain many Jobs; they do not affect the execution order of Jobs, but make it possible to configure visible sections of Jobs that, for example, are related to each other. In addition, it is possible to add a descriptive text to a set of Jobs.
- The name of a separator can contain a maximum of 255 characters.
- The description of a separator can contain a maximum of 4000 characters. The use of hyperlinks is supported.
- To change the order of execution of Jobs in the Run Book, select a Job and use the arrow buttons. Likewise, use the arrow buttons to move any separators up or down the list of Modules.
- To set conditions on a Job, select the Job and click Conditions. Job conditions determine whether a Job in a Run Book should be executed, skipped or failed.
When configuring a Run Book Job:
- Use the What section on the Properties tab of the Add Run Book Job window to specify which Modules or Project should be executed. A Run Book Job can contain multiple Modules or one Project.
- Use the Who section to specify who should execute the Job.
- When selecting Agents that should perform the Job, you can filter on Agents that are member of a Team or on Agents that executed a specific Project or Module.
- You can filter the results further by searching on all Agents, only licensed and online Agents, offline Agents, or no Agents and include Teams in the search results.
- As an alternative to selecting Agents manually, you can add multiple Agents at once by copying them from a list of Agents separated by semi-colons (";"), comma's (","), or tabs and pasting them directly into the Who section.
- Select Ask during Run Book scheduling to leave the choice of which Team(s) or Agent(s) should perform the Job to the moment when the Run Book is scheduled. Any Agent(s) or Team(s) that you specify at that moment will then be used for all Run Book Jobs for which no Agents or Teams were specified (i.e. if your Run Book contains two Run Book Jobs that use this option, you can only specify Agent(s) or Team(s) once). This option is useful, for example if a Run Book Job contains a Task to install a specific application or update, but it is not yet known which Agent should install the application or update.
- Select Run on one of the specified Agents to execute the Run Book Job on a random Agent. This is useful if it does not matter which Agent executes the Job, as long as it is executed.
For example, for some Tasks, such as Exchange Tasks and Active Directory Tasks, it does not matter by which Agents they are executed.
When selecting the option, Ivanti Automation will randomly select an Agent in the following order:
- Any online Agent that is not busy executing another Job
- Any online Agent
- Any offline Agent
Combining this option with Schedule offline Agents for next boot or Use Wake-on-LAN when job starts only make sense if you already know that all specified Agents are offline.
- Select Use Run Book Parameter to parameterize the Who field with the parameter $[RunBookWho] (availability of this option depends on the global setting RunBookWho). When selected, the parameter $[RunBookWho] will specify which Team(s) or Agent(s) should perform the Job. It may, for example, contain a number of Agents or users, separated by a semi-colon. If also Enhanced security is enabled, you are only allowed to schedule the Run Book with the parameter $[RunBookWho] when using a login with Ivanti Automation Authentication. This functionality is particularly useful when using the Run Book in a Ivanti Identity Director service: it allows for a scenario in which the Agents that should execute the Run Book Job can be selected from a list during the delivery of the Ivanti Identity Director service.
- When you have created or selected a Run Book parameter, also specify how it should be used:
- Select to select Agents on computer name to execute the Run Book Job by Agents running on the computers that match the provided computer name(s). Alternatively, you can also provide Team names. Separate multiple entries with a semi-colon (;).
- Select to select Agents on active Console user to execute the Run Book Job by online Agents running on computers on which Console users are logged on whose names match the provided user names. Because Console users can be logged on at more than one machine, the Run Book may be executed by multiple Agents. The input format of the parameter is a user name (for example demo\jsmith or root).
In Ivanti Identity Director, this allows for scenarios in which a Console user can request a service that provides him with something on the computer on which he is currently logged on.
- Select to select Agents on last Console user to execute the Run Book Job by Agents running on computers on which the last Console user logged on. Because Console users can be logged on at more than one machine, the Run Book may be executed by multiple Agents.
- Select to select most recent Agent on last Console user to execute the Run Book Job by the Agent running on the most recent computer on which the last Console user logged on.
- Select Create multiple Jobs and divide Agents equally amongst them to automatically create a specific number of duplicates of a Run Book Job with the relevant Agents divided amongst those duplicates. This option is only available when configuring a new Run Book Job; not when editing an existing Run Book Job.
For example, instead of creating one Run Book Job that has to be performed on 50 Agents simultaneously, you can split the Run Book Job into 10 identical Run Book Job s that are each performed on 5 Agents. This is ideal for reboot schedules of server farms, because Run Book Jobs are executed in turn.
Selected Teams are automatically resolved into Agents.
- Select Schedule offline Agents for next boot to postpone the execution of the Job for any offline Agents. During Job scheduling, Ivanti Automation will automatically determine whether Agents are online or offline and create Immediately Jobs for any online Agents and After next boot Jobs for any offline Agents. When one of the offline Agents gets online, the After next boot Job will be executed and remains active until all specified Agents have completed the Job. If you do not select this option, the Job will fail on all offline Agents, depending on the Launch timeout settings (at Setup > Global Settings).
- Select or when Agent is resumed after hibernate, sleep or standby when scheduling Jobs on Agents running on laptops: When a laptop goes into hibernation, sleep or standby, the Agent running on the laptop goes offline. However, when the laptop is resumed and the Agent comes back online again, any Jobs that are scheduled for next boot on offline Agents will not be executed, because the laptop has not booted. As many users rarely turn off their laptop, but put it in hibernation, sleep or standby instead, this can cause a backlog in Jobs that need to be executed on these Agents. By selecting the option or when Agent is resumed after hibernate, sleep or standby, Jobs scheduled on these Agents will also be executed.
- Use Wake-On-LAN when Job starts: select this option to boot offline Agents automatically when the Job starts, by broadcasting a "wake-up" packet to the Agent. This option forces the Agent to use UTC time. By default, Ivanti Automation uses a global broadcast address, 255.255.255.255 and UDP port 3163 for Wake-on-LAN. If necessary, you can set up different Wake-on-LAN settings at Setup > Global Settings. This option forces the Agent to use UTC time without any further restrictions. This option cannot be used in combination with option Schedule offline Agents for next boot.
- The Error control options allow you to determine what should happen to teh Run Book if the Run Book job fails. To fail the entire Run Book, select Stop Run Book on error. To proceed to the next Job in the Run Book, select Continue Run Book on error.
- Use the Maximum Job duration field to configure a timeout that specifies the maximum Job duration. This can be useful to prevent situations in which Run Books cannot be completed because an Agent that executes a Run Book Job goes offline during execution. Because the Run Book Job remains active, a succeeding Job in the Run Book will not start. If a timeout has been specified, the Run Book Job will be canceled when the timeout expires. A succeeding Run Book Job can than be executed.
- Maximum Job duration is disabled by default. When enabled, a default value of 10 minutes will be shown.
- If the Run Book Job is not completed within the specified timeout, it will change the status of any active Agent to the status Timed out. Subsequent Run Book Jobs will continue as normal. The end result of the Run Book will be Completed with errors.
- Use the Resulting Tasks and Resulting Agents tabs to view which Tasks will be executed by which Agents. If you made changes to any of them after the Job was scheduled (for example, a Recurring Job), you can update these changes:
- Click Reload Resulting Tasks on the Resulting Tasks tab to update changes to Tasks.
- Click Reload Resulting Agents on the Resulting Agents tab to update changes to Agents.
The following applies to the option Use Run Book parameter:
- You can use the option in combination with the option Run on one of specified Agents.
- The option does not allow for the use of parameter values from a CSV file. See Using parameter values from a CSV file.
- The options based on Console users do not apply to Agents running on terminal servers.
- If the option to select Agents on computer name is selected and a combination of Agents and Teams is provided, Ivanti Automation will schedule the Job on Agents only if the first name that is provided matches an Agent; it will schedule the Job on Teams only if the first name that is provided matches a Team. If an Agent is a member of multiple Teams, the Job will be scheduled once on this Agent.
- In combination with Enhanced security on the Run Book Who and scheduled to a (Team with a) list of Agents, the Run Book Job will only be executed on Agents the user has access (login with Ivanti Automation Authentication). The other Agents will be skipped. If no Agents are allowed to execute the Job, the Job will be canceled and an error message will be shown. Please note that the permissions of the user are being checked during scheduling and not at execution of the Run Book. So if, for instance, the Run Book was already scheduled and over time the access rights of the user have been revoked, the first Job will be executed and the consecutive Jobs will be aborted.
- In Ivanti Identity Director, using a Run Book with Use Run Book parameter set to Select Agents on computer name, may lead to unexpected results in the following situation:
- If this Run Book is used in a Ivanti Identity Director service,
- And the Run Book parameter is linked to a service attribute,
- And the service attribute is based on a People Identifier,
- And the People Identifier contains multiple values,
- Then the first People Identifier value that was added, will be used as the Run Book parameter value. This does not necessarily have to be the value that appears first in the list. For example, if a user is identified with a Windows user account and the person identifier has the values 'demo\jsmith' and 'resdemo\jsmith'. This is a known limitation.