Scripts and tasks

LANDesk Management Suite includes a powerful scheduled task system. Both the core server and managed devices have services/agents that support scheduled tasks. Management Suite consoles and Web consoles can add tasks to the scheduler.

A task consists of a distribution package, delivery method, targeted devices, and a scheduled time. Non-distribution tasks consist of a script, targeted devices, and scheduled time.

Here are some of the tasks you can schedule:

IMPORTANT: Console users who will be working with scripts must be in the core server's local LANDesk Script Writers group. This group gives console users write access to the ManagementSuite\Scripts folder.

Read this chapter to learn about:

 

Managing scripts

LANDesk Management Suite uses scripts to execute custom tasks on devices. You can create scripts from the Manage scripts window (Tools > Distribution > Manage scripts) for these tasks:

The Manage scripts window divides scripts into three categories:

You can create groups under the My scripts item to further categorize your scripts. To create a new script, right-click the My scripts item or a group you've created and click the script type you want to create.

Once you've created a script, you can click Schedule on the script's shortcut menu. This launches the Scheduled tasks window (Tools > Distribution > Scheduled tasks) where you can specify devices the task should run on and when the task should run. See the next section for more information on scheduling tasks.

Due to specific capabilities supported by the Windows console, scripts created in the Windows console shouldn't be edited in the Web console.

Scheduling tasks

The Scheduled tasks window shows scheduled task status and whether tasks completed successfully or not. The scheduler service has two ways of communicating with devices:

The console includes scripts that you can schedule to perform routine maintenance tasks such as running inventory scans on selected devices. You can schedule these scripts from Tools > Distribution > Manage scripts > All scripts.

Using the Scheduled tasks window

Use the Scheduled tasks window to configure and schedule scripts you've created. Schedule items for single delivery, or schedule a recurring task, such as a script task to regularly search for unmanaged devices.

The Scheduled tasks window is divided into two halves. The left half shows task tree and tasks, and the right half shows information specific to what you've selected in the tree.

Left pane

The left pane shows these task groups:

You can drag scripts onto the Scheduled tasks window's left pane. Once a script is in the left pane, you can configure targets for it by dragging devices, queries, or groups to the right pane.

When you click My tasks, Common tasks, or All tasks, the right pane shows this information:

When you click a scheduled task, the right pane shows this summary information:

When you click a task status category under a task, the right pane shows this information:

Before you can schedule tasks for a device, it must have the standard LANDesk agent and be in the inventory database.

To schedule a task
  1. In the Scheduled tasks window, click one of these toolbar buttons: Create software distribution task, Schedule custom script, Thin client, Custom data forms, Agent configuration, or Schedule inventory scan.
  2. Enter the information necessary for the task type you selected.
  3. Click the Schedule button. This displays the Scheduled tasks window and adds the script to it, where it becomes a task.
  4. In the network view, select the devices you want to be task targets and drag them onto the task in the Scheduled tasks window.
  5. In the Scheduled tasks window, click Properties from the task's shortcut menu.
  6. On the Schedule task page, set the task start time and click Save.

You can add more devices to the task by dragging them from the network view and dropping them on the task you want in the Scheduled tasks window.

Canceling a task

You can cancel waiting or active tasks. The way to cancel a task depends on the task type, as described below.

Assigning targets to a task

Once you've added a script to the Scheduled tasks window, you can assign targets to it. Drag targets from the network view onto the task that you want in the Scheduled tasks window. Targets can include individual devices, device groups, LDAP objects, LDAP queries, and inventory queries. Queries and groups are powerful options that let you have a dynamic list of devices that can change for recurring tasks. For example, as the device target list from a query changes, any tasks using that query will automatically target the new devices.

If a device is targeted more than once, such as when two target queries have overlapping results, the core server detects the duplication and won't run the task multiple times for the same device.

When using queries for task targets, the query won't run until the task is started. The Scheduled task properties dialog won't show the target devices until after the task is launched.

Applying scope to tasks

For scheduled tasks, multiple Management Suite users can add targets to a task. However, in the Scheduled tasks window, each Management Suite user will only see targets within their scope. If two Management Suite users with scopes that don't overlap each add 20 targets to a task, each Management Suite user will see only the 20 targets they added, but the task will run on all 40 targets.

Selecting targets for your task

Each task you create needs a set of targets that the task will run on. Tasks can have two types of targets, static and dynamic.

Dynamic policy targets are unique, in that Management Suite updates the results of these queries periodically. As new devices meet the query criteria, recurring tasks using those queries get applied to the new devices. 

You can specify static policy targets in these ways:

You can specify dynamic policy targets in these ways:

Targeting devices through a directory

In order for devices to receive policies that are targeted through Active Directory or NetWare Directory Services, they have to be configured to log in to the directory. This means that they need to have all the correct device software installed, and they need to actually log in to the correct directory so that their fully distinguished name will match the name that was targeted through Directory Manager.

Windows 95/98 devices need to be configured to log into the domain where the Active Directory resides. Windows NT and Windows 95/98 don't include Active Directory support. You must install Active Directory support on devices that log in to a directory and require policy-based management. As of this printing, more information on installing Active Directory device support was available here:

http://www.microsoft.com/technet/archive/ntwrkstn/downloads/utils/dsclient.mspx

For each Windows device, there must be a computer account on the Active Directory domain controller. This means that the computer being used as the device must be logged into the domain where the Active Directory exists. You can't simply map a network drive using the fully-qualified Windows domain name. The policy won't take effect this way.

To use Directory Manager to create a query
  1. Click Tools > Distribution > Directory manager.
  2. Click the Manage directory toolbar button.
  3. Enter the directory URL and authentication information and click OK.
  4. Click the New query toolbar button.
  5. Create your query. For more information, see LDAP queries.

What you see when tasks run

The Scheduled tasks window always shows job status. If you're scheduling device configurations or OS deployments, you'll also see the Client setup utility dialog. As the scheduler service proceeds through the target list, you'll see lists of devices to be configured, devices being configured, and devices completed. For more information, see About the Client Setup Utility dialog box.

If you're scheduling Targeted Multicast distributions, you'll see the Multicast software distribution status window. This window shows multicast status. For more information, see About the Multicast software distribution status window.

If you're scheduling custom scripts, you'll see the Custom job processing window showing scheduled, working, and completed targeted devices, in addition to a line-by-line script status as it executes.

Monitoring task status

When a task starts processing, targeted devices move through various task states. You can monitor the task state for targeted devices by clicking an active task in the Scheduled tasks window. Devices will be in one of these categories:

These are the states the device can be in, and the category they are visible in:

Viewing task logs

If a device fails to process a task, the Scheduled tasks window stores the task log. Available logs appear in the Log file column next to a device. In the log file you can see the task command that failed.

Using the default scripts

Management Suite ships with a default set of scripts that are listed below. You can use them to help you complete some Management Suite tasks. These scripts are available under the All scripts tree in the Manage scripts window (Tools > Distribution > Manage scripts):

Understanding bandwidth options

When configuring local scheduler commands, you can specify the minimum bandwidth criteria necessary for the task to execute. The bandwidth test consists of network traffic to the device you specify. When the time comes for the task to execute, each device running the local scheduler task will send a small amount of ICMP network traffic to the device you specify and evaluate the transfer performance. If the test target device isn't available, the task won't execute.

You can select these bandwidth options:

Using the rollup core to globally schedule tasks

If you have a rollup core in your LANDesk environment, tasks you create on it are globally scheduled and can have targets from multiple child cores. When you create a task on the rollup core and schedule it, the rollup core checks the target list to see which targets belong to which child core server. The rollup core then sends each child core server the task and its unique portion of the overall target list. Each child core server runs the task in the background and reports task status to the rollup core.

If a child core server has targets but doesn't have a rollup core certificate, which is necessary for a child core to process globally scheduled tasks, the rollup core runs the task on those targets instead.

Globally scheduled tasks and task status don't appear in the child core's Scheduled tasks window. The easiest way to view this information is from the task details on the rollup core. If you want to see delegated task status on a child core that is processing the task, you can use the Delegated Tasks report.

NOTE: Tasks scheduled from a 9.0 rollup core, including security-related tasks, won't work on version 8.7 and 8.8 cores.

To view delegated task status on a child core
  1. On the child core, click Tools > Reporting / Monitoring > Reports.
  2. In the reports window, click Reporting > Management Suite > Task status.
  3. Double-click the Delegated Tasks report, and enter the date range you want.
  4. Click OK to see the report.

To reduce network traffic, task status on delegated tasks isn't reported in real-time to the rollup core. Instead, task status is updated every two minutes by default. Do the following to change this interval.

To change the task status check interval
  1. On the rollup core, click Start > Programs > LANDesk > LANDesk Configure Services.
  2. On the Scheduler tab, click Advanced.
  3. Click Delegate task status check, and click Edit.
  4. Enter the number of seconds you want the scheduler to wait between task status checks, and click OK. The default is 120 seconds.
  5. From the Scheduler tab, Restart the scheduler service on the rollup core.